

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

# Creare e archiviare prompt riutilizzabili con Gestione dei prompt in Amazon Bedrock
<a name="prompt-management"></a>

Amazon Bedrock ti offre la possibilità di creare e salvare i tuoi prompt tramite Gestione dei prompt, in modo da risparmiare tempo applicando lo stesso prompt a flussi di lavoro diversi. Quando crei un prompt, puoi selezionare un modello su cui eseguire l’inferenza e modificare i parametri di inferenza da utilizzare. Puoi includere variabili nel prompt, così da poter adattare il prompt a casi d’uso differenti.

Quando testi il tuo prompt, hai la possibilità di confrontare diverse varianti del prompt e scegliere la variante che genera output più adatti al tuo caso d’uso. Durante l’iterazione del prompt, è possibile salvarne le versioni. Puoi integrare un prompt nella tua applicazione con l’aiuto di [Amazon Bedrock Flows](flows.md).

Di seguito è riportato il flusso di lavoro generale per l’utilizzo di Gestione dei prompt:

1. Crea un prompt in Gestione dei prompt che desideri riutilizzare in diversi casi d’uso. Includi variabili per fornire flessibilità nel prompt del modello.

1. Scegli un modello, un profilo di inferenza o un agente per eseguire l’inferenza sul prompt e modifica le configurazioni di inferenza secondo necessità.

1. Inserisci i valori di test per le variabili ed esegui il prompt. Puoi creare varianti del tuo prompt e confrontare gli output delle diverse varianti per scegliere quella più adatta al tuo caso d’uso.

1. Integra il prompt nella tua applicazione in uno dei seguenti modi:
   + Specifica il prompt durante l’[esecuzione dell’inferenza del modello](inference.md).
   + Aggiungi un nodo del prompt a un [flusso](flows.md) e specifica il prompt.

