En plus des instructions générales sur l'utilisation d'un agent, cette page décrit les fonctionnalités spécifiques à AG2Agent
.
Avant de commencer
Ce tutoriel suppose que vous avez lu et suivi les instructions des articles suivants:
- Développer un agent AG2: pour développer
agent
en tant qu'instance deAG2Agent
. - Authentification de l'utilisateur pour vous authentifier en tant qu'utilisateur afin d'interroger l'agent.
Opérations compatibles
Les opérations suivantes sont acceptées pour AG2Agent
:
query
: pour obtenir une réponse à une requête de manière synchrone.
La méthode query
accepte les arguments suivants:
input
: message à envoyer à l'agent.max_turns
: nombre maximal de tours de conversation autorisé. Lorsque vous utilisez des outils, un minimum demax_turns=2
est requis: un tour pour générer les arguments de l'outil et un second pour l'exécuter.
Interroger l'agent
La méthode query()
permet d'interagir de manière simplifiée avec l'agent. Un appel type se présente comme suit:
response = agent.query(input="What is the exchange rate from US dollars to Swedish currency?", max_turns=2)
Cette méthode gère la communication sous-jacente avec l'agent et renvoie sa réponse finale sous forme de dictionnaire. Il est équivalent à la formule suivante (sous forme complète):
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
)
Vous pouvez personnaliser le comportement de l'agent au-delà de input
et max_turns
en transmettant des arguments de mots clés supplémentaires à 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)
Pour obtenir la liste complète des paramètres disponibles, consultez la documentation ConversableAgent.run
. Toutefois, n'oubliez pas que user_input
sera toujours remplacé par False
par le modèle AG2Agent.