Usare l'orchestrazione del passaggio

Completato

L'orchestrazione del passaggio consente agli agenti di intelligenza artificiale di trasferirsi il controllo a vicenda in base al contesto dell'attività o alle richieste degli utenti. Ogni agente può "consegnare" la conversazione a un altro agente con la giusta esperienza, assicurandosi che l'agente più adatto gestisca ogni parte dell'attività. Questo modello è ideale per il supporto clienti, i sistemi esperti o qualsiasi situazione in cui è necessaria la delega dinamica.

Diagramma del flusso di orchestrazione del passaggio

Questo modello si adatta agli scenari in cui l'agente migliore non è noto in anticipo o in cui i requisiti dell'attività diventano più chiari durante l'elaborazione. A differenza dei modelli paralleli, gli agenti lavorano uno alla volta, passando completamente il controllo da uno a quello successivo.

Quando usare l'orchestrazione del passaggio

Potresti prendere in considerazione l'uso del modello di orchestrazione di trasferimento in questi scenari:

  • Le attività richiedono conoscenze o strumenti specializzati, ma il numero o l'ordine degli agenti non possono essere determinati in anticipo.
  • I requisiti di competenza emergono dinamicamente durante l'elaborazione, attivando il routing delle attività in base all'analisi del contenuto.
  • I problemi a più domini richiedono specialisti diversi che lavorano in sequenza.
  • È possibile definire segnali chiari o regole che indicano quando un agente deve trasferire il controllo e a chi.

Quando evitare l'orchestrazione del passaggio

È consigliabile evitare di usare il modello di orchestrazione del passaggio in questi scenari:

  • Gli agenti coinvolti e il loro ordine sono noti in anticipo e fissi.
  • Il routing delle attività è semplice e basato su regole, non richiede l'interpretazione dinamica.
  • Le decisioni di routing scarse potrebbero frustrare gli utenti.
  • Più operazioni devono essere eseguite contemporaneamente.
  • Evitare cicli di passaggio infiniti o un rimbalzo eccessivo tra gli agenti è difficile.

Implementazione dell'orchestrazione del passaggio

Il modello di orchestrazione handoff può essere implementato in Microsoft Agent Framework SDK usando flussi di lavoro di controllo. In un flusso di lavoro di controllo ogni agente elabora l'attività in sequenza e, in base all'output, il flusso di lavoro decide quale agente chiamare successivamente. Questo routing viene eseguito tramite una struttura switch-case che indirizza l'attività a diversi agenti in base ai risultati della classificazione.

  1. Configurare modelli di dati e client di chat

    • Creare il client di chat per la connessione ai servizi di intelligenza artificiale
    • Definire i modelli Pydantic per le risposte JSON strutturate degli agenti di intelligenza artificiale
    • Creare classi di dati semplici per il passaggio di informazioni tra i passaggi del flusso di lavoro
    • Configurare gli agenti con istruzioni e response_format parametri specifici per l'output JSON strutturato
  2. Creare funzioni executor specializzate

    • Esecutore di archiviazione di input - salva i dati in ingresso nello stato condiviso e li inoltra all'agente di classificazione.
    • Esecutore della trasformazione: converte la risposta JSON dell'agente in un oggetto di routing tipizzato
    • Esecutori del gestore - esecutori separati per ogni risultato di classificazione con condizioni di protezione per verificare l'elaborazione corretta dei messaggi
  3. Compilare la logica di routing

    • Creare funzioni factory che generano controlli delle condizioni per ogni valore di classificazione
    • Progettare condizioni per esaminare i messaggi in arrivo e restituire il valore "vero" per risultati di classificazione specifici
    • Usare le condizioni con gli oggetti Case nei gruppi di edge switch-case
    • Includere sempre un caso predefinito come soluzione alternativa per scenari imprevisti.
  4. Assemblare il flusso di lavoro

    • Usare WorkflowBuilder per connettere gli esecutori con edge regolari
    • Aggiungere un gruppo edge switch case per il routing in base ai risultati della classificazione
    • Configurare il flusso di lavoro per seguire il primo caso corrispondente o utilizzare l'impostazione predefinita.
    • Configurare l'executor del terminale per restituire l'output finale

L'orchestrazione del passaggio offre un modo flessibile per instradare dinamicamente le attività tra gli agenti di intelligenza artificiale specializzati, assicurando che ogni parte di un flusso di lavoro venga gestita dall'esperto più adatto. Funziona bene per attività complesse e in continua evoluzione, ad esempio il supporto clienti o la risoluzione dei problemi multidominio in cui le esigenze di competenza cambiano durante la conversazione. Quando si usa Microsoft Agent Framework SDK, è possibile creare sistemi adattabili che trasferiscono facilmente il controllo tra gli agenti e includono l'input umano quando necessario, per il completamento delle attività senza problemi ed efficienti.