Starting April 29, 2025, Gemini 1.5 Pro and Gemini 1.5 Flash models are not available in projects that have no prior usage of these models, including new projects. For details, seeModel versions and lifecycle.
The following operations are supported forAG2Agent:
query: for getting a response to a query synchronously.
Thequerymethod 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 ofmax_turns=2is required: one turn to generate tool arguments and a second to execute the tool.
Query the agent
Thequery()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):
fromautogenimportConversableAgentimportdataclassesimportjsoninput_message:str="What is the exchange rate from US dollars to Swedish currency?"max_turns:int=2withagent._runnable._create_or_get_executor(tools=agent._ag2_tool_objects,# Use the agent's existing toolsagent_name="user",# Defaultagent_human_input_mode="NEVER",# query() enforces this)asexecutor:chat_result=executor.initiate_chat(agent._runnable,message=input_message,max_turns=max_turns,clear_history=False,# Defaultsummary_method="last_msg"# Default)response=json.loads(json.dumps(dataclasses.asdict(chat_result))# query() does this conversion)
You can customize the agent's behavior beyondinputandmax_turnsby passing additional keyword arguments toquery().
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 theConversableAgent.rundocumentationfor a complete list of available parameters. However, keep in mind thatuser_inputwill always be overridden toFalseby the AG2Agent template.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Use an AG2 agent\n\nIn addition to the general instructions for [using an agent](/vertex-ai/generative-ai/docs/agent-engine/use),\nthis page describes features that are specific to `AG2Agent`.\n\nBefore you begin\n----------------\n\nThis tutorial assumes that you have read and followed the instructions in:\n\n- [Develop an AG2 agent](/vertex-ai/generative-ai/docs/agent-engine/develop/ag2): to develop `agent` as an instance of `AG2Agent`.\n- [User authentication](/vertex-ai/generative-ai/docs/agent-engine/set-up#authentication) to authenticate as a user for querying the agent.\n\nSupported operations\n--------------------\n\nThe following operations are supported for `AG2Agent`:\n\n- [`query`](/vertex-ai/generative-ai/docs/agent-engine/use#query-agent): for getting a response to a query synchronously.\n\nThe `query` method support the arguments:\n\n- `input`: the message to be sent to the agent.\n- `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.\n\nQuery the agent\n---------------\n\nThe `query()` method provides a simplified way to interact with the agent. A typical call looks like this: \n\n response = agent.query(input=\"What is the exchange rate from US dollars to Swedish currency?\", max_turns=2)\n\nThis 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): \n\n from autogen import ConversableAgent\n import dataclasses\n import json\n\n input_message: str = \"What is the exchange rate from US dollars to Swedish currency?\"\n max_turns: int = 2\n\n with agent._runnable._create_or_get_executor(\n tools=agent._ag2_tool_objects, # Use the agent's existing tools\n agent_name=\"user\", # Default\n agent_human_input_mode=\"NEVER\", # query() enforces this\n ) as executor:\n chat_result = executor.initiate_chat(\n agent._runnable,\n message=input_message,\n max_turns=max_turns,\n clear_history=False, # Default\n summary_method=\"last_msg\" # Default\n )\n\n response = json.loads(\n json.dumps(dataclasses.asdict(chat_result)) # query() does this conversion\n )\n\nYou can customize the agent's behavior beyond `input` and `max_turns` by passing additional keyword arguments to `query()`. \n\n response = agent.query(\n input=\"What is the exchange rate from US dollars to Swedish currency?\",\n max_turns=2,\n msg_to=\"user\" # Start the conversation with the \"user\" agent\n )\n print(response)\n\nSee the\n[`ConversableAgent.run` documentation](https://docs.ag2.ai/latest/docs/api-reference/autogen/ConversableAgent/)\nfor a complete list of available parameters. However, keep in mind that\n`user_input` will always be overridden to `False` by the AG2Agent template.\n\nWhat's next\n-----------\n\n- [Use an agent](/vertex-ai/generative-ai/docs/agent-engine/use).\n- [Evaluate an agent](/vertex-ai/generative-ai/docs/agent-engine/evaluate).\n- [Manage deployed agents](/vertex-ai/generative-ai/docs/agent-engine/manage).\n- [Get support](/vertex-ai/generative-ai/docs/agent-engine/support)."]]