

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

# Aggiungere un contesto alla chat di Amazon Q Developer nell’IDE
<a name="ide-chat-context"></a>

Quando chatti con Amazon Q nell’ambiente di sviluppo integrato (IDE), puoi fornire ad Amazon Q un *contesto* aggiuntivo, ad esempio file e cartelle, che Amazon Q può utilizzare per personalizzare e migliorare le sue risposte.

Sono disponibili due modi per fornire contesto ad Amazon Q:
+ In **modo esplicito**: per fornire un contesto in modo esplicito, inserisci **@** nella finestra della chat. **@** apre un pop-up di selezione del contesto da cui è possibile selezionare gli elementi da includere come contesto. In alternativa, puoi digitare **@** e iniziare a digitare il nome del file, della cartella o di un altro tipo di contesto per completarlo automaticamente. Per ulteriori informazioni, consulta [Tipi di contesto esplicito](#context-explicit).
+ **Automaticamente**: per fornire automaticamente il contesto, configura il contesto separatamente, al di fuori della chat. Amazon Q fa riferimento al contesto automaticamente ogni qualvolta uno sviluppatore che lavora al progetto digita una domanda nella finestra di chat. Per ulteriori informazioni, consulta [Tipi di contesto automatico](#context-automatic).

Dopo che Amazon Q ha generato una risposta, mostra i file utilizzati come contesto nell’elenco a discesa **Contesto**, che appare immediatamente sopra l’inizio della risposta.

## Tipi di contesto esplicito
<a name="context-explicit"></a>

Quando digiti **@** nella chat, puoi selezionare uno dei seguenti tipi di contesto:
+ **@workspace**: Amazon Q utilizza lo spazio di lavoro del progetto come contesto per le sue risposte. L’opzione **@workspace** richiede una configurazione. Per ulteriori informazioni, consulta [Aggiungere un contesto dello spazio di lavoro alla chat di Amazon Q Developer nell’IDE](workspace-context.md).
+ **Cartelle**: Amazon Q mostra un elenco di cartelle nel progetto corrente e utilizza la cartella selezionata come contesto per le sue risposte.
+ **File**: Amazon Q mostra un elenco di file nel progetto corrente e utilizza il file selezionato come contesto per le sue risposte.
+ **Codice**: Amazon Q mostra un elenco di classi, funzioni, variabili globali nel progetto corrente e utilizza la selezione come contesto per le sue risposte.
+ **Immagini**: Amazon Q consente di aggiungere immagini come contesto per i prompt, utili per scenari come la generazione di codice da modelli di interfaccia utente o diagrammi di sequenza. Le immagini devono essere in formato JPEG, PNG, GIF o WebP, con una dimensione massima di 3,75 MB e dimensioni non superiori a 8.000 x 8.000 pixel. È possibile includere fino a 20 immagini in un singolo messaggio, comprese tutte le immagini aggiunte al contesto.
+ **Prompt**: Amazon Q mostra un elenco di prompt che hai salvato e utilizza il prompt selezionato come contesto per le sue risposte. L’opzione **Prompt** richiede alcune configurazioni. Per ulteriori informazioni, consulta [Salvataggio dei prompt in una libreria per utilizzarli con la chat di Amazon Q Developer](context-prompt-library.md).

## Tipi di contesto automatico
<a name="context-automatic"></a>

I seguenti tipi di contesti verranno utilizzati automaticamente da Amazon Q, se configurati:
+ **Regole del progetto**: Amazon Q utilizzerà automaticamente un set di regole di progetto definite come contesto. Per ulteriori informazioni, consulta [Creazione di regole di progetto per l’utilizzo con la chat di Amazon Q Developer](context-project-rules.md).
+ **Personalizzazioni**: Amazon Q utilizzerà automaticamente un repository di codice sorgente come contesto.

# Aggiungere un contesto dello spazio di lavoro alla chat di Amazon Q Developer nell’IDE
<a name="workspace-context"></a>

Quando chatti con Amazon Q nell’ambiente di sviluppo integrato (IDE), puoi aggiungere **@workspace** alla tua domanda per includere automaticamente i blocchi più pertinenti del codice allo spazio di lavoro come contesto. Amazon Q Developer determina la pertinenza sulla base di un indice che viene aggiornato periodicamente.

Con il contesto dello spazio di lavoro, Amazon Q offre funzionalità avanzate, tra cui l’individuazione dei file, la comprensione del modo in cui il codice viene utilizzato tra i file e la generazione di codice che sfrutta più file, inclusi i file non aperti. 

**Topics**
+ [Configurazione](#setup)
+ [Fai domande con il contesto dello spazio di lavoro](#ask-questions-workspace-context)

## Configurazione
<a name="setup"></a>

Prima di continuare, assicurati di disporre della versione più recente del tuo IDE installata. Puoi completare le seguenti fasi per la configurazione. 

### Abilita l’indicizzazione
<a name="setup-enable-indexing"></a>

Per utilizzare lo spazio di lavoro come contesto, Amazon Q crea un indice locale del repository dello spazio di lavoro, inclusi file di codice, file di configurazione e struttura del progetto. Durante l’indicizzazione, i file non essenziali come i file binari o quelli specificati nei file `.gitignore` vengono filtrati. 

L’indicizzazione di un nuovo spazio di lavoro può richiedere dai 5 ai 20 minuti. Durante questo periodo, puoi aspettarti un utilizzo elevato della CPU nel tuo IDE. Dopo l’indicizzazione iniziale, l’indice viene aggiornato in modo incrementale quando si apportano delle modifiche allo spazio di lavoro.

La prima volta che aggiungi contesto dello spazio di lavoro, devi abilitare l’indicizzazione nell’IDE. Completa le seguenti fasi per abilitare l’indicizzazione: 

1. Aggiungi **@workspace** alla tua domanda nel pannello di chat di Amazon Q.

1. Amazon Q richiede di abilitare l’indicizzazione. Scegli **Impostazioni** per essere reindirizzato alle impostazioni di Amazon Q nel tuo IDE. 

   Se non ti viene richiesto, puoi accedere alle impostazioni scegliendo **Amazon Q** nella parte inferiore del tuo IDE. Quindi, scegli **Apri impostazioni** dalla barra delle applicazioni di Amazon Q che si apre.

1. Seleziona la casella accanto a **Indice spazio di lavoro**.

### Configura l’indicizzazione (Facoltativo)
<a name="setup-configure-indexing"></a>

Non è necessaria alcuna configurazione per il processo di indicizzazione, tuttavia puoi scegliere di specificare il numero di thread ad essa dedicati. Se aumenti il numero di thread utilizzati, l’indicizzazione verrà completata più rapidamente e utilizzerà una maggiore quantità di CPU. Per aggiornare la configurazione di indicizzazione, specifica il numero di thread per l’impostazione **Thread worker di indicizzazione dello spazio di lavoro.** È inoltre possibile impostare la dimensione massima dei file che possono essere indicizzati per il contesto dello spazio di lavoro e abilitare l’uso dell’unità di elaborazione grafica (GPU) per l’indicizzazione.

## Fai domande con il contesto dello spazio di lavoro
<a name="ask-questions-workspace-context"></a>

Per aggiungere lo spazio di lavoro come contesto alla conversazione con Amazon Q, apri lo spazio di lavoro su cui vuoi desideri porre domande, quindi aggiungi **@workspace** alla tua domanda nel pannello di chat. Devi aggiungere @workspace a qualsiasi domanda a cui desideri aggiungere il contesto dello spazio di lavoro.

Se desideri iniziare a chattare su uno spazio di lavoro diverso, aprilo e quindi apri una nuova scheda di chat. Includi **@workspace** nella tua domanda per aggiungere il nuovo spazio di lavoro come contesto. 

Puoi chiedere ad Amazon Q informazioni su qualsiasi file presente nello spazio di lavoro, compresi i file non aperti. Amazon Q può spiegare i file, localizzare il codice e generare codice tra file, oltre alle funzionalità di codifica conversazionale esistenti.

Di seguito sono riportati alcuni esempi di domande da porre ad Amazon Q che sfruttano il contesto dello spazio di lavoro nella chat: 
+ @workspace dov’è il codice che gestisce l’autorizzazione?
+ @workspace quali sono le classi chiave con logica applicativa in questo progetto?
+ @workspace spiega main.py 
+ @workspace aggiungi l’autenticazione a questo progetto
+ @workspace quali librerie o pacchetti di terze parti vengono utilizzati in questo progetto e per quale scopo?
+ @workspace aggiungi test unitari per la funzione *<function name>*

# Salvataggio dei prompt in una libreria per utilizzarli con la chat di Amazon Q Developer
<a name="context-prompt-library"></a>

Puoi creare una libreria di prompt comuni da utilizzare quando chatti con Amazon Q nell’IDE. Memorizzando questi prompt nella tua libreria, puoi inserirli facilmente nella chat senza dover digitare nuovamente il prompt ogni volta. Puoi utilizzare i prompt salvati in più conversazioni e progetti.

I prompt vengono salvati nella cartella `~/.aws/amazonq/prompts`.

**Per salvare un prompt in una libreria di prompt**

1. Nel tuo IDE, apri una finestra di chat di Amazon Q.

1. Digita **@** e seleziona **Prompt**.

1. Scegli **Crea un nuovo prompt**. (Potrebbe essere necessario scorrere verso il basso per trovarlo.)

1. In **Nome prompt**, immetti un nome per il prompt, ad esempio **Create\$1sequence\$1diagram** e premi Invio. Tieni presente che i nomi dei prompt non possono includere spazi.

   Amazon Q crea un file di prompt chiamato `Create_sequence_diagram.md` nella cartella `~/.aws/amazonq/prompts` e apre il file nel tuo IDE.

1. Nel file del prompt, aggiungi un prompt dettagliato. Esempio:

   `Create a sequence diagram using Mermaid that shows the sequence of calls between resources. Ignore supporting resources like IAM policies and security group rules.`

1. Salva il file del prompt.

**Per utilizzare un prompt salvato**

1. Nel tuo IDE, apri una finestra di chat di Amazon Q.

1. Digita **@** e seleziona **Prompt**.

1. **Scegliete il prompt salvato, ad esempio Create\$1sequence\$1diagram.**

1. (Facoltativo) Nella finestra di input della chat, aggiungi i dettagli in base alle esigenze. È possibile digitare altro testo e aggiungere altri tipi di contesto. Un prompt di esempio potrebbe essere simile a questo…

   `@Create_sequence_diagram using the files in the @lib folder`

1. Invia il prompt e attendi che Amazon Q generi una risposta.

# Associazione di elementi del contesto
<a name="context-pinning"></a>

**Nota**  
Attualmente, l’associazione di contesto è disponibile solo nell’IDE di VS Code.

L’associazione del contesto permette di specificare gli elementi contestuali aggiunti a tutti i messaggi all’interno della sessione di chat. Quando esegui l’associazione di un elemento contestuale, quest’ultimo viene automaticamente incluso in ogni messaggio della conversazione corrente, eliminando la necessità di digitare ripetutamente comandi come **@workspace**, **@file** o **@folder**.

Gli elementi associati possono provenire da due fonti: puoi associare manualmente gli elementi a cui fai spesso riferimento oppure Amazon Q può aggiungere automaticamente un contesto (ad esempio il file attivo corrente) per migliorare la qualità della risposta. Gli elementi contestuali associati vengono visualizzati nella parte superiore della casella di immissione del testo del pannello di chat e puoi rimuovere qualsiasi contesto che non desideri includere.

Per contribuire a mantenere chiari i confini del contesto, gli elementi associati si applicano solo alla scheda di chat corrente. Quando apri una nuova scheda, inizierai da capo solo con il contesto associato predefinito, ad esempio il file attivo.

## Utilizzo del contesto associato
<a name="w2aac11c16c25c19b7"></a>

**Per aggiungere elementi del contesto associati**

1. Nel tuo IDE, apri il pannello di chat di Amazon Q.

1. Dopo aver utilizzato un comando contestuale come **@workspace**, **@file**, **@folder** o **@prompt** in una chat, fai clic sul contesto desiderato per associarlo.

   In alternativa, puoi fare clic sul pulsante “@Associa contesto” per visualizzare le opzioni disponibili e selezionare un contesto da associare.

1. Il contesto associato verrà visualizzato nell’area contestuale del pinning nella parte superiore del pannello di chat.

### Metodi per associare elementi del contesto
<a name="w2aac11c16c25c19b7b5"></a>

Sono disponibili tre modi per associare elementi del contesto:

1. Utilizzare il menu @Associa contesto:
   + Fai clic sul pulsante “@Associa contesto” nel pannello di chat.
   + Seleziona l’elemento del contesto desiderato tra le opzioni disponibili.

1. Utilizzo del menu contestuale e della scorciatoia da tastiera:
   + Digita “@” nell’input della chat per visualizzare il menu contestuale.
   + Vai all’elemento desiderato.
   + Premete \$1 Invio per bloccare Option/Alt l'elemento selezionato.

1. Pinning dal prompt di input:
   + Se hai già digitato un comando contestuale (come **@workspace**, **@file**, **@folder** o **@prompt**) nell’input, passa il mouse sull’elemento di contesto nell’input.
   + Fai clic sull’elemento per associarlo.

Dopo l’associazione, l’elemento contestuale verrà visualizzato nell’area contestuale associata nella parte superiore del campo di input del testo della chat.

**Per rimuovere gli elementi contestuali associati**
+ Per rimuovere un elemento contestuale associato, fai clic sulla X sul lato sinistro del rettangolo. Funziona sia per gli elementi di contesto associati dall’utente che per quelli aggiunti dal sistema.

# Creazione di regole di progetto per l’utilizzo con la chat di Amazon Q Developer
<a name="context-project-rules"></a>

Puoi creare una libreria di regole di progetto da utilizzare quando chatti con Amazon Q nell’IDE. Queste regole descrivono gli standard di codifica e le best practice del tuo team. Ad esempio, potresti avere una regola che afferma che tutto il codice Python deve utilizzare suggerimenti di un certo tipo o che tutto il codice Java deve utilizzare commenti Javadoc. Memorizzando queste regole nel progetto, è possibile garantire la coerenza tra gli sviluppatori, indipendentemente dal livello di esperienza.

Le regole del progetto sono definite nei file Markdown nella cartella `project-root/.amazonq/rules` del progetto.

Una volta create le regole del progetto, Amazon Q le utilizzerà automaticamente come contesto ogni volta che uno sviluppatore chatta con Amazon Q all’interno del progetto stesso e si assicurerà di rispettarle durante la generazione delle risposte. Per ulteriori informazioni sull’aggiunta di contesto alla chat, consulta [Aggiungere un contesto alla chat di Amazon Q Developer nell’IDE](ide-chat-context.md).

È possibile creare regole di progetto direttamente nel file system o tramite l’interfaccia di chat di Amazon Q.

**Per creare una regola di progetto utilizzando l’interfaccia di chat di Amazon Q**

1. Nel tuo IDE, apri il pannello di chat di Amazon Q.

1. Nella casella di input della chat, fai clic sul pulsante **Regole**.

1. Seleziona **Crea nuova regola**.

1. Nella finestra di dialogo che appare, inserisci un nome per la regola.

   Questa azione creerà un file Markdown con quel nome nella cartella `project-root/.amazonq/rules` del progetto.

1. Aggiungi il contenuto della regola nell’editor.

1. Salvare il file.

**Per creare una regola di progetto utilizzando il file system**

1. Nel tuo IDE, apri la cartella principale del progetto. 

1. Nella cartella principale del progetto, crea la seguente cartella:

   `project-root/.amazonq/rules`

   Questa cartella contiene tutte le regole del progetto.

1. In `project-root/.amazonq/rules`, crea un file di regole del progetto. Deve essere un file Markdown. Esempio:

   `cdk-rules.md`

1. Apri il file Markdown delle regole del progetto.

1. Aggiungi un prompt dettagliato al file. Esempio:

   ```
   All Amazon S3 buckets must have encryption enabled, enforce SSL, and block public access.
   All Amazon DynamoDB Streams tables must have encryption enabled. 
   All Amazon SNS topics must have encryption enabled and enforce SSL. 
   All Amazon SNS queues must enforce SSL.
   ```

1. Salvare il file.

1. (Facoltativo) Aggiungi altri file Markdown delle regole del progetto.

   Ora hai creato una o più regole di progetto. Amazon Q utilizzerà queste regole come contesto automaticamente ogni volta che uno sviluppatore chatta con Amazon Q all’interno del tuo progetto.

**Per gestire le regole nell’interfaccia di chat di Amazon Q**

1. Nel tuo IDE, apri il pannello di chat di Amazon Q.

1. Nella campo di input della chat, fai clic sul pulsante **Regole** per visualizzare tutte le regole disponibili.

1. Fai clic su una regola per attivarla o disattivarla per la sessione di chat corrente:
   + Le regole contrassegnate da un segno di spunta sono attive e verranno applicate alla conversazione.
   + Le regole senza un segno di spunta non sono attive per la sessione corrente.

# Generazione di un banco di memoria per Amazon Q chat
<a name="context-memory-bank"></a>

Amazon Q può generare automaticamente file di banca di memoria che forniscono un indice rapido della struttura del progetto, dello stack tecnologico e delle informazioni sul prodotto. Questa funzionalità analizza i file chiave del tuo progetto per creare file di riepilogo che aiutano Amazon Q a comprendere la tua base di codice senza dover analizzare l'intero progetto ogni volta che fai una domanda.

Quando generi file del banco di memoria, Amazon Q crea una `memory-bank` sottocartella in `.amazonq/rules` cui sono contenuti i seguenti file generati automaticamente:
+ `product.md`— Panoramica del progetto e delle sue funzionalità.
+ `structure.md`— L'architettura, l'organizzazione delle cartelle e i componenti chiave del progetto.
+ `tech.md`— Lo stack tecnologico, i framework, le dipendenze e gli standard di codifica.
+ `guidelines.md`— Standard e modelli di sviluppo per il tuo progetto.

Questi file vengono utilizzati automaticamente come contesto quando chatti con Amazon Q, fornendo informazioni di base sul tuo progetto.

## Genera un banco di memoria per il tuo progetto
<a name="generate-files"></a>

Per generare un banco di memoria, completare la procedura seguente.

1. Nel tuo IDE, apri il pannello di chat di Amazon Q.

1. Nella casella di immissione della chat, scegli il pulsante **Regole**.

1. Seleziona **Genera Memory Bank**.

1. Si apre una nuova scheda di chat in cui Amazon Q inizia ad analizzare il progetto per creare i file del banco di memoria.

1. Una volta completato, puoi visualizzare i file selezionando il pulsante **Regole**.

   È possibile selezionare e deselezionare singoli file da utilizzare come contesto quando si pone una domanda.

1. Se il tuo progetto cambia, puoi fare in modo che Amazon Q generi nuovi file del banco di memoria per aggiornarne il contesto. Per farlo, scegli il pulsante **Regole**, quindi seleziona **Regenerate Memory Bank**.

## Personalizza la generazione dei banchi di memoria
<a name="customize-files"></a>

È possibile personalizzare la modalità di generazione dei file del banco di memoria creando regole di progetto personalizzate. Ad esempio, puoi creare una regola che specifica la lingua o il formato per i file generati:

```
When generating the memory bank files like product.md, structure.md, and tech.md, 
always generate content in Spanish and include detailed code examples.
```

Salva le regole del tuo memory bank in un file nella `project-root/.amazonq/rules` cartella del progetto.

Per ulteriori informazioni sulla creazione di regole di progetto personalizzate, consulta[Creazione di regole di progetto per l’utilizzo con la chat di Amazon Q Developer](context-project-rules.md).