

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à.

# Come funziona Agent per Amazon Bedrock
<a name="agents-how"></a>


|  | 
| --- |
|  *Accelera la fase di produzione degli agenti con Amazon Bedrock AgentCore. AgentCore è una piattaforma agentica per creare, implementare e gestire agenti altamente capaci in modo sicuro su larga scala. [Per ulteriori informazioni, consulta la guida per gli sviluppatori. AgentCore ](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html)*  | 

Agent per Amazon Bedrock include i due seguenti set principali di operazioni API che semplificano la configurazione e l’esecuzione di un agente:
+ [Operazioni API in fase di compilazione](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock.html) per creare, configurare e gestire gli agenti e le relative risorse
+ [Operazioni API in fase di runtime](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock_Runtime.html) per invocare l’agente con l’input dell’utente e avviare l’orchestrazione per eseguire un’attività

## Configurazione in fase di compilazione
<a name="agents-btl"></a>

Un agente è costituito dai componenti seguenti:
+ **Modello di fondazione**: scegli un modello di fondazione (FM) che l’agente invoca per interpretare l’input dell’utente e i prompt successivi nel suo processo di orchestrazione. L’agente invoca il modello FM anche per generare risposte e per le fasi successive del processo.
+ **Istruzioni**: scrivi istruzioni che descrivono le funzioni dell’agente. I prompt avanzati consentono di personalizzare ulteriormente le istruzioni per l’agente in ogni fase dell’orchestrazione e di includere funzioni Lambda per analizzare l’output di ogni fase.
+ Almeno uno dei seguenti elementi:
  + **Gruppi di operazioni**: definisci le azioni che l’agente deve eseguire per l’utente (fornendo le seguenti risorse):
    + Uno dei seguenti schemi per definire i parametri che l’agente deve ottenere dall’utente (ogni gruppo di operazioni può utilizzare uno schema diverso):
      + Uno schema OpenAPI per definire le API che l’agente può invocare per svolgere le sue attività. Lo schema OpenAPI include i parametri che devono essere richiesti all’utente.
      + Uno schema dettagliato delle funzioni per definire i parametri che l’agente può richiedere all’utente. È quindi possibile utilizzare questi parametri per un’ulteriore orchestrazione da parte dell’agente o impostarne la modalità di utilizzo nella propria applicazione.
    + (Facoltativo) Una funzione Lambda con i seguenti input e output.
      + Input: i and/or parametri operativi dell'API identificati durante l'orchestrazione.
      + Output: la risposta dall’invocazione dell’API o dall’invocazione della funzione.
  + **Knowledge base**: associa le knowledge base a un agente. L’agente esegue query sulla knowledge base per ottenere un contesto aggiuntivo e aumentare la generazione di risposte e l’input nelle fasi del processo di orchestrazione.
+ **Modelli di prompt**: i modelli di prompt sono la base per la creazione di prompt da fornire al modello FM. Agent per Amazon Bedrock espone i quattro modelli di prompt di base predefiniti utilizzati durante la pre-elaborazione, l’orchestrazione, la generazione di risposte della knowledge base e la post-elaborazione. Se lo desideri, puoi modificare questi modelli di prompt di base per personalizzare il comportamento dell’agente in ogni fase della sequenza. Puoi anche disattivare le fasi a fini di risoluzione dei problemi o se ritieni che una fase non sia necessaria. Per ulteriori informazioni, consulta [Miglioramento della precisione dell’agente utilizzando modelli di prompt avanzati in Amazon Bedrock](advanced-prompts.md).

In fase di compilazione, tutti questi componenti vengono raccolti per creare prompt di base per l’agente al fine di eseguire l’orchestrazione fino al completamento della richiesta dell’utente. Con i prompt avanzati, puoi modificare questi prompt di base con logica aggiuntiva ed esempi con poche informazioni per migliorare la precisione di ogni passaggio dell'invocazione dell'agente. I modelli di prompt di base contengono istruzioni, descrizioni delle azioni, descrizioni delle knowledge base e cronologia delle conversazioni, tutte personalizzabili per modificare l’agente in base alle proprie esigenze. Quindi devi *preparare* l’agente, che impacchetta tutti i componenti degli agenti, incluse le configurazioni di sicurezza. La preparazione porta l’agente porta in uno stato in cui è possibile testarlo in fase di runtime. L’immagine seguente mostra in che modo le operazioni API in fase di compilazione creano l’agente.

