Zusätzlich zu den allgemeinen Anleitungen zur Verwendung eines Agents werden auf dieser Seite Funktionen beschrieben, die speziell für AG2Agent
gelten.
Hinweise
In dieser Anleitung wird davon ausgegangen, dass Sie die Anleitung unter folgenden Links gelesen und befolgt haben:
- AG2-Agent entwickeln:
agent
als Instanz vonAG2Agent
entwickeln. - Nutzerauthentifizierung, um sich als Nutzer zu authentifizieren und den Agent abzufragen.
- Importieren und initialisieren Sie das SDK, um den Client zum Abrufen einer bereitgestellten Instanz zu initialisieren (falls erforderlich).
Unterstützte Vorgänge
Die folgenden Vorgänge werden für AG2Agent
unterstützt:
query
: um synchron eine Antwort auf eine Anfrage zu erhalten.
Die Methode query
unterstützt die folgenden Argumente:
input
: Die Nachricht, die an den Agent gesendet werden soll.max_turns
: Die maximal zulässige Anzahl von Gesprächsrunden. Bei der Verwendung von Tools sind mindestensmax_turns=2
erforderlich: eine Runde zum Generieren von Tool-Argumenten und eine zweite zum Ausführen des Tools.
Agent abfragen
Die query()
-Methode bietet eine vereinfachte Möglichkeit, mit dem Agent zu interagieren. Ein typischer Aufruf sieht so aus:
response = agent.query(input="What is the exchange rate from US dollars to Swedish currency?", max_turns=2)
Diese Methode verarbeitet die zugrunde liegende Kommunikation mit dem Agent und gibt die endgültige Antwort des Agents als Dictionary zurück. Das entspricht der folgenden (vollständigen) 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
)
Sie können das Verhalten des Agents über input
und max_turns
hinaus anpassen, indem Sie zusätzliche Schlüsselwortargumente an query()
übergeben.
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)
Eine vollständige Liste der verfügbaren Parameter finden Sie in der ConversableAgent.run
-Dokumentation. Beachten Sie jedoch, dass user_input
in der AG2Agent-Vorlage immer durch False
überschrieben wird.