

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Flussi di lavoro LLM
<a name="llm-workflows"></a>

Nei modelli degli agenti, abbiamo esplorato i modelli comuni degli agenti di intelligenza artificiale, ciascuno basato su una serie di funzionalità modulari: percezione, azione, apprendimento e cognizione. Alla base del modulo cognitivo di molti modelli di agenti c'è un modello linguistico di grandi dimensioni (LLM) in grado di ragionare, pianificare e prendere decisioni. Tuttavia, invocare un LLM da solo non è sufficiente per produrre un comportamento intelligente e mirato.

Per eseguire attività complesse in modo affidabile, gli agenti devono incorporare il LLM in un flusso di lavoro strutturato, in cui le funzionalità del modello sono potenziate da strumenti, memoria, cicli di pianificazione e logica di coordinamento. Questi flussi di lavoro LLM consentono a un agente di suddividere gli obiettivi, indirizzare le sottoattività, chiamare servizi esterni, riflettere sui risultati e coordinarsi con altri agenti.

Questo capitolo introduce i modelli di progettazione di base per la creazione di moduli cognitivi basati su LLM robusti, estensibili e intelligenti, organizzati attorno a flussi di lavoro riutilizzabili.

**Topics**
+ [Panoramica della cognizione aumentata con LLM](overview-of-llm-augmented-cognition.md)
+ [Flusso di lavoro per il concatenamento rapido](workflow-for-prompt-chaining.md)
+ [Flusso di lavoro per il routing](workflow-for-routing.md)
+ [Flusso di lavoro per la parallelizzazione](workflow-for-parallelization.md)
+ [Flusso di lavoro per l'orchestrazione](workflow-for-orchestration.md)
+ [Flusso di lavoro per valutatori e cicli Reflect-Refine](workflow-for-evaluators-and-reflect-refine-loops.md)
+ [Conclusioni](conclusion-llm-workflows.md)

# Panoramica della cognizione aumentata con LLM
<a name="overview-of-llm-augmented-cognition"></a>

Fondamentalmente, il modulo cognitivo di un agente software può essere visto come un LLM avvolto da potenziamenti. L'agente può utilizzare i seguenti elementi costitutivi per ragionare in modo efficace all'interno del suo ambiente:
+ **Richiesta**: inquadra l'input utilizzando contesto, istruzioni, esempi e memoria
+ **Recupero: fornitura di conoscenze specifiche del dominio al** prompt LLM tramite la ricerca vettoriale up-to-date o la memoria semantica, ad esempio tramite la generazione aumentata di recupero (RAG)
+ **Utilizzo dello strumento**: consentire all'LLM di richiamare o richiamare funzioni per recuperare o agire in base alle informazioni APIs 
+ **Memoria**: incorporazione di uno stato persistente o basato sulla sessione nel ciclo di ragionamento, utilizzando database strutturati o riepiloghi contestuali

Questi miglioramenti sono composti da flussi di lavoro che definiscono il modo in cui l'LLM viene utilizzato nel tempo e tra le attività, trasformandolo da un motore stateless a un agente di ragionamento dinamico.

![\[Aumento del LLM.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/llm-augmentation.png)


# Flusso di lavoro per il concatenamento rapido
<a name="workflow-for-prompt-chaining"></a>

Il prompt chaining scompone le attività complesse in una sequenza di passaggi, in cui ogni passaggio è una chiamata LLM discreta che elabora o si basa sull'output di quella precedente.

![\[Flusso di lavoro per il concatenamento dei prompt.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/workflow-for-prompt-chaining.png)


Il flusso di lavoro di concatenamento dei prompt è adatto per scenari in cui le attività possono essere suddivise logicamente in fasi di ragionamento sequenziali e in cui gli output intermedi determinano la fase successiva. Eccelle nei flussi di lavoro che richiedono un pensiero strutturato, una trasformazione progressiva o un'analisi su più livelli, come la revisione dei documenti, la generazione di codice, l'estrazione della conoscenza e il perfezionamento dei contenuti.

## Description
<a name="description-prompt-chaining"></a>
+ La complessità dell'attività supera la finestra contestuale o la profondità di ragionamento di una singola chiamata LLM.
+ I risultati di una fase (ad esempio, analisi, riepilogo o pianificazione) diventano input per una successiva fase decisionale o di generazione.
+ Sono necessari trasparenza e controllo in tutte le fasi di ragionamento (ad esempio, risultati intermedi verificabili).
+ Vuoi inserire una logica di convalida, filtraggio o arricchimento esterna tra i passaggi.
+ È ideale per gli agenti che operano in cicli di ragionamento in stile pipeline, come agenti di ricerca, assistenti editoriali, sistemi di pianificazione e copiloti multistadio.

## Funzionalità
<a name="capabilities-prompt-chaining"></a>
+ Catene lineari o ramificate di chiamate LLM
+ Risultati intermedi passati come input strutturato o incorporati nei prompt di follow-up
+ Può essere orchestrato con o con corridori specifici per un agente AWS Step Functions AWS Lambda

## Casi di utilizzo comune
<a name="common-use-cases-prompt-chaining"></a>
+ Attività di ragionamento in più fasi (ad esempio, «riepilogo, riscrittura critica»)
+ Assistenti di ricerca che sintetizzano risultati stratificati (ad esempio, «cerca, estrai fatti, rispondi a una domanda»)
+ Pipeline di generazione del codice («generate plan write code test code explain output»)

# Flusso di lavoro per il routing
<a name="workflow-for-routing"></a>

Nel modello di routing, un classificatore o un agente router utilizza un LLM per interpretare l'intento o la categoria di una query, quindi indirizza l'input a un'attività o un agente downstream specializzato.

![\[Flusso di lavoro per il routing.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/workflow-for-routing.png)


Il flusso di lavoro di routing viene utilizzato in scenari in cui un agente deve classificare rapidamente l'intento di input, il tipo di attività o il dominio e quindi delegare la richiesta a un subagente, uno strumento o un flusso di lavoro specializzato. È particolarmente utile negli agenti di funzionalità, come quelli che fungono da assistenti generali, nelle porte di accesso alle funzioni aziendali o nelle interfacce AI rivolte agli utenti che si estendono su più domini.

Il routing è particolarmente efficace quando:
+ Classificazione delle richieste per una serie di attività (ad esempio ricerca, riepilogo, prenotazione, calcoli).
+ Gli input devono essere preelaborati o normalizzati prima di accedere a flussi di lavoro più specializzati.
+ Tipi di input diversi (ad esempio, immagini anziché testo, query strutturate e non strutturate) richiedono una gestione personalizzata.
+ Un agente funge da centralino conversazionale, delegando attività ad agenti specializzati o microservizi.
+ Questo flusso di lavoro è comune nei copiloti specifici del dominio, nei bot di assistenza clienti, nei router di servizi aziendali e negli agenti multimodali, dove il dispacciamento intelligente determina sia la qualità che l'efficienza del comportamento degli agenti.

## Funzionalità
<a name="capabilities-routing"></a>
+ Un LLM di primo passaggio funge da dispatcher
+ I percorsi possono richiamare flussi di lavoro distinti o persino altri modelli di agenti
+ Supporta l'espansione modulare delle funzionalità

## Casi di utilizzo comune
<a name="common-use-cases-routing"></a>
+ Assistenti multidominio («è una questione legale, medica o finanziaria?»)
+ Alberi decisionali migliorati con il ragionamento LLM
+ Selezione dinamica degli strumenti (ad esempio, ricerca e generazione di codice)

# Flusso di lavoro per la parallelizzazione
<a name="workflow-for-parallelization"></a>

Questo flusso di lavoro prevede la suddivisione di un'attività in sottoattività indipendenti che possono essere gestite contemporaneamente da più chiamate o agenti LLM. Gli output vengono quindi aggregati a livello di codice e sintetizzati in un risultato.

![\[Flusso di lavoro per la parallelizzazione.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/workflow-patterns-llm-parallelization.png)


Il flusso di lavoro di parallelizzazione viene utilizzato quando un'attività può essere suddivisa in sottoattività indipendenti e non sequenziali che possono essere elaborate contemporaneamente, migliorando significativamente l'efficienza, la produttività e la scalabilità. È particolarmente efficace negli spazi problematici ad alto contenuto di dati, orientati ai batch o multiprospettici in cui l'agente deve analizzare o generare contenuti su più input.

La parallelizzazione è particolarmente efficace quando:
+ Le sottoattività non dipendono dai reciproci risultati intermedi, pertanto possono essere eseguite in parallelo senza coordinamento.
+ Un'attività prevede la ripetizione dello stesso processo di ragionamento su più elementi (ad esempio, riepilogando più documenti o valutando un elenco di opzioni).
+ Molteplici ipotesi o prospettive vengono esplorate in parallelo per promuovere la diversità, la creatività o la solidità.
+ È necessario ridurre la latenza per le richieste ad alto volume o ad alta frequenza tramite l'esecuzione simultanea di LLM.
+ Questo flusso di lavoro viene comunemente utilizzato negli agenti di elaborazione di documenti, nei motori di sondaggi o di confronto, nei riepiloghi di batch, nei brainstorming multiagente e nelle attività di classificazione o etichettatura scalabili, specialmente laddove il ragionamento rapido e parallelo rappresenta un vantaggio in termini di prestazioni.

## Funzionalità
<a name="capabilities-parallelization"></a>
+ Esecuzione parallela di attività LLM (utilizzando o uno stato della mappa) AWS Lambda AWS Fargate AWS Step Functions 
+ Richiede l'allineamento, la convalida o la deduplicazione dei risultati in fase di sintesi
+ Ideale per i loop di agenti stateless

## Casi di utilizzo comune
<a name="common-use-cases-parallelization"></a>
+ Analisi parallela di più documenti o prospettive
+ Generazione di bozze, riepiloghi o piani diversi
+ Accelerazione della produttività tra i lavori in batch

# Flusso di lavoro per l'orchestrazione
<a name="workflow-for-orchestration"></a>

Un agente di orchestrazione centrale utilizza un LLM per pianificare, scomporre e delegare le sottoattività ad agenti o modelli di lavoro specializzati, ciascuno con un ruolo o un'esperienza di dominio specifici. Ciò rispecchia le strutture dei team umani e supporta il comportamento emergente tra più agenti.

![\[Flusso di lavoro per l'orchestrazione.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/workflow-for-orchestration.png)


Il flusso di lavoro di orchestrazione è ideale per scenari complessi, gerarchici o multidisciplinari, che richiedono una scomposizione strutturata e un'esecuzione specializzata. È particolarmente adatto per attività che richiedono la divisione del lavoro, in cui i diversi sottocomponenti di un'attività vengono gestiti al meglio da agenti con capacità, conoscenze o set di strumenti distinti.

Questo flusso di lavoro è particolarmente efficace quando:
+ Le attività possono essere suddivise in sottoattività che variano per ambito, tipo o ragionamento (ad esempio, pianificazione, ricerca, implementazione e test).
+ Un LLM o un meta-agente deve coordinare altri agenti, monitorare i progressi e sintetizzare i risultati.
+ Desiderate modularizzare le responsabilità degli agenti, abilitando la scalabilità, il riutilizzo e l'ottimizzazione specializzata.
+ Il sistema richiede un comportamento basato sui ruoli, che imita il modo in cui i team umani (ad esempio, project manager, sviluppatori e revisori) operano in collaborazione.

L'orchestrazione è ideale per agenti di pianificazione a più turni, copiloti di sviluppo software, agenti di processo aziendali ed esecutori di progetto autonomi. È particolarmente utile quando si implementano sistemi multiagente che richiedono una suddivisione centralizzata delle attività ma una logica di esecuzione distribuita, che consente l'estensibilità e un comportamento più spiegabile tra i livelli degli agenti.

## Funzionalità
<a name="capabilities-orchestration"></a>
+ Orchestrator esegue il meta-ragionamento degli obiettivi
+ Gli agenti di lavoro possono includere l'accesso agli strumenti, la memoria o richieste specifiche del dominio
+ Può essere gerarchico (ovvero delega di attività a più livelli)

## Casi di utilizzo comune
<a name="common-use-cases-orchestration"></a>
+ Responsabili di progetto, ricercatori coordinatori, scrittori e agenti di garanzia della qualità
+ Copiloti di codifica che combinano pianificazione, esecuzione e test
+ Agenti che supervisionano le toolchain o i modelli di accesso alle API

# Flusso di lavoro per valutatori e cicli Reflect-Refine
<a name="workflow-for-evaluators-and-reflect-refine-loops"></a>

Questo flusso di lavoro fornisce un ciclo di feedback in cui un LLM genera un risultato e un altro valuta o critica il risultato. Ciò promuove l'autoriflessione, l'ottimizzazione e i miglioramenti iterativi.

![\[Flusso di lavoro per il valutatore.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/agentic-ai-patterns/images/workflow-patterns-evaluator-reflect-refine-feedback-loop.png)


Il flusso di lavoro del valutatore è ideale per scenari in cui la qualità, la precisione e l'allineamento dell'output sono importanti e in cui la generazione a passaggio singolo è inaffidabile o insufficiente. Questo flusso di lavoro eccelle quando gli agenti devono autocriticare, iterare e perfezionare i propri risultati, per soddisfare uno standard di correttezza più elevato o per esplorare alternative migliori basate sul feedback.

Questo flusso di lavoro è particolarmente efficace quando:
+ L'output include metriche di qualità soggettive (ad esempio stile, tono e leggibilità) o criteri oggettivi (ad esempio, correttezza, sicurezza e prestazioni).
+ L'agente deve ragionare sulla base di compromessi, valutare i vincoli o ottimizzare per raggiungere un obiettivo.
+ Sono necessarie ridondanza e garanzia di qualità integrate, specialmente in domini regolamentati, rivolti ai clienti o creativi.
+ Human-in-the-loop la revisione è costosa o non disponibile e si desidera una convalida autonoma.

Questo flusso di lavoro viene utilizzato per la generazione di contenuti, la sintesi e la revisione del codice, l'applicazione delle policy, il controllo dell'allineamento, l'ottimizzazione delle istruzioni e la postelaborazione RAG. È utile anche per gli agenti che si migliorano da soli, dove il feedback continuo aiuta a modellare risposte migliori nel tempo per creare cicli decisionali affidabili e autonomi.

## Casi di utilizzo comune
<a name="common-use-cases-evaluators"></a>
+ Agenti della squadra rossa rispetto agli agenti della squadra blu
+ Agenti che generano, valutano e rivedono codice o piani
+ Garanzia della qualità, rilevamento delle allucinazioni e applicazione dello stile

## Funzionalità
<a name="capabilities-evaluators"></a>
+ Supporta la generazione e la valutazione disaccoppiate utilizzando diversi modelli (ad esempio, Claude per la generazione e Mistral per la valutazione)
+ Il feedback è strutturato e utilizzato per richiedere risultati rivisti
+ Supporta più iterazioni o soglie di convergenza

# Conclusioni
<a name="conclusion-llm-workflows"></a>

LLMs forniscono il nucleo cognitivo dei moderni agenti software, ma l'invocazione di modelli grezzi non è sufficiente per ottenere un'intelligenza mirata, solida e controllabile. Per passare dalla generazione di output al ragionamento strutturato e al comportamento allineato agli obiettivi, è LLMs necessario incorporarlo in modelli di flusso di lavoro intenzionali che definiscono il modo in cui i modelli elaborano gli input, gestiscono i contesti e coordinano le azioni.

I flussi di lavoro LLM introducono le basi per creare il modulo cognitivo di un agente:
+ Il concatenamento rapido suddivide il ragionamento complesso in fasi modulari e verificabili.
+ Il routing consente una classificazione intelligente delle attività e una delega mirata.
+ La parallelizzazione accelera la produttività e promuove ragionamenti diversificati.
+ L'orchestrazione degli agenti struttura la collaborazione tra più agenti attraverso la scomposizione delle attività e l'esecuzione basata sui ruoli.
+ Evaluator (reflect-refine loop) consente il miglioramento automatico, il controllo della qualità e il controllo dell'allineamento.

Ogni flusso di lavoro rappresenta uno schema componibile che può essere adattato alle esigenze dell'operatore, alla complessità dell'attività e alle aspettative dell'utente. Questi flussi di lavoro non si escludono a vicenda. Sono elementi costitutivi che vengono spesso combinati in architetture ibride che supportano il ragionamento dinamico, il coordinamento multiagente e l'affidabilità di livello aziendale.

Passando al prossimo capitolo sui modelli di flusso di lavoro agentici, questi flussi di lavoro LLM riappariranno come strutture integrate all'interno di sistemi più grandi, che supportano la delega degli obiettivi, l'orchestrazione degli strumenti, i cicli decisionali e l'autonomia del ciclo di vita. La padronanza di questi flussi di lavoro LLM è essenziale per progettare agenti software che non si limitino a prevedere il testo, ma che ragionino, si adattino e agiscano in modo mirato.