Informazioni sull'orchestrazione degli agenti

Completato

Il framework di orchestrazione agente di Microsoft Agent Framework SDK consente di progettare, gestire e ridimensionare flussi di lavoro multi-agente complessi senza dover gestire manualmente i dettagli del coordinamento dell'agente. Anziché basarsi su un singolo agente per gestire ogni aspetto di un'attività, è possibile combinare più agenti specializzati. Ogni agente con un ruolo o un'area di competenza univoca può collaborare per creare sistemi più affidabili, adattivi e in grado di risolvere in modo collaborativo problemi reali.

Orchestrando gli agenti insieme, è possibile eseguire attività che sarebbero troppo complesse per un singolo agente, dall'esecuzione di analisi parallele alla creazione di pipeline di elaborazione a più fasi, alla gestione di passaggi di consegne basati sul contesto tra esperti.

Perché l'orchestrazione multi-agente è importante

I sistemi ad agente singolo sono spesso limitati nell'ambito, vincolati da un insieme di istruzioni o da un singolo prompt del modello. L'orchestrazione multi-agente risolve questa limitazione consentendo di:

  • Assegnare capacità, responsabilità o prospettive distinte a ogni agente.
  • Combinare gli output di più agenti per migliorare il processo decisionale e l'accuratezza.
  • Coordinare i passaggi in un flusso di lavoro in modo che il lavoro di ogni agente si basi sull'ultimo.
  • Instradare dinamicamente il controllo tra agenti in base al contesto o alle regole.

Questo approccio spiana la via per soluzioni più flessibili, efficienti e scalabili, soprattutto per applicazioni reali che richiedono collaborazione, specializzazione o ridondanza.

Informazioni sui flussi di lavoro in Microsoft Agent Framework

Microsoft Agent Framework fornisce flussi di lavoro , sequenze strutturate di passaggi usati per completare un'attività. Questi flussi di lavoro possono includere uno o più agenti di intelligenza artificiale insieme ad altri componenti per automatizzare operazioni complesse.

I flussi di lavoro consentono agli sviluppatori di controllare il modo in cui vengono eseguite le attività, abilitare l'orchestrazione multi-agente e supportare il checkpoint per salvare e riprendere gli stati del flusso di lavoro.

Componenti principali di un flusso di lavoro

Esecutori

Gli executor sono gli operatori principali in un flusso di lavoro. Ricevono messaggi di input, eseguono azioni specifiche e producono output che spostano il flusso di lavoro verso il completamento dell'obiettivo.
Gli executor possono rappresentare agenti di intelligenza artificiale o componenti logici personalizzati .

Esempio: Un executor può analizzare una richiesta di viaggio, mentre un altro prenota il volo o l'hotel a seguito dei risultati.

Limiti

I limiti definiscono come i messaggi fluiscono tra gli executor, determinando la logica e l'ordine di esecuzione. Microsoft Agent Framework supporta diversi tipi di archi:

  • Limiti diretti: connettere un executor direttamente a un altro in sequenza.
    Esempio: Dopo che un agente di intelligenza artificiale raccoglie l'input dell'utente, l'executor successivo elabora la prenotazione.*

  • Limiti condizionali: si attivano solo quando vengono soddisfatte determinate condizioni.
    Esempio: Se le camere dell'hotel non sono disponibili, il flusso di lavoro si dirama a un executor che suggerisce date o posizioni alternative.*

  • Limiti switch-case: instradano i messaggi a diversi executor in base a condizioni predefinite.
    Esempio: I clienti VIP potrebbero essere indirizzati a un executor del servizio Premium, mentre altri seguono il processo standard.*

  • Fan-Out Edges: Invia un singolo messaggio a più esecutori simultaneamente.
    Esempio: Una richiesta potrebbe essere inviata a diversi agenti — uno che controlla i voli, un altro che controlla gli hotel.*

  • Limiti fan-in: combinare più messaggi da executor diversi in un singolo messaggio per un passaggio finale.
    Esempio: Dopo aver raccolto i risultati dell'hotel e dei voli, un esecutore del sommario li compila in un unico itinerario di viaggio.*

Events

Microsoft Agent Framework include eventi predefiniti per migliorare l'osservabilità e il debug durante l'esecuzione del flusso di lavoro. Questi eventi consentono agli sviluppatori di monitorare lo stato di avanzamento, tenere traccia degli errori e analizzare le prestazioni del sistema.

Nome dell’evento Descrizione
WorkflowStartedEvent Attivato all'avvio dell'esecuzione del flusso di lavoro.
WorkflowOutputEvent Generato quando il flusso di lavoro produce un output.
WorkflowErrorEvent Si verifica quando viene rilevato un errore.
ExecutorInvokeEvent Attivato quando un executor inizia l'elaborazione di un'attività.
ExecutorCompleteEvent Attivato quando un executor termina il suo lavoro.
RequestInfoEvent Registrato quando è emessa una richiesta esterna.

I flussi di lavoro in Microsoft Agent Framework consentono agli sviluppatori di progettare, monitorare e controllare l'interazione tra più agenti di intelligenza artificiale e componenti logici per completare attività complesse. Apportano struttura, flessibilità e trasparenza alle applicazioni guidate dall'agente.

Modelli di orchestrazione supportati

Microsoft Agent Framework offre diversi modelli di orchestrazione direttamente nell'SDK, ognuno dei quali offre un approccio diverso al coordinamento degli agenti. Questi modelli sono progettati per essere indipendenti dalla tecnologia, in modo da poterli adattare al proprio dominio e integrarli nei sistemi esistenti.

  • Orchestrazione concorrente: trasmettere la stessa attività a più agenti contemporaneamente e raccogliere i risultati in modo indipendente. Utile per l'analisi parallela, attività secondarie indipendenti o il processo decisionale dell'insieme.
  • Orchestrazione sequenziale: passare l'output da un singolo agente al successivo in un ordine fisso. Ideale per flussi di lavoro step-by-step, pipeline e perfezionamento progressivo.
  • Orchestrazione passaggi di consegne: trasferire dinamicamente il controllo tra gli agenti in base al contesto o alle regole. Ideale per l'escalation, il fallback e il routing esperto in cui lavora un unico agente alla volta.
  • Orchestrazione chat di gruppo: coordinare una conversazione condivisa tra più agenti (e facoltativamente un essere umano), gestito da un manager di chat che sceglie chi parla successivamente. Ideale per il brainstorming, il problem solving collaborativo e la creazione del consenso.
  • Orchestrazione magentic: approccio basato sui manager che pianifica, delega e si adatta tra agenti specializzati. Adatto a problemi complessi e aperti in cui il percorso della soluzione si evolve.

Un flusso di lavoro di orchestrazione unificato

Indipendentemente dal modello di orchestrazione scelto, Microsoft Agent Framework SDK offre un'interfaccia coerente e intuitiva per gli sviluppatori per la compilazione e l'esecuzione. Il flusso tipico è simile al seguente:

  1. Definire gli agenti e descriverne le funzionalità.
  2. Selezionare e creare un modello di orchestrazione, aggiungendo facoltativamente un agente di gestione, se necessario.
  3. Configurare facoltativamente callback o trasformazioni per la gestione personalizzata di input e output.
  4. Avviare un runtime per gestire l'esecuzione.
  5. Richiamare l'orchestrazione con la propria attività.
  6. Recuperare i risultati in modo asincrono e non bloccante.

Siccome tutti i modelli condividono la stessa interfaccia principale, è possibile sperimentare facilmente strategie di orchestrazione diverse senza riscrivere la logica dell'agente o apprendere nuove API. L'SDK astrae la complessità della comunicazione, del coordinamento e dell'aggregazione dei risultati degli agenti, in modo da potersi concentrare sulla progettazione di flussi di lavoro che offrono risultati.

L'orchestrazione multi-agente in Microsoft Agent Framework SDK offre un modo flessibile e scalabile per creare sistemi intelligenti che combinano i punti di forza di più agenti specializzati. Con i modelli di orchestrazione predefiniti, un modello di sviluppo unificato e funzionalità di runtime per la gestione dell'esecuzione, è possibile creare rapidamente prototipi, perfezionare e distribuire flussi di lavoro di intelligenza artificiale collaborativi. Il framework fornisce gli strumenti per trasformare più agenti in un team coeso di risoluzione dei problemi, sia che si eseguano processi paralleli, flussi di lavoro sequenziali o conversazioni dinamiche.