

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

# Test e risoluzione dei problemi relativi al comportamento dell’agente
<a name="agents-test"></a>

Dopo aver creato un agente, avrai una *bozza di lavoro*. La bozza di lavoro è una versione dell'agente da utilizzare per costruire l'agente in modo iterativo Ogni volta che apporti modifiche al tuo agente, la bozza di lavoro viene aggiornata. Quando ritieni che le configurazioni del tuo agente siano soddisfacenti, puoi creare una *versione*, ovvero uno snapshot del tuo agente, e un *alias*, che rimanda alla versione. Puoi quindi distribuire l’agente nelle tue applicazioni chiamando l’alias. Per ulteriori informazioni, consulta [Implementazione e utilizzo di un agente di Amazon Bedrock nell’applicazione](agents-deploy.md).

Nell’elenco seguente viene spiegato come testare l’agente:
+ Nella console Amazon Bedrock, apri la finestra di test laterale e invii l’input a cui il tuo agente dovrà rispondere. Puoi selezionare la bozza di lavoro o una versione che hai creato.
+ Nell’API, la bozza di lavoro è la versione `DRAFT`. Invia l’input al tuo agente utilizzando [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) con l’alias di test o un alias diverso, `TSTALIASID`, che punti a una versione statica. Prima di poter testare il tuo agente, devi prepararlo chiamando [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareAgent.html).

## Tracciamento del comportamento dell’agente
<a name="agent-behavior-trace"></a>

Per aiutarti a risolvere i problemi di comportamento del tuo agente, Agent per Amazon Bedrock offre la possibilità di visualizzare la *traccia* durante una sessione con l’agente. La traccia mostra il processo di ragionamento dell’agente nei dettagli. Per ulteriori informazioni sulla traccia, consulta [Tieni traccia del processo di step-by-step ragionamento dell'agente utilizzando trace](trace-events.md).

## Test dell'agente
<a name="test-your-agent"></a>

Di seguito è riportata la procedura per testare l’agente. Scegli la scheda relativa al metodo che preferisci, quindi segui la procedura:

------
#### [ Console ]

**Per testare un agente**

1. Accedi alla Console di gestione AWS con un’identità IAM che disponga delle autorizzazioni per utilizzare la console Amazon Bedrock. Quindi, apri la console Amazon Bedrock all’indirizzo [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock).

1. Seleziona **Agenti** nel riquadro di navigazione a sinistra. Quindi, scegli un agente nella sezione **Agenti**.

1. Nella sezione **Agenti**, seleziona il link relativo all’agente che desideri testare dall’elenco degli agenti.

1. La finestra **Test** viene visualizzata in un riquadro sulla destra.
**Nota**  
Se la **finestra Test** è chiusa, puoi riaprirla selezionando **Test** nella parte superiore della pagina dei dettagli dell’agente o in qualsiasi pagina al suo interno.

1. Dopo aver creato un agente, è necessario inserire le modifiche nella bozza di lavoro preparandola in uno dei seguenti modi:
   + Nella finestra **Test**, seleziona **Prepara**.
   + Nella pagina **Bozza di lavoro**, seleziona **Prepara** nella parte superiore della pagina.
**Nota**  
Ogni volta che aggiorni la bozza di lavoro, devi preparare l’agente in modo che includa le ultime modifiche. Come best practice, consigliamo di controllare sempre l’ora dell’**Ultima preparazione** dell’agente nella sezione **Panoramica degli agenti** della pagina **Bozza di lavoro**, per verificare che il test dell’agente sia eseguito con le configurazioni più recenti.

1. Per scegliere un alias e la versione associata da testare, utilizza il menu a discesa nella parte superiore della **finestra Test**. Per impostazione predefinita, è selezionata la combinazione **TestAlias: Bozza di lavoro**.

1. (Facoltativo) Per selezionare Throughput assegnato come alias, il testo sotto l’alias di test selezionato indicherà **Utilizzo di ODT** o **Utilizzo di PT**. Per creare un modello Throughput assegnato, seleziona **Modifica**. Per ulteriori informazioni, consulta [Aumenta la capacità di invocazione del modello con Provisioned Throughput in Amazon Bedrock](prov-throughput.md).

1. (Facoltativo) Per utilizzare un prompt da Gestione prompt, seleziona l’icona delle opzioni (![\[Vertical ellipsis icon representing a menu or more options.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/vertical-ellipsis.png)) nella finestra del messaggio e scegli **Importa prompt**. Seleziona il prompt e la versione. Immetti i valori per le variabili di prompt nella sezione **Valori delle variabili di test**. Per ulteriori informazioni sui prompt in Gestione prompt, consulta [Creare e archiviare prompt riutilizzabili con Gestione dei prompt in Amazon Bedrock](prompt-management.md).

1. Per testare l’agente, inserisci un messaggio e scegli **Esegui**. In attesa che la risposta venga generata o dopo che è stata generata, hai a disposizione le seguenti opzioni:
   + Per visualizzare i dettagli di ogni fase del processo di orchestrazione dell’agente, inclusi il prompt, le configurazioni di inferenza e il processo di ragionamento dell’agente per ogni fase e l’utilizzo dei relativi gruppi di operazioni e knowledge base, seleziona **Mostra traccia**. La traccia viene aggiornata in tempo reale, in modo da poterla visualizzare prima che venga restituita la risposta. Per espandere o comprimere le tracce relative alle singole fasi, seleziona una freccia accanto a ciascuna di esse. Per ulteriori informazioni sulla finestra **Traccia** e sui dettagli visualizzati, consulta [Tieni traccia del processo di step-by-step ragionamento dell'agente utilizzando trace](trace-events.md).
   + Se l’agente invoca una knowledge base, la risposta contiene note a piè di pagina. Per visualizzare il link all’oggetto S3 contenente le informazioni citate per una parte specifica della risposta, seleziona la nota a piè di pagina pertinente.
   + Se imposti l’agente in modo che restituisca il controllo anziché utilizzare una funzione Lambda per gestire il gruppo di operazioni, la risposta conterrà l’operazione prevista e i relativi parametri. Fornisci un esempio di valore di output dall’API o dalla funzione per l’operazione, quindi scegli **Invia** per generare una risposta dell’agente. Per un esempio, vedi le immagini seguenti.  
![\[Richiesta della finestra di test per fornire un output di esempio per l’operazione.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/agents/roc-testwindow.png)

   Nella finestra **Test** puoi eseguire le seguenti operazioni:
   + Per avviare una nuova conversazione con l’agente, seleziona l’icona aggiornamento.
   + Per visualizzare la finestra **Traccia**, seleziona l’icona espansione. Per chiudere la finestra **Traccia**, seleziona l’icona riduzione.
   + Per chiudere la finestra **Test**, seleziona l’icona freccia destra.

È possibile abilitare o disabilitare gruppi di operazioni e knowledge base. Utilizza questa funzionalità per risolvere i problemi relativi all’agente isolando i gruppi di operazioni o le knowledge base che devono essere aggiornati valutandone il comportamento con impostazioni diverse.

**Per abilitare un gruppo di operazioni o una knowledge base**

1. Accedi alla Console di gestione AWS con un’identità IAM che disponga delle autorizzazioni per utilizzare la console Amazon Bedrock. Quindi, apri la console Amazon Bedrock all’indirizzo [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock).

1. Seleziona **Agenti** nel riquadro di navigazione a sinistra. Quindi, scegli un agente nella sezione **Agenti**.

1. Nella sezione **Agenti**, seleziona il link relativo all’agente che desideri testare dall’elenco degli agenti.

1. Nella sezione **Bozza di lavoro** della pagina dei dettagli dell’agente, seleziona il collegamento per la **bozza di lavoro**.

1. Nella sezione **Gruppi di operazioni** o **Knowledge base**, passa il mouse sopra lo **Stato** del gruppo di operazioni di cui desideri modificare lo stato.

1. Viene visualizzato un pulsante di modifica. Seleziona l’icona di modifica, quindi scegli dal menu a discesa se lo stato del gruppo di operazioni o della knowledge base deve essere **Abilitato** o **Disabilitato**.

1. Se lo stato di un gruppo di operazioni è **Disabilitato**, l’agente non utilizza tale gruppo. Se lo stato di una knowledge base è **Disabilitato**, l’agente non utilizza tale knowledge base. Abilita o disabilita i gruppi di operazioni o le knowledge base, quindi utilizza la finestra **Test** per risolvere i problemi del tuo agente.

1. Seleziona **Prepara** per applicare le modifiche apportate all’agente prima di testarlo.

------
#### [ API ]

Per gli agenti creati `after` il 31 marzo 2025: 
+ Se hai creato il tuo agente nella console, lo streaming è abilitato per impostazione predefinita. Puoi disabilitare lo streaming in qualsiasi momento.
+ Assicurati che il ruolo di esecuzione Agente includa l’autorizzazione `bedrock:InvokeModelWithResponseStream` per il modello di agente configurato.

Prima di testare il tuo agente per la prima volta, devi impacchettarlo con le modifiche alla bozza di lavoro inviando una richiesta [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareAgent.html) con un [endpoint in fase di compilazione di Agent per Amazon Bedrock.](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt) Includi `agentId` nella richiesta. Le modifiche si applicano alla versione `DRAFT`, a cui fa riferimento l’alias `TSTALIASID`.

```
    def prepare_agent(self, agent_id):
        """
        Creates a DRAFT version of the agent that can be used for internal testing.

        :param agent_id: The unique identifier of the agent to prepare.
        :return: The response from Amazon Bedrock Agents if successful, otherwise raises an exception.
        """
        try:
            prepared_agent_details = self.client.prepare_agent(agentId=agent_id)
        except ClientError as e:
            logger.error(f"Couldn't prepare agent. {e}")
            raise
        else:
            return prepared_agent_details
```

Per ulteriori informazioni, consulta [Agent per Amazon Bedrock](bedrock-agent_example_bedrock-agent_Hello_section.md).

**Nota**  
Ogni volta che aggiorni la bozza di lavoro, devi preparare l’agente in modo che includa le ultime modifiche. Come best practice, ti consigliamo di inviare una richiesta [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetAgent.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetAgent.html) (consulta il link per i formati di richiesta e risposta e i dettagli sui campi) con un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt) e di controllare l’ora di `preparedAt`, per verificare che il test dell’agente sia eseguito con le configurazioni più recenti.

Per testare il tuo agente, inviagli una richiesta [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). Per il codice di esempio, consulta [Invocazione di un agente dalla propria applicazione](agents-invoke-agent.md).

**Nota**  
La AWS CLI non supporta [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).

La richiesta include i campi indicati di seguito:
+ Compila almeno i seguenti campi obbligatori:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/agents-test.html)
+ I seguenti campi sono facoltativi:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/agents-test.html)

La risposta viene restituita in un flusso di eventi. Ogni evento contiene un `chunk`, che contiene parte della risposta nel campo `bytes` e deve essere decodificata. È inoltre possibile che vengano restituiti i seguenti oggetti:
+ Se l’agente ha eseguito una query su una knowledge base, `chunk` include anche `citations`.
+ Se lo streaming è abilitato e il guardrail è configurato per l’agente, la risposta viene generata negli intervalli di caratteri specificati per l’intervallo di guardrail. Per impostazione predefinita, l’intervallo è impostato su 50 caratteri.
+ Se hai abilitato una traccia, viene restituito anche un oggetto `trace`. In caso di errore, viene restituito un campo con il messaggio di errore. Per ulteriori informazioni su come leggere la traccia, consulta [Tieni traccia del processo di step-by-step ragionamento dell'agente utilizzando trace](trace-events.md).
+ Se configuri il gruppo di operazioni in modo che non utilizzi una funzione Lambda, nel campo `returnControl` viene restituito un oggetto [ReturnControlPayload](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ReturnControlPayload.html). La struttura generale dell’oggetto [ReturnControlPayload](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ReturnControlPayload.html) è la seguente:

  ```
  {
      "invocationId": "string",
      "invocationInputs": [
          [ApiInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ApiInvocationInput.html) or [FunctionInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_FunctionInvocationInput.html),
          ...
      ]
  }
  ```

  Ogni membro dell’elenco di `invocationInputs` è uno dei seguenti:
  + In base all’input dell’utente, deve essere chiamato un oggetto [ApiInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ApiInvocationInput.html) contenente l’operazione API prevista dall’agente, oltre ai parametri e ad altre informazioni che si ottengono dall’utente per soddisfare l’API. La struttura di un oggetto [ApiInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ApiInvocationInput.html) è la seguente:

    ```
    {
        "actionGroup": "string",
        "apiPath": "string",
        "httpMethod": "string",
        "parameters": [
            {
                "name": "string",
                "type": "string",
                "value": "string"
            },
            ...
        ],
        "requestBody": {
            <content-type>: {
                "properties": [
                    {
                        "name": "string",
                        "type": "string",
                        "value": "string"
                    }
                ]
            }
        }
    }
    ```
  + In base all’input dell’utente, deve essere chiamato un oggetto [FunctionInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_FunctionInvocationInput.html) contenente la funzione prevista dall’agente, oltre ai parametri per quella funzione che si ottengono dall’utente. La struttura di [FunctionInvocationInput](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_FunctionInvocationInput.html) è la seguente:

    ```
    {
        "actionGroup": "string",
        "function": "string",
        "parameters": [
            {
                "name": "string",
                "type": "string",
                "value": "string"
            }
        ]
    }
    ```

------