![\[In che modo build-time APIs costruisce il tuo agente. Un gruppo di operazioni è costituito da uno schema OpenAPI e da una funzione Lambda per definire quali operazioni API un agente può chiamare e come deve gestire le richieste e le risposte. L’agente sintetizza le informazioni ricavate da modelli di prompt di base, istruzioni fornite ed eventuali gruppi di operazioni e knowledge base collegati per generare prompt con il modello che utilizza. I prompt vengono aggiunti all’archivio di prompt dell’agente.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/agents/agents-buildtime.png)


## Processo di runtime
<a name="agents-rt"></a>

Il runtime è gestito dall’operazione API [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html). Questa operazione avvia la sequenza dell’agente, che include le tre fasi principali indicate di seguito.

1. **Pre-elaborazione**: gestisce il modo in cui l’agente contestualizza e classifica l’input dell’utente e può essere utilizzata per convalidare l’input.

1. **Orchestrazione**: interpreta l’input dell’utente, invoca gruppi di operazioni, esegue query sulle knowledge base e restituisce l’output o all’utente o come input per un’orchestrazione continua. L’orchestrazione prevede le seguenti fasi:

   1. L'agente interpreta l'input con un modello di fondazione e genera una *logica* per il passaggio successivo da intraprendere.

   1. L’agente prevede quale azione di un gruppo di operazioni deve invocare o su quale knowledge base deve eseguire la query.

   1. Se l’agente prevede di dover invocare un’azione, invia i parametri, determinati dal prompt dell’utente, alla [funzione Lambda configurata per il gruppo di operazioni](agents-lambda.md) o [restituisce il controllo](agents-returncontrol.md) inviando i parametri nella risposta [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html). Se l’agente non dispone di informazioni sufficienti per invocare l’azione, potrebbe eseguirne una delle seguenti:
      + Query sulla knowledge base (**Generazione di risposte della knowledge base**) associata per recuperare un contesto aggiuntivo e riepilogare i dati per aumentarne la generazione.
      + Nuovo invio di un prompt all’utente in modo da raccogliere tutti i parametri richiesti per l’azione.

   1. L'agente genera un output, noto come *osservazione*, dall'invocazione di un'azione che and/or riassume i risultati di una knowledge base. L’agente utilizza l’osservazione per arricchire il prompt di base, che viene poi interpretato con un modello di fondazione. L'agente determina quindi se è necessario reiterare il processo di orchestrazione.

   1. Questo ciclo continua finché l’agente restituisce una risposta all’utente o fino a quando non è necessario richiedere all’utente ulteriori informazioni.

   Durante l’orchestrazione, il modello di prompt di base viene arricchito con le istruzioni dell’agente, i gruppi di operazioni e le knowledge base che hai aggiunto all’agente. Il prompt di base arricchito viene quindi utilizzato per invocare il modello di fondazione, che prevede la traiettoria e le fasi migliori possibili per soddisfare l’input dell’utente. A ogni iterazione dell’orchestrazione, il modello di fondazione prevede l’operazione API da invocare o la knowledge base su cui eseguire una query.

1. **Post-elaborazione**: l’agente formatta la risposta finale da restituire all’utente. Per impostazione predefinita, questo passaggio è disabilitato.

Quando invochi l’agente, puoi attivare una **traccia** in fase di runtime. La traccia consente di monitorare la logica, le azioni, le query e le osservazioni dell’agente in ogni fase della sua sequenza. La traccia include il prompt completo inviato come input al modello di fondazione in ciascuna fase e gli output del modello di fondazione, le risposte API e le query sulla knowledge base. Puoi utilizzare la traccia per comprendere il ragionamento dell’agente in ognuna delle fasi. Per ulteriori informazioni, consulta [Tieni traccia del processo di step-by-step ragionamento dell'agente utilizzando trace](trace-events.md).

Mentre la sessione utente con l’agente continua a ricevere altre richieste `InvokeAgent`, la cronologia delle conversazioni viene preservata. La cronologia delle conversazioni continua ad arricchire con ulteriore contesto il modello di prompt di base dell’orchestrazione, contribuendo a migliorare l’accuratezza e le prestazioni dell’agente. Il diagramma seguente schematizza il processo dell’agente durante il runtime.

![\[Come funziona l’agente in fase di runtime. Dopo aver ricevuto l’input dell’utente, l’agente recupera i prompt arricchiti dall’archivio di prompt e la cronologia delle conversazioni dall’archivio delle sessioni. Se la fase di pre-elaborazione è abilitata, l’agente invoca il modello di fondazione con il prompt di pre-elaborazione per convalidare l’input dell’utente. Nella fase di orchestrazione, l’agente invoca il modello di fondazione con il prompt di orchestrazione e analizza la risposta. Determina quindi i gruppi di operazione ed esegue query sulle knowledge base, se necessario, e genera un’osservazione che potrebbe attivare un nuovo prompt di orchestrazione. La fase di orchestrazione si ripete finché l’osservazione non restituisce una risposta finale all’utente.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/agents/agents-runtime.png)
