Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Durable Task Scheduler, combinato con il modello di programmazione Durable Task, fornisce l'infrastruttura sottostante per l'esecuzione durevole, la gestione dello stato, il checkpointing e il coordinamento distribuito in modo che il codice dell'agente non debba farlo.
Con il modello di programmazione Durable Task è possibile creare flussi di lavoro agentici resilienti e con stato usando costrutti di programmazione standard (ad esempio cicli, condizionali e gestione degli errori) in .NET, Python, Java e JavaScript/TypeScript, mentre il runtime mantiene lo stato e recupera automaticamente dagli errori.
Anche se il modello di programmazione Durable Task non è un framework agente stesso, funziona con qualsiasi framework agente di intelligenza artificiale, tra cui Microsoft Agent Framework, LangChain o chiamate API LLM dirette. Questa separazione dei problemi consente di concentrarsi sulla logica dell'agente, mentre Durable Task gestisce l'esecuzione affidabile su larga scala.
In questo articolo vengono fornite informazioni su:
- Problemi di produzione risolti dall'esecuzione durevole per gli agenti di intelligenza artificiale
- Modelli di flusso di lavoro agentic supportati dal modello di programmazione Durable Task
- Confronto tra lo stack tecnologico di Durable Task e altre opzioni del flusso di lavoro agentico in Azure
Le sfide di produzione che l'esecuzione durevole risolve
Gli agenti di intelligenza artificiale che eseguono operazioni reali nell'ambiente di produzione sono in genere a esecuzione prolungata, con stato e dipendono da strumenti e servizi esterni. Le interazioni umane nel ciclo, le catene di ragionamento in più passaggi e i flussi di lavoro con aumento degli strumenti possono mantenere attiva una sessione agente per ore, giorni o persino settimane. Durante tale periodo, l'agente accumula lo stato, tra cui la cronologia delle conversazioni, i risultati intermedi e le decisioni in sospeso, che devono essere mantenute in ogni passaggio.
L'elaborazione di grandi volumi di token LLM è costosa e richiede molto tempo. I provider di modelli possono imporre limiti di velocità che rallentano il tuo agente durante il flusso di lavoro. Se si verifica un errore dell'infrastruttura, come un riavvio della macchina virtuale o un'interruzione della rete, durante un'attività dell'agente suddivisa in più passaggi, i token già utilizzati e il tempo già impiegato verranno persi.
Le interruzioni ai flussi di lavoro dell'agente a esecuzione prolungata, sia dai riavvi di elaborazione, dalle distribuzioni, dagli eventi di riduzione della scala o dagli errori temporanei dell'infrastruttura, incidono su questi costi. Senza un meccanismo di ripristino, una sessione dell'agente che si arresta in modo anomalo deve essere riavviata dall'inizio, ri-consumando tutti i token spesi in precedenza e ripetendo tutte le operazioni già completate.
L'esecuzione durevole risolve queste sfide. Il runtime di Durable Task controlla automaticamente ogni transizione di stato in un flusso di lavoro dell'agente (risposte LLM, risultati delle chiamate degli strumenti e decisioni sul flusso di controllo) all'archiviazione durevole. Quando si verifica un errore, l'esecuzione riprende automaticamente in una macchina virtuale integra dall'ultimo checkpoint anziché riavviare da zero. Le chiamate LLM completate non vengono ripetute, preservando sia la spesa per i token che il tempo di calcolo. I criteri predefiniti di ripetizione dei tentativi con backoff configurabile gestiscono gli errori temporanei dalle API LLM, dagli strumenti esterni e dai servizi downstream senza codice aggiuntivo.
Modelli di flusso di lavoro agentico
Durable Task supporta una gamma di modelli di flusso di lavoro agenti che rientrano in due categorie generali:
- Flussi di lavoro deterministici: il codice definisce il flusso di controllo. Si scrive la sequenza di passaggi, tra cui la diramazione, il parallelismo e la gestione degli errori, usando costrutti di programmazione standard. LLM viene chiamato come passaggio all'interno del flusso di lavoro, ma non controlla il flusso complessivo.
- Flussi di lavoro diretti dall'agente (cicli agente): LLM gestisce il flusso di controllo. L'agente decide quali strumenti chiamare, in quale ordine e quando l'attività è stata completata. Sono disponibili strumenti e istruzioni, ma l'agente determina il percorso di esecuzione in fase di esecuzione.
Entrambe le categorie traggono vantaggio dall'esecuzione durevole e possono essere combinate nella stessa applicazione. Per un'analisi dettagliata dei modelli supportati con esempi di codice, vedere Modelli di applicazione agentic.
Confrontare le opzioni del flusso di lavoro agentico in Azure
Esistono diverse opzioni per la creazione di flussi di lavoro agenti in Azure oltre allo stack tecnico Durable Task. Ogni opzione presenta punti di forza e compromessi diversi a seconda dei requisiti per il flusso di controllo, il supporto del linguaggio di programmazione, l'integrazione del framework di intelligenza artificiale, l'hosting, la gestione dello stato e il pubblico di destinazione. La tabella seguente consente di decidere quale adatta alle proprie esigenze.
| Capability | Attività durevole | flussi di lavoro basati su grafo di Microsoft Agent Framework | Loop dell'agente di Azure Logic Apps |
|---|---|---|---|
| Flusso di controllo | Definito dal codice (imperativo) | Grafici definiti dal codice | Progettista/dichiarativo (JSON) |
| Linguaggi di programmazione | .NET, Python, Java, TypeScript/JavaScript | .NET, Python | Progettazione oggetti visivi/JSON |
| Supporto del framework di intelligenza artificiale | Qualsiasi framework (Kernel semantico, LangChain, AutoGen, ecc.) o chiamate dirette alle API del modello | Ottimizzato per Microsoft Agent Framework | Connettori di intelligenza artificiale integrati |
| Servizio di hosting | Funzioni di Azure (tramite Durable Functions) o qualsiasi host (tramite GLI SDK per attività durevoli) | Qualsiasi, con il supporto di prima classe di Foundry Hosted Agents | Servizio gestito di App per la logica di Azure (SKU di tipo Consumo o Standard) |
| Archiviazione dello stato | Schedulatore di Attività Durevoli (gestito) | Porta il tuo (estendibile tramite gestore di checkpoint) | Logic Apps runtime (gestito) |
| Flussi di lavoro diretti dall'agente | Crea le tue orchestrazioni ed entità personalizzate oppure utilizza l'estensione Durable Task per Microsoft Agent Framework | Predefinito | Sì, tramite l'azione Agent Loop |
| Destinatari | sviluppatori back-end | Sviluppatori di applicazioni | Sviluppatori di integrazione/utenti con poco codice |
| Attività a esecuzione prolungata | Prima classe (ore/giorni/settimane/eterna) | Supportato tramite checkpoint dello stato del flusso di lavoro controllato dallo sviluppatore | Supportato solo per i flussi di lavoro stateful (fino a 90 giorni) |
| Ripristino da un errore | Automatico | Manuale | Automatico |
| Osservabilità | Cronologia di esecuzione nel dashboard del pianificatore delle attività durevoli, OpenTelemetry | OpenTelemetry, visualizzazione personalizzata | Diagnostica di Monitoraggio di Azure / Logic Apps |