AutogenMultiAgent / src /usecases /multiagentschat.py
genaitiwari's picture
refinements of usecases amd readme file updated
3328745
import asyncio
from src.agents.assistantagent import TrackableAssistantAgent
from src.agents.userproxyagent import TrackableUserProxyAgent
import streamlit as st
class MultiAgentChat:
def __init__(self, assistant_name, user_proxy_name, llm_config, problem):
self.assistant = TrackableAssistantAgent(name=assistant_name,
system_message="""you are helpful assistant. Reply "TERMINATE" in
the end when everything is done """,
human_input_mode="NEVER",
llm_config=llm_config,
)
self.user_proxy = TrackableUserProxyAgent(name=user_proxy_name,
system_message="You are Admin",
human_input_mode="NEVER",
llm_config=llm_config,
code_execution_config=False,
is_termination_msg=lambda x: x.get("content", "").strip().endswith(
"TERMINATE"))
self.problem = problem
self.loop = asyncio.new_event_loop()
asyncio.set_event_loop(self.loop)
async def initiate_chat(self):
await self.user_proxy.a_initiate_chat(self.assistant, max_turns=2, message=self.problem, clear_history=st.session_state["chat_with_history"])
def run(self):
self.loop.run_until_complete(self.initiate_chat())