Use an AG2 agent

In addition to the general instructions for using an agent , this page describes features that are specific to AG2Agent .

Before you begin

This tutorial assumes that you have read and followed the instructions in:

Supported operations

The following operations are supported for AG2Agent :

  • query : for getting a response to a query synchronously.

The query method support the arguments:

  • input : the message to be sent to the agent.
  • max_turns : the maximum number of conversation turns allowed. When using tools, a minimum of max_turns=2 is required: one turn to generate tool arguments and a second to execute the tool.

Query the agent

The query() method provides a simplified way to interact with the agent. A typical call looks like this:

  response 
 = 
 agent 
 . 
 query 
 ( 
 input 
 = 
 "What is the exchange rate from US dollars to Swedish currency?" 
 , 
 max_turns 
 = 
 2 
 ) 
 

This method handles the underlying communication with the agent and returns the agent's final response as a dictionary. It is equivalent to the following (in full form):

  from 
  
 autogen 
  
 import 
 ConversableAgent 
 import 
  
 dataclasses 
 import 
  
 json 
 input_message 
 : 
 str 
 = 
 "What is the exchange rate from US dollars to Swedish currency?" 
 max_turns 
 : 
 int 
 = 
 2 
 with 
 agent 
 . 
 _runnable 
 . 
 _create_or_get_executor 
 ( 
 tools 
 = 
 agent 
 . 
 _ag2_tool_objects 
 , 
 # Use the agent's existing tools 
 agent_name 
 = 
 "user" 
 , 
 # Default 
 agent_human_input_mode 
 = 
 "NEVER" 
 , 
 # query() enforces this 
 ) 
 as 
 executor 
 : 
 chat_result 
 = 
 executor 
 . 
 initiate_chat 
 ( 
 agent 
 . 
 _runnable 
 , 
 message 
 = 
 input_message 
 , 
 max_turns 
 = 
 max_turns 
 , 
 clear_history 
 = 
 False 
 , 
 # Default 
 summary_method 
 = 
 "last_msg" 
 # Default 
 ) 
 response 
 = 
 json 
 . 
 loads 
 ( 
 json 
 . 
 dumps 
 ( 
 dataclasses 
 . 
 asdict 
 ( 
 chat_result 
 )) 
 # query() does this conversion 
 ) 
 

You can customize the agent's behavior beyond input and max_turns by passing additional keyword arguments to query() .

  response 
 = 
 agent 
 . 
 query 
 ( 
 input 
 = 
 "What is the exchange rate from US dollars to Swedish currency?" 
 , 
 max_turns 
 = 
 2 
 , 
 msg_to 
 = 
 "user" 
 # Start the conversation with the "user" agent 
 ) 
 print 
 ( 
 response 
 ) 
 

See the ConversableAgent.run documentation for a complete list of available parameters. However, keep in mind that user_input will always be overridden to False by the AG2Agent template.

What's next

Create a Mobile Website
View Site in Mobile | Classic
Share by: