Handoff-Orchestrierung verwenden
Mit der Handoff-Orchestrierung können KI-Agents die Steuerung basierend auf dem Aufgabenkontext oder Benutzeranforderungen aneinander übertragen. Jeder Agent kann die Unterhaltung mit der richtigen Expertise an einen anderen Agenten übergeben, um sicherzustellen, dass der am besten geeignete Agent jeden Teil der Aufgabe verarbeitet. Dieses Muster eignet sich ideal für Kundensupport, Expertensysteme oder Situationen, in denen dynamische Delegierung erforderlich ist.
Dieses Muster passt zu Szenarien, in denen der beste Agent vorab nicht bekannt ist oder die Aufgabenanforderungen während der Verarbeitung klarer werden. Im Gegensatz zu parallelen Mustern arbeiten Agents jeweils einzeln und übergeben die Steuerung vollständig von einer an die nächste.
Gründe für die Verwendung der Handoff-Orchestrierung
Sie können die Verwendung des Handoff-Orchestrierungsmusters in diesen Szenarien in Betracht ziehen:
- Aufgaben benötigen spezielle Kenntnisse oder Tools, aber die Anzahl oder Reihenfolge der Agenten kann nicht im Voraus bestimmt werden.
- Kompetenzanforderungen entstehen während der Verarbeitung dynamisch, wodurch das Aufgabenrouting basierend auf der Inhaltsanalyse ausgelöst wird.
- Probleme mit mehreren Domänen erfordern unterschiedliche Spezialisten, die sequenziell arbeiten.
- Sie können klare Signale oder Regeln definieren, die angeben, wann ein Agent die Kontrolle übertragen soll und an wen.
Gründe für die Vermeidung von Handoff-Orchestrierung
In diesen Szenarien sollten Sie die Verwendung des Handoff-Orchestrierungsmusters vermeiden:
- Die beteiligten Agenten und ihre Bestellung sind vorab bekannt und behoben.
- Das Aufgabenrouting ist einfach und regelbasiert und benötigt keine dynamische Interpretation.
- Schlechte Routingentscheidungen können Benutzer frustrieren.
- Mehrere Vorgänge müssen gleichzeitig ausgeführt werden.
- Das Vermeiden unendlicher Handoff-Schleifen oder übermäßiges Springen zwischen Agenten ist schwierig.
Implementieren der Handoff-Orchestrierung
Das Handoff-Orchestrierungsmuster kann im Microsoft Agent Framework SDK mithilfe von Kontrollworkflows implementiert werden. In einem Kontrollworkflow verarbeitet jeder Agent die Aufgabe der Reihe nach, und anhand seiner Ergebnisse wird entschieden, welcher Agent als Nächstes aufgerufen werden soll. Dieses Routing erfolgt mithilfe einer Switch-Case-Struktur, die die Aufgabe basierend auf den Klassifizierungsergebnissen an verschiedene Agents weiterleitet.
Einrichten von Datenmodellen und Chatclients
- Erstellen Ihres Chatclients zum Herstellen einer Verbindung mit KI-Diensten
- Definieren von pydantischen Modellen für die strukturierten JSON-Antworten von KI-Agents
- Erstellen einfacher Datenklassen zum Übergeben von Informationen zwischen Workflowschritten
- Konfigurieren von Agents mit spezifischen Anweisungen und
response_formatParametern für die strukturierte JSON-Ausgabe
Erstellen spezieller Executorfunktionen
- Eingabespeicherausführer – speichert eingehende Daten im freigegebenem Zustand und leitet sie weiter an den Klassifizierungsagent.
- Transformationsausführer – wandelt die JSON-Antwort des Agents in ein typiertes Routingobjekt um.
- Handlerausführer – separate Executoren für jedes Klassifizierungsergebnis mit Schutzbedingungen, um die korrekte Nachrichtenverarbeitung zu überprüfen
Erstellen der Routinglogik
- Erstellen Sie Factory-Funktionen, die Bedingungsprüfer für jeden Klassifizierungswert generieren
- Entwurfsbedingungen zum Untersuchen eingehender Nachrichten und Zurückgeben von "true" für bestimmte Klassifizierungsergebnisse
- Verwenden von Bedingungen für Case-Objekte in Switch-Case-Edgegruppen
- Immer einen Standardfall als Fallback für unerwartete Szenarien einschließen
Zusammenstellen des Workflows
- Verwenden Sie WorkflowBuilder, um Ausführende mit regulären Kanten zu verbinden.
- Hinzufügen einer Switch-Case-Kantengruppe für Routing basierend auf Klassifizierungsergebnissen
- Konfigurieren des Workflows, um dem ersten übereinstimmenden Fall zu folgen oder auf die Standardeinstellung zurückzugreifen
- Einrichten des Terminalausführers zum Erzielen der endgültigen Ausgabe
Handoff-Orchestrierung bietet eine flexible Möglichkeit, Aufgaben dynamisch an spezialisierte KI-Agents weiterzuleiten, um sicherzustellen, dass jeder Teil eines Workflows vom besten Experten verarbeitet wird. Es eignet sich gut für komplexe, sich entwickelnde Aufgaben wie Kundensupport oder Lösung von Problemen mit mehreren Domänen, bei denen sich die Kompetenz während der Unterhaltung ändern muss. Wenn Sie das Microsoft Agent Framework SDK verwenden, können Sie anpassbare Systeme erstellen, die die Kontrolle zwischen Agents nahtlos übertragen und bei Bedarf menschliche Eingaben einbeziehen, um einen reibungslosen und effizienten Aufgabenabschluss zu ermöglichen.