**Topics**
+ [Definizioni principali](#prompt-management-definitions)
+ [Regioni e modelli supportati per la gestione dei prompt](prompt-management-supported.md)
+ [Prerequisiti per la gestione dei prompt](prompt-management-prereq.md)
+ [Creare un prompt utilizzando Gestione prompt](prompt-management-create.md)
+ [Visualizzare informazioni sui prompt utilizzando Gestione prompt](prompt-management-view.md)
+ [Modifica di un prompt utilizzando Gestione prompt](prompt-management-modify.md)
+ [Test di un prompt utilizzando Gestione prompt](prompt-management-test.md)
+ [Ottimizzare un prompt](prompt-management-optimize.md)
+ [Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt](prompt-management-deploy.md)
+ [Eliminazione di un prompt in Gestione prompt](prompt-management-delete.md)
+ [Eseguire esempi di codice di Gestione dei prompt](prompt-management-code-ex.md)

## Definizioni principali
<a name="prompt-management-definitions"></a>

L’elenco seguente presenta i concetti di base di Gestione dei prompt:
+ **Prompt**: un input fornito a un modello per guidarlo a generare una risposta o un output appropriato.
+ **Variabile**: un segnaposto che è possibile includere nel prompt. Puoi includere i valori per ciascuna variabile quando testi il prompt o quando invochi il modello in fase di runtime.
+ **Variante del prompt**: una configurazione alternativa del prompt, incluso il relativo messaggio oppure le configurazioni di inferenza o del modello utilizzate. È possibile creare diverse varianti di un prompt, testarle e salvare la variante che vuoi conservare.
+ **Generatore di prompt**: uno strumento nella console Amazon Bedrock che consente di creare, modificare e testare prompt e relative varianti tramite un’interfaccia visiva.

# Regioni e modelli supportati per la gestione dei prompt
<a name="prompt-management-supported"></a>

La gestione dei prompt è supportata nei seguenti casi: Regioni AWS
+ ap-northeast-1
+ ap-northeast-2
+ ap-northeast-3
+ ap-south-1
+ ap-south-2
+ ap-southeast-1
+ ap-southeast-2
+ ca-central-1
+ eu-central-1
+ eu-central-2
+ eu-north-1
+ eu-south-1
+ eu-south-2
+ eu-west-1
+ eu-west-2
+ eu-west-3
+ sa-east-1
+ us-east-1
+ us-east-2
+ us-gov-east-1
+ us-gov-west-1
+ us-west-2

Nodo prompt: puoi utilizzare Gestione dei prompt con qualsiasi modello di testo supportato per l’API [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html). Per un elenco dei modelli supportati, consulta [Modelli e funzionalità del modello supportati](conversation-inference-supported-models-features.md).

**Nota**  
[InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)e funzionano [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html)solo sui prompt di Prompt management la cui configurazione specifica un modello or. Anthropic Claude Meta Llama

# Prerequisiti per la gestione dei prompt
<a name="prompt-management-prereq"></a>

Affinché un ruolo utilizzi la gestione dei prompt, è necessario consentirgli di eseguire un determinato set di azioni API. Verifica i seguenti prerequisiti e soddisfa quelli che si applicano al tuo caso d’uso:

1. Se al tuo ruolo è allegata la policy [AmazonBedrockFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockFullAccess)AWSgestita, puoi saltare questa sezione. Altrimenti, segui i passaggi indicati in [Aggiornamento di una policy delle autorizzazioni per un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-permissions.html#id_roles_update-role-permissions-policy) per fornire le autorizzazioni per eseguire azioni relative a Gestione dei prompt:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "PromptManagementPermissions",
               "Effect": "Allow",
               "Action": [
                   "bedrock:CreatePrompt",
                   "bedrock:UpdatePrompt",
                   "bedrock:GetPrompt",
                   "bedrock:ListPrompts",
                   "bedrock:DeletePrompt",
                   "bedrock:CreatePromptVersion",
                   "bedrock:OptimizePrompt",
                   "bedrock:GetFoundationModel",
                   "bedrock:ListFoundationModels",
                   "bedrock:GetInferenceProfile",
                   "bedrock:ListInferenceProfiles",
                   "bedrock:InvokeModel",
                   "bedrock:InvokeModelWithResponseStream",
                   "bedrock:RenderPrompt",
                   "bedrock:TagResource",
                   "bedrock:UntagResource",
                   "bedrock:ListTagsForResource"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

   Per limitare ulteriormente le autorizzazioni, è possibile omettere azioni o specificare risorse e chiavi di condizione con cui filtrare le autorizzazioni. Per ulteriori informazioni su azioni, risorse e chiavi di condizione, consultare i seguenti argomenti nella *documentazione di riferimento per l’autorizzazione al servizio*:
   + [Azioni definite da Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-actions-as-permissions): scopri le azioni, i tipi di risorsa a cui è possibile limitarle nel campo `Resource` e le chiavi di condizione in base alle quali puoi filtrare le autorizzazioni nel campo `Condition`.
   + [Tipi di risorsa definiti da Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-resources-for-iam-policies): scopri i tipi di risorsa in Amazon Bedrock.
   + [Chiavi di condizione per Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys): informazioni sulle chiavi di condizione in Amazon Bedrock.
**Nota**  
Se prevedi di distribuire il prompt utilizzando l’API [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html), consulta [Prerequisiti per l’esecuzione dell’inferenza del modello](inference-prereq.md) per saperne di più sulle autorizzazioni che devi configurare per invocare un prompt.
Se prevedi di utilizzare un [flusso](flows.md) in Amazon Bedrock Flows per distribuire il prompt, consulta [Prerequisiti per Amazon Bedrock Flows](flows-prereq.md) per informazioni sulle autorizzazioni che devi configurare per creare un flusso.

1. Se prevedi di crittografare il prompt con una chiave gestita dal cliente anziché utilizzare una Chiave gestita da AWS (per ulteriori informazioni, consulta le [AWS KMSchiavi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html)), crea le seguenti politiche:

   1. Segui la procedura descritta in [Creazione di una policy chiave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-overview.html) e allega la seguente policy chiave a una chiave KMS per consentire ad Amazon Bedrock di crittografare e decrittografare un prompt con la chiave, sostituendola se necessario. *values* La policy contiene chiavi di condizione opzionali (vedi [Chiavi di condizione Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) e [chiavi di contesto delle condizioni globali AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys)) nel campo `Condition` che ti consigliamo di utilizzare come best practice di sicurezza.

      ```
      {
          "Sid": "EncryptFlowKMS",
          "Effect": "Allow",
          "Principal": {
              "Service": "bedrock.amazonaws.com"
          },
          "Action": [
              "kms:GenerateDataKey",
              "kms:Decrypt"
          ],
          "Resource": "*",
          "Condition": {
              "StringEquals": {
                  "kms:EncryptionContext:aws:bedrock-prompts:arn": "arn:${partition}:bedrock:${region}:${account-id}:prompt/${prompt-id}"
              }
          }
      }
      ```

   1. Segui i passaggi indicati in [Aggiornamento della politica delle autorizzazioni per un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-permissions.html#id_roles_update-role-permissions-policy) e allega la seguente politica al ruolo di gestione dei prompt, sostituendola se necessario, per consentirgli *values* di generare e decrittografare la chiave gestita dal cliente per una richiesta. La policy contiene chiavi di condizione opzionali (vedi [Chiavi di condizione Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) e [chiavi di contesto delle condizioni globali AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys)) nel campo `Condition` che ti consigliamo di utilizzare come best practice di sicurezza.

      ```
      {
          "Sid": "KMSPermissions",
          "Effect": "Allow",
          "Action": [
              "kms:GenerateDataKey",
              "kms:Decrypt"
          ],
          "Resource": [
              "arn:aws:kms:${region}:${account-id}:key/${key-id}"
          ],
           "Condition": {
              "StringEquals": {
                  "aws:ResourceAccount": "${account-id}"
              }
          }
      }
      ```

# Creare un prompt utilizzando Gestione prompt
<a name="prompt-management-create"></a>

Quando si crea un prompt, sono disponibili le seguenti opzioni:
+ Scrivere il messaggio del prompt che funge da input per un modello di fondazione per generare un output.
+ Utilizzare le parentesi graffe doppie per includere le variabili (come in *\$1\$1variable\$1\$1*) nel messaggio di richiesta che può essere compilato quando si chiama il prompt.
+ Scegliere un modello con cui invocare il prompt o, se si intende utilizzare il prompt con un agente, lasciarlo non specificato. Se si sceglie un modello, è anche possibile modificare le configurazioni di inferenza da utilizzare. Per informazioni sui parametri di inferenza per modelli diversi, consulta [Parametri di richiesta di inferenza e campi di risposta per i modelli di fondazione](model-parameters.md).

Tutti i prompt supportano i seguenti parametri di inferenza di base:
+ **maxTokens**: numero massimo di token da consentire nella risposta generata. 
+ **stopSequences**: elenco di sequenze di arresto. Una sequenza di arresto è una sequenza di caratteri che determina l’interruzione della generazione della risposta da parte del modello. 
+ **temperature**: probabilità che il modello selezioni opzioni con maggiore probabilità durante la generazione di una risposta. 
+ **topP**: percentuale di candidati più probabili che il modello considera per il token successivo.

Se un modello supporta parametri di inferenza aggiuntivi, è possibile specificarli come *campi aggiuntivi* per il prompt. Fornisci i campi aggiuntivi in un oggetto JSON. L’esempio seguente mostra come impostare `top_k`, disponibile nei modelli Anthropic Claude, ma non è un parametro di inferenza di base. 

```
{
    "top_k": 200
}
```

Per informazioni sui parametri di inferenza del modello, consulta [Parametri di richiesta di inferenza e campi di risposta per i modelli di fondazione](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).

L’impostazione di un parametro di inferenza di base come campo aggiuntivo non sovrascrive il valore impostato nella console.

Se il modello scelto per il prompt supporta l’API [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) (per maggiori informazioni, consulta [Avvio di una conversazione con le operazioni dell’API Converse](conversation-inference.md)), è possibile includere gli elementi seguenti durante la creazione del prompt:
+ Un prompt di sistema per fornire istruzioni o contesto al modello.
+ Prompt precedenti (messaggi utente) e risposte del modello (messaggi assistente) come cronologia delle conversazioni che il modello deve considerare nella generazione di una risposta per il messaggio finale dell’utente.
+ (Se supportato dal modello) [Strumenti](tool-use.md) per il modello da utilizzare durante la generazione della risposta.
+ (Se supportato dal modello) [Caching dei prompt](prompt-caching.md) per ridurre i costi memorizzando nella cache prompt di grandi dimensioni o utilizzati di frequente. In base al modello, è possibile memorizzare nella cache istruzioni di sistema, strumenti e messaggi (di utente e assistente). Il caching dei prompt crea un punto di controllo della cache per il prompt se il prefisso totale del prompt soddisfa il numero minimo di token richiesto dal modello. Quando viene rilevata una variabile modificata in un prompt, il caching dei prompt crea un nuovo punto di controllo della cache (se il numero di token di input raggiunge il minimo richiesto dal modello).

Per informazioni su come creare un prompt in Gestione prompt, scegli la scheda relativa al metodo che preferisci, quindi segui la procedura:

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

**Come creare un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Scegli **Crea prompt**.

1. Fornisci un nome e una descrizione (facoltativa) per il prompt.

1. Per crittografare il prompt utilizzando la chiave gestita dal cliente, nella sezione **Selezione chiave KMS**, scegli **Personalizza le impostazioni di crittografia (avanzate)**. Se ometti questo campo, il prompt viene crittografato con una Chiave gestita da AWS. Per ulteriori informazioni, consulta [ Chiavi AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html).

1. Scegli **Crea prompt**. Il prompt viene creato e l’utente viene indirizzato a **Generatore di prompt** per il nuovo prompt creato, in cui è possibile configurarlo.

1. Puoi continuare con la seguente procedura e configurare subito il prompt o tornare a Generatore di prompt in un secondo momento.

**Come configurare il prompt**

1. Se non sei già nel generatore di prompt, procedi come segue:

   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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

   1. Nella sezione **Bozza prompt**, scegli **Modifica nel generatore di prompt**.

1. Utilizza il riquadro **Prompt** per creare il prompt. Immetti il prompt nell’ultima casella **Messaggio dell’utente**. Se il modello supporta l’API [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) o l’[API Messages AnthropicClaude](model-parameters-anthropic-claude-messages.md), è anche possibile includere un **prompt di sistema** e i precedenti **messaggi utente** e **messaggi assistente** per fornire contesto.

   Quando scrivi un prompt, puoi includere variabili tra parentesi graffe doppie (come in *\$1\$1variable\$1\$1*). Ogni variabile inclusa viene visualizzata nella sezione **variabili di test**.

1. (Facoltativo) È possibile modificare il prompt come indicato di seguito:
   + Nel riquadro **Configurazioni**, esegui queste operazioni:

     1. Scegli un valore per **Risorsa di IA generativa** per eseguire l’inferenza.
**Nota**  
Se scegli un agente, puoi testare il prompt solo nella console. Per informazioni su come testare un prompt con un agente nell’API, consulta [Test di un prompt utilizzando Gestione prompt](prompt-management-test.md).

     1. In **Parametri di inferenza**, imposta i parametri di inferenza da utilizzare. 

     1. Se il modello supporta il [ragionamento](inference-reasoning.md), attiva **Ragionamento** per includere il ragionamento del modello nella risposta. In **Token di ragionamento**, configura il numero di token di ragionamento che il modello può utilizzare. 

     1. In **Campi aggiuntivi per la richiesta del modello**, scegli **Configura** to specificare altri parametri di inferenza, oltre a quelli indicati in **Parametri di inferenza**. 

     1. Se il modello scelto supporta gli strumenti, scegli **Configura strumenti** per utilizzare strumenti con il prompt.

     1. Se il modello scelto supporta il [caching dei prompt](prompt-caching.md), scegli una delle seguenti opzioni (la disponibilità varia in base al modello):
        + **Nessuna**: non viene eseguita alcun caching dei prompt.
        + **Strumenti**: solo gli strumenti presenti nel prompt vengono memorizzati nella cache.
        + **Strumenti, istruzioni di sistema**: gli strumenti e le istruzioni di sistema presenti nel prompt vengono memorizzati nella cache.
        + **Strumenti, istruzioni di sistema e messaggi**: gli strumenti, le istruzioni di sistema e i messaggi (di utente e assistente) presenti nel prompt vengono memorizzati nella cache.
   + Per confrontare varianti diverse del prompt, scegli **Confronta varianti**. Nella pagina di confronto puoi eseguire queste operazioni:
     + Per aggiungere una variante, scegli il segno più. È possibile aggiungere fino a un massimo di tre varianti.
     + Dopo aver specificato i dettagli di una variante, puoi specificare qualsiasi valore in **Variabili di test** e scegliere **Esegui** per testare l’output della variante.
     + Per eliminare una variante, scegli i tre puntini e seleziona **Rimuovi dal confronto**.
     + Per sostituire la bozza di lavoro e lasciare la modalità di confronto, scegli **Salva come bozza**. Tutte le altre varianti vengono eliminate.
     + Per uscire dalla modalità di confronto, scegli **Esci dalla modalità di confronto**.

1. Al termine della configurazione, sono disponibili le opzioni seguenti:
   + Per salvare il prompt, scegli **Salva bozza**. Per ulteriori informazioni sulla versione bozza, consulta [Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt](prompt-management-deploy.md).
   + Per eliminare il prompt, scegli **Elimina**. Per ulteriori informazioni, consulta [Eliminazione di un prompt in Gestione prompt](prompt-management-delete.md).
   + Per creare una versione del prompt, scegli **Crea** versione. Per ulteriori informazioni sul controllo delle versioni del prompt, consulta [Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt](prompt-management-deploy.md).

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

Per creare un prompt, invia una richiesta [CreatePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreatePrompt.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).

I seguenti campi sono obbligatori:


****  

| Campo | Breve descrizione | 
| --- | --- | 
| name | Nome del prompt. | 
| variants | Elenco di diverse configurazioni per il prompt (vedi di seguito). | 
| defaultVariant | Nome della variante predefinita. | 

Ogni variante nell’elenco `variants` è un oggetto [PromptVariant](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptVariant.html) della seguente struttura generale:

```
{
        "name": "string",
        # modelId or genAiResource (see below)
        "templateType": "TEXT",
        "templateConfiguration": # see below,
        "inferenceConfiguration": {
            "text": {
                "maxTokens": int,
                "stopSequences": ["string", ...],
                "temperature": float,
                "topP": float
            }
        },
        "additionalModelRequestFields": {
            "key": "value",
            ...
        },
        "metadata": [
            {
                "key": "string",
                "value": "string"
            },
            ...
        ]
}
```

Compila i campi come segue:
+ name: immetti un nome per la variante.
+ Includi uno di questi campi, a seconda della risorsa di invocazione del modello da utilizzare:
  + modelId: per specificare un [modello di fondazione](models-supported.md) o un [profilo di inferenza](cross-region-inference.md) da utilizzare con il prompt, immetti l’ARN o l’ID relativo.
  + genAiResource: per specificare un [agente](agents.md), immetti l’ID o l’ARN relativo. L’input è un oggetto `genAiResource` JSON con il seguente formato:

    ```
    {
        "genAiResource": {
        "agent": {
            "agentIdentifier": "string"
        }   
    }
    ```
**Nota**  
Se includi il campo `genAiResource`, puoi solo testare il prompt nella console. Per testare un prompt con un agente nell’API, devi inserire il testo del prompt direttamente nel campo `inputText` della 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).
+ templateType: immetti `TEXT` o `CHAT`. `CHAT` è compatibile solo con i modelli che supportano l’API [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html). Se desideri utilizzare il caching dei prompt, devi utilizzare il tipo di modello `CHAT`.
+ templateConfiguration: il valore dipende dal tipo di modello specificato:
  + Se come tipo di modello è stato specificato `TEXT`, il valore deve essere un oggetto JSON [TextPromptTemplateConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_TextPromptTemplateConfiguration.html.html).
  + Se come tipo di modello è stato specificato `CHAT`, il valore deve essere un oggetto JSON [ChatPromptTemplateConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ChatPromptTemplateConfiguration.html.html).
+ inferenceConfiguration: il campo `text` viene mappato a un oggetto [PromptModelInferenceConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptModelInferenceConfiguration.html.html). Tale campo contiene parametri di inferenza comuni a tutti i modelli. Per ulteriori informazioni sui parametri di inferenza, consulta [Influenza sulla generazione della risposta con i parametri di inferenza](inference-parameters.md).
+ additionalModelRequestFields: consente di indicare i parametri di inferenza specifici del modello con cui si esegue l’inferenza. Per ulteriori informazioni sui parametri di inferenza specifici del modello, consulta [Parametri di richiesta di inferenza e campi di risposta per i modelli di fondazione](model-parameters.md).
+ metadati: metadati da associare alla variante del prompt. È possibile aggiungere coppie chiave-valore all’array per etichettare la variante del prompt con metadati.

I seguenti campi sono facoltativi:


****  

| Campo | Caso d'uso | 
| --- | --- | 
| description | Inserire una descrizione per il prompt. | 
| clientToken | Garantire che la richiesta API venga completata solo una volta. Per ulteriori informazioni, consulta [Garanzia di idempotenza](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html). | 
| tags | Associare tag al flusso. Per ulteriori informazioni, consulta [Assegnazione di tag alle risorse Amazon Bedrock](tagging.md). | 

La risposta crea una versione `DRAFT` e restituisce un ID e un ARN che è possibile utilizzare come identificatore di prompt per altre richieste API relative al prompt.

------

# Visualizzare informazioni sui prompt utilizzando Gestione prompt
<a name="prompt-management-view"></a>

Per scoprire come visualizzare le informazioni sui prompt utilizzando Gestione prompt, scegliere la scheda relativa al metodo preferito, poi seguire la procedura:

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

**Come visualizzare informazioni su un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. La pagina **Dettagli del prompt** include le seguenti sezioni:
   + **Panoramica**: contiene informazioni generali sul prompt e su quando è stato creato e aggiornato l’ultima volta.
   + **Bozza prompt**: contiene il messaggio di prompt e le configurazioni per l’ultima bozza salvata del prompt.
   + **Versioni del prompt**: un elenco di tutte le versioni del prompt che sono state create. Per ulteriori informazioni sulle versioni del prompt, consulta [Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt](prompt-management-deploy.md).

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

Per ottenere informazioni su un prompt, invia una richiesta [GetPrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetPrompt.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) e specifica l’ARN o l’ID del prompt come `promptIdentifier`. Per ottenere informazioni su una versione specifica del prompt, specifica `DRAFT` o il numero di versione nel campo `promptVersion`.

Per elencare le informazioni sui tuoi prompt, invia una richiesta [ListPrompts](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListPrompts.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). È inoltre possibile specificare i parametri opzionali seguenti:


****  

| Campo | Breve descrizione | 
| --- | --- | 
| maxResults | Il numero massimo di risultati da restituire nella risposta. | 
| nextToken | Se i risultati sono superiori al numero specificato nel campo maxResults, la risposta restituisce un valore nextToken. Per visualizzare il batch di risultati successivo, invia il valore nextToken in un’altra richiesta. | 

------

# Modifica di un prompt utilizzando Gestione prompt
<a name="prompt-management-modify"></a>

Per informazioni su come modificare i prompt in Gestione prompt, seleziona la scheda corrispondente al metodo che preferisci, quindi segui la procedura:

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

**Modifica di un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Per modificare il **nome** o la **descrizione** del prompt, seleziona **Modifica** nella sezione **Panoramica**. Dopo aver apportato le modifiche, seleziona **Salva**.

1. Per modificare il prompt e le relative configurazioni, seleziona **Modifica nel generatore di prompt**.

1. Per maggiori informazioni sulle parti del prompt che puoi modificare, consulta [Creare un prompt utilizzando Gestione prompt](prompt-management-create.md).

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

Per modificare un prompt, invia una richiesta [UpdatePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdatePrompt.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 sia i campi da mantenere che quelli da modificare.

------

# Test di un prompt utilizzando Gestione prompt
<a name="prompt-management-test"></a>

Per imparare a testare un prompt creato in Gestione prompt, seleziona la scheda relativa al metodo preferito, quindi segui le fasi indicate:

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

**Come testare un prompt in Gestione prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Scegli **Modifica nel generatore di prompt** nella sezione **Bozza prompt** o scegli una versione del prompt nella sezione **Versioni**.

1. (Facoltativo) Per fornire valori per le variabili nel prompt, è necessario innanzitutto selezionare un modello nel riquadro **Configurazioni**. Quindi, immetti un **Valore di test** per ogni variabile nel riquadro **Variabili di test**.
**Nota**  
Questi valori sono temporanei e non vengono salvati nel prompt se si salva il prompt.

1. Per eseguire il test del prompt, scegli **Esegui** nel riquadro **Finestra di test**.

1. Modifica il prompt o le relative configurazioni, quindi esegui nuovamente il prompt se necessario. Se sei soddisfatto del prompt, puoi scegliere **Crea versione** per creare uno snapshot del prompt da utilizzare in produzione. Per ulteriori informazioni, consulta [Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt](prompt-management-deploy.md).

Puoi anche eseguire il test del prompt nei modi seguenti:
+ Per eseguire il test del prompt in un flusso, includi un nodo prompt nel flusso. Per ulteriori informazioni, consulta [Creare e progettare un flusso in Amazon Bedrock](flows-create.md) e [Tipi di nodo per il flusso](flows-nodes.md).
+ Se non hai configurato il prompt con un agente, puoi comunque eseguirne il test importandolo durante il test di un agente. Per ulteriori informazioni, consulta [Test e risoluzione dei problemi relativi al comportamento dell’agente](agents-test.md).

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

Puoi eseguire il test del prompt nei modi seguenti:
+ Per eseguire l’inferenza sul prompt, invia una richiesta [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html) [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html), [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) o [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html) con un [endpoint di runtime Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#br-rt) e specifica l’ARN del prompt nel parametro `modelId`.
**Nota**  
Le seguenti restrizioni si applicano quando utilizzi un prompt di Gestione prompt con `Converse` o `ConverseStream`:  
Non puoi includere i campi `additionalModelRequestFields`, `inferenceConfig`, `system` o `toolConfig`.
Se includi il campo `messages`, i messaggi vengono aggiunti dopo i messaggi definiti nel prompt.
Se includi il campo `guardrailConfig`, il guardrail viene applicato all’intero prompt. Se includi blocchi `guardContent` nel campo [ContentBlock](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ContentBlock.html), il guardrail verrà applicato solo a tali blocchi.
+ Per eseguire il test del prompt in un flusso, crea o modifica un flusso inviando una richiesta [CreateFlow](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateFlow.html) o [UpdateFlow](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateFlow.html) con un [endpoint in fase di build Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). Includi un SDK per JavaScript in Node.js del tipo `PromptNode` e includi l’ARN del prompt nel campo `promptArn`. Quindi, invia una richiesta [InvokeFlow](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeFlow.html) con un [endpoint di runtime Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt). Per ulteriori informazioni, consulta [Creare e progettare un flusso in Amazon Bedrock](flows-create.md) e [Tipi di nodo per il flusso](flows-nodes.md).
+ Per eseguire il test del prompt con un agente, utilizza la console Amazon Bedrock (vedi la scheda **Console**) o immetti il testo del prompt nel campo `inputText` di 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).

------

# Ottimizzare un prompt
<a name="prompt-management-optimize"></a>

Amazon Bedrock offre uno strumento per ottimizzare i prompt. L’ottimizzazione riscrive i prompt per ottenere risultati di inferenza più adatti al tuo specifico caso d’uso. È possibile scegliere il modello per cui ottimizzare il prompt e quindi generare un prompt modificato. 

Dopo aver inviato un prompt per l’ottimizzazione, Amazon Bedrock analizza i componenti del prompt. Se l’analisi ha esito positivo, riscrive il prompt. È quindi possibile copiare e utilizzare il testo del prompt ottimizzato. 

**Nota**  
Per ottenere risultati ottimali, si consiglia di ottimizzare i prompt in inglese.

**Topics**
+ [Regioni e modelli supportati per l’ottimizzazione dei prompt](#prompt-management-optimize-supported)
+ [Inviare un prompt per l’ottimizzazione](#prompt-management-optimize-submit)

## Regioni e modelli supportati per l’ottimizzazione dei prompt
<a name="prompt-management-optimize-supported"></a>

La tabella seguente mostra il supporto del modello per l'ottimizzazione dei prompt:


| Provider | Modello | ID modello | Supporto per modelli a regione singola | 
| --- | --- | --- | --- | 
| Amazon | Nova Lite | amazon. nova-lite-v1:0 |  ap-southeast-2 eu-west-2 us-east-1  | 
| Amazon | Nova Micro | amazzone. nova-micro-v1:0 |  ap-southeast-2 eu-west-2 us-east-1  | 
| Amazon | Nova Premier | amazzone. nova-premier-v1:0 |  | 
| Amazon | Nova Pro | amazzone. nova-pro-v1:0 |  ap-southeast-2 eu-west-2 us-east-1  | 
| Anthropic | Claude 3 Haiku | anthropic.claude-3-haiku-20240307-v1:0 |  ap-south-1 ap-southeast-2 ca-central-1 eu-central-1 eu-west-1 eu-west-2 eu-west-3 sa-east-1 us-east-1 us-west-2  | 
| Anthropic | Claude 3 Opus | anthropic.claude-3-opus-20240229-v 1:0 |  | 
| Anthropic | Claude 3 Sonnet | anthropic.claude-3-sonnet-20240229-v 1:0 |  ap-south-1 ap-southeast-2 ca-central-1 eu-central-1 eu-west-1 eu-west-2 eu-west-3 sa-east-1 us-east-1 us-west-2  | 
| Anthropic | Claude 3.5 Haiku | anthropic.claude-3-5-haiku-20241022-v1:0 |  us-west-2  | 
| Anthropic | Claude 3.5 Sonetto | anthropic.claude-3-5-sonnet-20240620-v1:0 |  eu-central-1 us-east-1 us-west-2  | 
| Anthropic | Claude 3.5 Sonnet v2 | anthropic.claude-3-5-sonnet-20241022-v2:0 |  ap-southeast-2 us-west-2  | 
| Anthropic | Claude 3.7 Sonnet | anthropic.claude-3-7-sonnet-20250219-v1:0 |  eu-west-2  | 
| Anthropic | Claude Opus 4 | anthropic.claude-opus-4-20250514-v1:0 |  | 
| Anthropic | Claude Sonnet 4 | anthropic.claude-sonnet-4-20250514-v1:0 |  | 
| DeepSeek | DeepSeek-R1 | deepseek.r1-v1:0 |  | 
| Meta | Llama 3 70B Instruct | meta.llama3-70 1:0 b-instruct-v |  ap-south-1 ca-central-1 eu-west-2 us-east-1 us-west-2  | 
| Meta | Llama 3.1 70B Instruct | meta.llama3-1-70 1:0 b-instruct-v |  us-west-2  | 
| Meta | Llama 3.2 11B Instruct | meta.llama3-2-11 1:0 b-instruct-v |  | 
| Meta | Llama 3.3 70B Instruct | meta.llama3-3-70 1:0 b-instruct-v |  | 
| Meta | Llama 4 Maverick 17B Instruct | b-instruct-vmeta.llama4-maverick-17:0 |  | 
| Meta | Llama 4 Scout 17B Instruct | b-instruct-vmeta.llama4-scout-17:0 |  | 
| Mistral AI | Mistral Large (24.02) | mistral.mistral-large-2402-v1:0 |  ap-south-1 ap-southeast-2 ca-central-1 eu-west-1 eu-west-2 eu-west-3 sa-east-1 us-east-1 us-west-2  | 
| Mistral AI | Mistral Large (24.07) | mistral.mistral-large-2407-v1:0 |  us-west-2  | 

## Inviare un prompt per l’ottimizzazione
<a name="prompt-management-optimize-submit"></a>

Per scoprire come ottimizzare un prompt, scegli la scheda relativa al tuo metodo preferito, quindi segui le fasi:

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

È possibile ottimizzare un prompt utilizzando un playground o la gestione dei prompt nella Console di gestione AWS. È necessario selezionare un modello prima di ottimizzare un prompt. Il prompt viene ottimizzato per il modello scelto.

**Come ottimizzare un prompt in un playground**

1. Per scoprire come scrivere un prompt in un playground di Amazon Bedrock, segui la procedura in [Generare risposte nella console utilizzando i playground](playgrounds.md).

1. Dopo aver scritto un prompt e selezionato un modello, scegli l’icona della bacchetta (![\[Sparkle icon representing cleaning or refreshing functionality.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/wand.png)). Viene visualizzata la finestra di dialogo **Ottimizza il prompt** e Amazon Bedrock inizia a ottimizzare il prompt.

1. Quando Amazon Bedrock termina l’analisi e l’ottimizzazione del prompt, è possibile confrontare il prompt originale in modalità affiancata con il prompt ottimizzato nella finestra di dialogo.

1. Per sostituire il prompt con quello ottimizzato nel playground, scegli **Usa un prompt ottimizzato**. Per mantenere il prompt originale, scegli **Annulla**.

1. Per inviare il prompt e generare una risposta, scegli **Esegui**.

**Come ottimizzare un prompt in Gestione prompt**

1. Per scoprire come scrivere un prompt utilizzando Gestione prompt, segui la procedura in [Creare un prompt utilizzando Gestione prompt](prompt-management-create.md).

1. Dopo aver scritto un prompt e selezionato un modello, scegli **(![\[Sparkle icon representing cleaning or refreshing functionality.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/wand.png)) Ottimizza** nella parte superiore della casella **Prompt**.

1. Quando Amazon Bedrock termina l’analisi e l’ottimizzazione del prompt, il prompt ottimizzato viene visualizzato come variante affiancata al prompt originale.

1. Per utilizzare il prompt ottimizzato anziché quello originale, seleziona **Sostituisci il prompt originale**. Per mantenere il prompt originale, scegli **Esci dal confronto** e salva il prompt originale.
**Nota**  
Se hai 3 prompt nella vista di confronto e cerchi di ottimizzare un altro prompt, viene chiesto di sovrascrivere e sostituire il prompt originale o una delle varianti.

1. Per inviare il prompt e generare una risposta, scegli **Esegui**.

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

Per ottimizzare un prompt, invia una [OptimizePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_OptimizePrompt.html)richiesta con un endpoint di [runtime Agents for Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt). Fornisci il prompt per l’ottimizzazione nell’oggetto `input` e specifica il modello per l’ottimizzazione nel campo `targetModelId`.

Il flusso di risposta restituisce i seguenti eventi:

1. [analyzePromptEvent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_AnalyzePromptEvent.html)— Viene visualizzato al termine dell'analisi del prompt. Contiene un messaggio che descrive l’analisi del prompt.

1. [optimizedPromptEvent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_OptimizedPromptEvent.html)— Viene visualizzato quando il prompt ha finito di essere riscritto. Contiene il prompt ottimizzato.

Esegui il seguente esempio di codice per ottimizzare un prompt:

```
import boto3

# Set values here
TARGET_MODEL_ID = "anthropic.claude-3-sonnet-20240229-v1:0" # Model to optimize for. For model IDs, see https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html
PROMPT = "Please summarize this text: " # Prompt to optimize

def get_input(prompt):
    return {
        "textPrompt": {
            "text": prompt
        }
    }
 
def handle_response_stream(response):
    try:
        event_stream = response['optimizedPrompt']
        for event in event_stream:
            if 'optimizedPromptEvent' in event:
                print("========================== OPTIMIZED PROMPT ======================\n")
                optimized_prompt = event['optimizedPromptEvent']
                print(optimized_prompt)
            else:
                print("========================= ANALYZE PROMPT =======================\n")
                analyze_prompt = event['analyzePromptEvent']
                print(analyze_prompt)
    except Exception as e:
        raise e
 
 
if __name__ == '__main__':
    client = boto3.client('bedrock-agent-runtime')
    try:
        response = client.optimize_prompt(
            input=get_input(PROMPT),
            targetModelId=TARGET_MODEL_ID
        )
        print("Request ID:", response.get("ResponseMetadata").get("RequestId"))
        print("========================== INPUT PROMPT ======================\n")
        print(PROMPT)
        handle_response_stream(response)
    except Exception as e:
        raise e
```

------

# Implementazione di un prompt nell’applicazione utilizzando le versioni in Gestione prompt
<a name="prompt-management-deploy"></a>

Quando salvi il prompt, ne crei una *bozza*. È possibile continuare a lavorare sulla bozza modificando il prompt e le relative configurazioni, quindi salvando le modifiche.

Quando tutto è pronto per implementare un prompt in produzione, creane una versione da utilizzare nell’applicazione. Per versione si intende una snapshot del prompt che viene creata in un determinato momento mentre si sta lavorando sulla bozza del prompt stesso. Quando hai ottenuto un set di configurazioni soddisfacente, puoi creare una versione del prompt. Le versioni consentono di passare con facilità da una configurazione all’altra del prompt e di aggiornare l’applicazione con la versione più appropriata al caso d’uso.

**Topics**
+ [Creazione di una versione di un prompt in Gestione prompt](prompt-management-version-create.md)
+ [Visualizzazione delle informazioni sulle versioni di un prompt in Gestione prompt](prompt-management-version-view.md)
+ [Confronto delle versioni di un prompt in Gestione prompt](prompt-management-version-compare.md)
+ [Eliminazione di una versione di un prompt in Gestione prompt](prompt-management-version-delete.md)

# Creazione di una versione di un prompt in Gestione prompt
<a name="prompt-management-version-create"></a>

Per scoprire come creare una versione del prompt, seleziona la scheda corrispondente al metodo che preferisci, quindi segui la procedura:

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

Se utilizzi il generatore di prompt, puoi creare una versione del prompt selezionando **Crea versione**. In caso contrario, eseguire le seguenti operazioni:

**Creazione di una versione del prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Nella sezione **Versioni del prompt**, seleziona **Crea versione** per acquisire una snapshot della bozza.

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

Per creare una versione del prompt, invia una richiesta [CreatePromptVersion](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreatePromptVersion.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) e specifica l’ARN o l’ID del prompt come `promptIdentifier`.

La risposta restituisce un ID e un ARN per la versione. Le versioni vengono create in modo incrementale, a partire da 1.

------

# Visualizzazione delle informazioni sulle versioni di un prompt in Gestione prompt
<a name="prompt-management-version-view"></a>

Per scoprire come visualizzare le informazioni su una versione del prompt, seleziona la scheda corrispondente al metodo che preferisci, quindi segui la procedura:

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

**Come visualizzare informazioni sulla versione di un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Nella sezione **Versioni del prompt**, seleziona una versione.

1. Nella pagina **Dettagli della versione**, puoi visualizzare le informazioni sulla versione, il messaggio del prompt e le relative configurazioni. Per ulteriori informazioni sul test di una versione del prompt, consulta [Test di un prompt utilizzando Gestione prompt](prompt-management-test.md).

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

Per ottenere informazioni sulla versione di un prompt, invia una richiesta [GetPrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetPrompt.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) e specifica l’ARN o l’ID del prompt come `promptIdentifier`. Nel campo `promptVersion`, specifica il numero di versione.

------

# Confronto delle versioni di un prompt in Gestione prompt
<a name="prompt-management-version-compare"></a>

La console Amazon Bedrock offre uno strumento che consente di confrontare le versioni di un prompt creato in Gestione prompt. Lo strumento evidenzia i campi presenti in una versione che non esistono nell’altra.

**Come confrontare le versioni di un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Nella sezione **Versioni**, seleziona le caselle di controllo accanto ai due prompt da confrontare.

1. Scegli **Confronta**.

1. Gli oggetti JSON che definiscono ogni versione del prompt vengono visualizzati fianco a fianco. Le differenze tra le versioni sono mostrate nel modo seguente:
   + I campi che sono presenti in una versione, ma che non esistono nell’altra, sono contrassegnati da un simbolo più (\$1) ed evidenziati in verde.
   + I campi che non sono presenti in una versione, ma che esistono nell’altra, sono contrassegnati da un simbolo meno (-) ed evidenziati in rosso.

1. Per confrontare le risposte del modello di output per le diverse versioni, compila le **Variabili di test** e scegli **Esegui prompt**.

# Eliminazione di una versione di un prompt in Gestione prompt
<a name="prompt-management-version-delete"></a>

Per scoprire come eliminare una versione del prompt, seleziona la scheda corrispondente al metodo che preferisci, quindi segui la procedura:

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

**Come eliminare una versione del prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra. Quindi, scegli un prompt nella sezione **Prompt**.

1. Nella sezione **Versioni del prompt**, seleziona una versione e fai clic su **Elimina**.

1. Nella pagina **Dettagli della versione**, puoi visualizzare le informazioni sulla versione, il messaggio del prompt e le relative configurazioni. Per ulteriori informazioni sul test di una versione del prompt, consulta [Test di un prompt utilizzando Gestione prompt](prompt-management-test.md).

1. Controlla l’avviso visualizzato, digita **confirm**, quindi seleziona **Elimina**.

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

Per eliminare una versione del prompt, invia una richiesta [DeletePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DeletePrompt.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) e specifica l’ARN o l’ID del prompt come `promptIdentifier`. Nel campo `promptVersion`, specifica il numero di versione da eliminare.

------

# Eliminazione di un prompt in Gestione prompt
<a name="prompt-management-delete"></a>

Se non hai più bisogno di un prompt, puoi eliminarlo. I prompt eliminati vengono mantenuti nei server AWS per un massimo di quattordici giorni. Per informazioni su come eliminare un prompt in Gestione prompt, seleziona la scheda relativa al metodo che preferisci, quindi segui la procedura:

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

Se ti trovi nella pagina **Dettagli del prompt** o nel generatore di prompt, scegli **Elimina** per eliminare il prompt.

**Nota**  
Se elimini un prompt, verranno eliminate anche tutte le sue versioni. Tutte le risorse che utilizzano il prompt potrebbero presentare errori di runtime. Ricorda di dissociare il prompt da tutte le risorse che lo utilizzano.

**Come eliminare un prompt**

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 **Gestione prompt** nel riquadro di navigazione a sinistra.

1. Seleziona un prompt e scegli **Elimina**.

1. Controlla l’avviso visualizzato, digita **conferma**, quindi scegli **Elimina**.

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

Per eliminare un prompt, invia una richiesta [DeletePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DeletePrompt.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) e specifica l’ARN o l’ID del prompt come `promptIdentifier`. Per eliminare una versione specifica del prompt, specifica il numero di versione nel campo `promptVersion`.

------

# Eseguire esempi di codice di Gestione dei prompt
<a name="prompt-management-code-ex"></a>

Per provare alcuni esempi di codice relativi a Gestione dei prompt, scegli la scheda per il metodo che preferisci e segui i passaggi: i seguenti esempi di codice presuppongono che tu abbia configurato le credenziali per utilizzare l’API AWS. Se non lo hai già fatto, consulta [Iniziare a utilizzare l’API](getting-started-api.md).

------
#### [ Python ]

1. Esegui il seguente frammento di codice per caricare AWS SDK per Python (Boto3), creare un client e un prompt che generi una playlist musicale utilizzando due variabili (`genre` e `number`) effettuando una chiamata [CreatePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreatePrompt.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Create a prompt in Prompt management
   import boto3
   
   # Create an Amazon Bedrock Agents client
   client = boto3.client(service_name="bedrock-agent")
   
   # Create the prompt
   response = client.create_prompt(
       name="MakePlaylist",
       description="My first prompt.",
       variants=[
           { 
               "name": "Variant1",
               "modelId": "amazon.titan-text-express-v1",
               "templateType": "TEXT",
               "inferenceConfiguration": {
                   "text": {
                       "temperature": 0.8
                   }
               },
               "templateConfiguration": { 
                   "text": {
                       "text": "Make me a {{genre}} playlist consisting of the following number of songs: {{number}}."
                   }
               }
         }
       ]
   )
                           
   prompt_id = response.get("id")
   ```

1. Esegui il seguente frammento di codice per visualizzare il prompt che hai appena creato (insieme a qualsiasi altro prompt nell’account) per effettuare una chiamata [ListPrompts](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListPrompts.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # List prompts that you've created
   client.list_prompts()
   ```

1. Dovresti vedere l’ID del prompt che hai creato nel campo `id` nell’oggetto nel campo `promptSummaries`. Esegui il seguente frammento di codice per mostrare le informazioni relative al prompt creato effettuando una chiamata [GetPrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetPrompt.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Get information about the prompt that you created
   client.get_prompt(promptIdentifier=prompt_id)
   ```

1. Crea una versione del prompt e ottieni il relativo ID eseguendo il seguente frammento di codice per effettuare una chiamata [CreatePromptVersion](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreatePromptVersion.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Create a version of the prompt that you created
   response = client.create_prompt_version(promptIdentifier=prompt_id)
                           
   prompt_version = response.get("version")
   prompt_version_arn = response.get("arn")
   ```

1. Visualizza le informazioni sulla versione del prompt che hai appena creato, insieme alle informazioni sulla versione bozza, eseguendo il seguente frammento di codice per effettuare una chiamata [ListPrompts](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListPrompts.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # List versions of the prompt that you just created
   client.list_prompts(promptIdentifier=prompt_id)
   ```

1. Visualizza le informazioni per la versione di prompt che hai appena creato eseguendo il seguente frammento di codice per effettuare una chiamata [GetPrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetPrompt.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Get information about the prompt version that you created
   client.get_prompt(
       promptIdentifier=prompt_id, 
       promptVersion=prompt_version
   )
   ```

1. Verifica il prompt aggiungendolo a un flusso seguendo i passaggi riportati in [Eseguire esempi di codice Amazon Bedrock Flows](flows-code-ex.md). Nel primo passaggio, quando crei il flusso, esegui invece il seguente frammento di codice per utilizzare il prompt che hai creato invece di definire un prompt inline nel flusso (sostituisci l’ARN della versione del prompt nel campo `promptARN` con l’ARN della versione del prompt che hai creato):

   ```
   # Import Python SDK and create client
   import boto3
   
   client = boto3.client(service_name='bedrock-agent')
   
   FLOWS_SERVICE_ROLE = "arn:aws:iam::123456789012:role/MyPromptFlowsRole" # Flows service role that you created. For more information, see https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html
   PROMPT_ARN = prompt_version_arn # ARN of the prompt that you created, retrieved programatically during creation.
   
   # Define each node
   
   # The input node validates that the content of the InvokeFlow request is a JSON object.
   input_node = {
       "type": "Input",
       "name": "FlowInput",
       "outputs": [
           {
               "name": "document",
               "type": "Object"
           }
       ]
   }
   
   # This prompt node contains a prompt that you defined in Prompt management.
   # It validates that the input is a JSON object that minimally contains the fields "genre" and "number", which it will map to the prompt variables.
   # The output must be named "modelCompletion" and be of the type "String".
   prompt_node = {
       "type": "Prompt",
       "name": "MakePlaylist",
       "configuration": {
           "prompt": {
               "sourceConfiguration": {
                   "resource": {
                       "promptArn": ""
                   }
               }
           }
       },
       "inputs": [
           {
               "name": "genre",
               "type": "String",
               "expression": "$.data.genre"
           },
           {
               "name": "number",
               "type": "Number",
               "expression": "$.data.number"
           }
       ],
       "outputs": [
           {
               "name": "modelCompletion",
               "type": "String"
           }
       ]
   }
   
   # The output node validates that the output from the last node is a string and returns it as is. The name must be "document".
   output_node = {
       "type": "Output",
       "name": "FlowOutput",
       "inputs": [
           {
               "name": "document",
               "type": "String",
               "expression": "$.data"
           }
       ]
   }
   
   # Create connections between the nodes
   connections = []
   
   #   First, create connections between the output of the flow input node and each input of the prompt node
   for input in prompt_node["inputs"]:
       connections.append(
           {
               "name": "_".join([input_node["name"], prompt_node["name"], input["name"]]),
               "source": input_node["name"],
               "target": prompt_node["name"],
               "type": "Data",
               "configuration": {
                   "data": {
                       "sourceOutput": input_node["outputs"][0]["name"],
                       "targetInput": input["name"]
                   }
               }
           }
       )
   
   # Then, create a connection between the output of the prompt node and the input of the flow output node
   connections.append(
       {
           "name": "_".join([prompt_node["name"], output_node["name"]]),
           "source": prompt_node["name"],
           "target": output_node["name"],
           "type": "Data",
           "configuration": {
               "data": {
                   "sourceOutput": prompt_node["outputs"][0]["name"],
                   "targetInput": output_node["inputs"][0]["name"]
               }
           }
       }
   )
   
   # Create the flow from the nodes and connections
   client.create_flow(
       name="FlowCreatePlaylist",
       description="A flow that creates a playlist given a genre and number of songs to include in the playlist.",
       executionRoleArn=FLOWS_SERVICE_ROLE,
       definition={
           "nodes": [input_node, prompt_node, output_node],
           "connections": connections
       }
   )
   ```

1. Elimina la versione del prompt che hai appena creato eseguendo il seguente frammento di codice per effettuare una chiamata [DeletePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DeletePrompt.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Delete the prompt version that you created
   client.delete_prompt(
       promptIdentifier=prompt_id, 
       promptVersion=prompt_version
   )
   ```

1. Elimina completamente il prompt appena creato eseguendo il seguente frammento di codice per effettuare una chiamata [DeletePrompt](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DeletePrompt.html) a un [endpoint in fase di compilazione di Agent per Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt):

   ```
   # Delete the prompt that you created
   client.delete_prompt(
       promptIdentifier=prompt_id
   )
   ```

------