AG2-Agent verwenden

Zusätzlich zu den allgemeinen Anleitungen zur Verwendung eines Kundenservicemitarbeiters werden auf dieser Seite Funktionen beschrieben, die speziell für AG2Agent gelten.

Hinweise

In dieser Anleitung wird davon ausgegangen, dass Sie die folgenden Anleitungen gelesen und befolgt haben:

Unterstützte Vorgänge

Die folgenden Vorgänge werden für AG2Agent unterstützt:

  • query: Damit wird eine Antwort auf eine Abfrage synchron abgerufen.

Die query-Methode unterstützt die folgenden Argumente:

  • input: Die Nachricht, die an den Kundenservicemitarbeiter gesendet werden soll.
  • max_turns: die maximale Anzahl der zulässigen Gesprächsrunden. Für die Verwendung von Tools ist mindestens max_turns=2 erforderlich: eine Umdrehung zum Generieren von Toolargumenten und eine zweite zum Ausführen des Tools.

Agenten abfragen

Die query()-Methode bietet eine vereinfachte Möglichkeit, mit dem Kundenservicemitarbeiter 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 Kundenservicemitarbeiter und gibt die endgültige Antwort des Kundenservicemitarbeiters als Dictionary zurück. Sie 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 Keyword-Argumente 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. Beachte jedoch, dass user_input in der AG2Agent-Vorlage immer durch False überschrieben wird.

Nächste Schritte