2020 FEEDBACK_AGENT_SYSTEM_MESSAGE ,
2121 generate_metaphor_search_agent_system_message ,
2222)
23+
2324# Import from utils.py
2425from utils import (
2526 select_model ,
3233
3334
3435class MetaphorSearchChatAgent (ChatAgent ):
35- def handle_message_fallback (
36- self , msg : str | ChatDocument
37- ) -> str | None :
36+ def handle_message_fallback (self , msg : str | ChatDocument ) -> str | None :
3837 """Handle scenario where LLM did not generate any Tool"""
3938 if isinstance (msg , ChatDocument ) and msg .metadata .sender == Entity .LLM :
4039 return f"""
@@ -82,20 +81,18 @@ def parse_and_format_message_history(message_history: List[Any]) -> str:
8281
8382
8483def create_chat_agent (
85- name : str ,
86- llm_config : OpenAIGPTConfig ,
87- system_message : str
84+ name : str , llm_config : OpenAIGPTConfig , system_message : str
8885) -> ChatAgent :
8986 """creates a ChatAgent with the given parameters.
9087
91- Args:
92- name (str): The name of the agent.
93- llm_config (OpenAIGPTConfig): The LLM configuration for the agent.
94- system_message (str): The system message to guide the agent's LLM.
88+ Args:
89+ name (str): The name of the agent.
90+ llm_config (OpenAIGPTConfig): The LLM configuration for the agent.
91+ system_message (str): The system message to guide the agent's LLM.
9592
96- Returns:
97- ChatAgent: A configured ChatAgent instance.
98- """
93+ Returns:
94+ ChatAgent: A configured ChatAgent instance.
95+ """
9996 return ChatAgent (
10097 ChatAgentConfig (
10198 llm = llm_config ,
@@ -131,9 +128,9 @@ def run_debate() -> None:
131128
132129 # Get base LLM configuration
133130 if same_llm :
134-
135131 shared_agent_config : OpenAIGPTConfig = get_base_llm_config (
136- select_model ("main LLM" ))
132+ select_model ("main LLM" )
133+ )
137134 pro_agent_config = con_agent_config = shared_agent_config
138135
139136 # Create feedback_agent_config by modifying shared_agent_config
@@ -146,29 +143,40 @@ def run_debate() -> None:
146143 )
147144 metaphor_search_agent_config = feedback_agent_config
148145 else :
149- pro_agent_config : OpenAIGPTConfig = get_base_llm_config (select_model ("for Pro Agent" ))
150- con_agent_config : OpenAIGPTConfig = get_base_llm_config (select_model ("for Con Agent" ))
151- feedback_agent_config : OpenAIGPTConfig = get_base_llm_config (select_model ("feedback" ),temperature = 0.2 )
146+ pro_agent_config : OpenAIGPTConfig = get_base_llm_config (
147+ select_model ("for Pro Agent" )
148+ )
149+ con_agent_config : OpenAIGPTConfig = get_base_llm_config (
150+ select_model ("for Con Agent" )
151+ )
152+ feedback_agent_config : OpenAIGPTConfig = get_base_llm_config (
153+ select_model ("feedback" ), temperature = 0.2
154+ )
152155 metaphor_search_agent_config = feedback_agent_config
153156
154- system_messages : SystemMessages = load_system_messages ("examples/multi-agent-debate/system_messages.json" )
157+ system_messages : SystemMessages = load_system_messages (
158+ "examples/multi-agent-debate/system_messages.json"
159+ )
155160 topic_name , pro_key , con_key , side = select_topic_and_setup_side (system_messages )
156161
157162 # Generate the system message
158- metaphor_search_agent_system_message = (generate_metaphor_search_agent_system_message (
159- system_messages , pro_key , con_key ))
160-
161- pro_agent = create_chat_agent ("Pro" ,
162- pro_agent_config ,
163- system_messages .messages [pro_key ].message +
164- DEFAULT_SYSTEM_MESSAGE_ADDITION )
165- con_agent = create_chat_agent ("Con" ,
166- con_agent_config ,
167- system_messages .messages [con_key ].message +
168- DEFAULT_SYSTEM_MESSAGE_ADDITION )
169- feedback_agent = create_chat_agent ("Feedback" ,
170- feedback_agent_config ,
171- FEEDBACK_AGENT_SYSTEM_MESSAGE )
163+ metaphor_search_agent_system_message = (
164+ generate_metaphor_search_agent_system_message (system_messages , pro_key , con_key )
165+ )
166+
167+ pro_agent = create_chat_agent (
168+ "Pro" ,
169+ pro_agent_config ,
170+ system_messages .messages [pro_key ].message + DEFAULT_SYSTEM_MESSAGE_ADDITION ,
171+ )
172+ con_agent = create_chat_agent (
173+ "Con" ,
174+ con_agent_config ,
175+ system_messages .messages [con_key ].message + DEFAULT_SYSTEM_MESSAGE_ADDITION ,
176+ )
177+ feedback_agent = create_chat_agent (
178+ "Feedback" , feedback_agent_config , FEEDBACK_AGENT_SYSTEM_MESSAGE
179+ )
172180 metaphor_search_agent = MetaphorSearchChatAgent ( # Use the subclass here
173181 ChatAgentConfig (
174182 llm = metaphor_search_agent_config ,
@@ -180,7 +188,10 @@ def run_debate() -> None:
180188 logger .info ("Pro, Con, feedback, and metaphor_search agents created." )
181189
182190 # Determine user's side and assign user_agent and ai_agent based on user selection
183- agents = {"pro" : (pro_agent , con_agent , "Pro" , "Con" ), "con" : (con_agent , pro_agent , "Con" , "Pro" )}
191+ agents = {
192+ "pro" : (pro_agent , con_agent , "Pro" , "Con" ),
193+ "con" : (con_agent , pro_agent , "Con" , "Pro" ),
194+ }
184195 user_agent , ai_agent , user_side , ai_side = agents [side ]
185196 logger .info (
186197 f"Starting debate on topic: { topic_name } , taking the { user_side } side. "
0 commit comments