Scrivi codice con Gemini Code Assist

Questo documento descrive come utilizzare Gemini Code Assist, un collaboratore basato sull'AI in Google Cloud, per:

  • Fornisci indicazioni per aiutarti a risolvere i problemi relativi al codice.

  • Genera il codice per il tuo progetto.

  • Ricevi suggerimenti in linea durante la programmazione.

Scopri come e quando Gemini per Google Cloud utilizza i tuoi dati.

Per aiutarti a rispettare eventuali requisiti di licenza per il tuo codice, Gemini Code Assist fornisce citazioni di fonti quando i suoi suggerimenti citano direttamente e in dettaglio una fonte specifica. Per scoprire di più su come e quando Gemini cita le fonti, consulta In che modo Gemini ti aiuta a generare codice e citare le fonti.

Questo documento è rivolto a sviluppatori di tutti i livelli di abilità. Si presuppone che tu disponga di una conoscenza pratica di VS Code e di Google Cloud. Se preferisci, puoi anche esplorare Gemini Code Assist in Cloud Workstations, Cloud Code for IntelliJ e l'editor di Cloud Shell.

Prima di iniziare

  1. Se non l'hai ancora fatto, installa l'estensione Gemini Code Assist + Cloud Code. Cloud Code si integra con Gemini Code Assist nel tuo IDE.
  2. (Facoltativo) Se scegli di clonare un esempio per le attività in questo documento, installa Git. Git è necessario per copiare i campioni nella tua macchina.

Connettiti a Google Cloud e seleziona un progetto

In questa sezione, ti connetterai a Google Cloud e selezionerai un progetto Google Cloud con l'API Cloud AI Companion abilitata nel tuo IDE.

Se selezioni un progetto Google Cloud senza l'API Cloud AI Companion abilitata, ricevi una notifica di errore e ti viene chiesto di contattare l'amministratore. Per maggiori informazioni, consulta Configurare Gemini Code Assist per un progetto.

Se preferisci seguire la procedura dettagliata Code with Gemini Code Assist direttamente nel tuo IDE, fai clic su Launch VS Code e segui i passaggi nella procedura dettagliata per connetterti a Google Cloud e attivare Gemini Code Assist.

Lancio rispetto al codice

In caso contrario, attieniti alla seguente procedura:

  1. Avvia il tuo IDE.

  2. Nella barra di stato, fai clic su Cloud Code - Accedi.

    Cloud Code - Pulsante Accedi nella barra di stato.

  3. Quando ti viene richiesto di consentire a Cloud Code di aprire il sito web esterno, fai clic su Apri.

  4. Segui le istruzioni per accedere al tuo Account Google.

  5. Quando ti viene chiesto se hai scaricato Cloud Code da Google, fai clic su Accedi.

    La connessione a Google Cloud è stata completata.

A questo punto, per selezionare un progetto Google Cloud in cui è abilitata l'API Cloud AI Companion, segui questi passaggi:

  1. Nella barra di stato di Gemini Code Assist, fai clic su Gemini Code Assist.

    La barra di stato di Gemini è disponibile.

  2. Nel menu Gemini Code Assist, seleziona Seleziona progetto Gemini Code Assist.

  3. Seleziona un progetto Google Cloud in cui l'API Cloud AI Companion è abilitata.

    Gemini è pronto per l'uso.

    L'icona di Gemini nella barra di stato è impostata su normale.

Per testare le funzionalità di Gemini Code Assist, apri un'applicazione o crea un'applicazione di esempio nella sezione successiva.

(Facoltativo) Crea un'applicazione di esempio

Se preferisci utilizzare un'applicazione esistente per testare le funzionalità di Gemini Code Assist, puoi saltare questa sezione. In caso contrario, per creare un'applicazione di esempio, segui questi passaggi:

  1. Nel tuo IDE, apri la tavolozza dei comandi: premi Ctrl+Shift+P (per Windows e Linux) o Comando+Shift+P (per macOS), quindi esegui Cloud Code: New Application.

  2. Seleziona Applicazione Kubernetes.

  3. Seleziona il modello di applicazione Python (Flask): Guestbook.

  4. Salva la nuova applicazione nel percorso che preferisci.

    Una notifica conferma la creazione dell'applicazione; inoltre, si apre una nuova finestra con l'applicazione caricata.

Prova Gemini Code Assist

In questa sezione imparerai come aprire il riquadro Gemini Code Assist e chattare con Gemini Code Assist per ottenere una spiegazione del codice esistente.

Per iniziare a chattare con Gemini, segui questi passaggi:

  1. Crea un nuovo file di codice o utilizzane uno esistente. Se utilizzi l'esempio Python (Flask), puoi eseguire questa attività nel file front.py: vai a Explorer > src > frontend e apri il file front.py.

  2. Nella barra delle attività dell'IDE, fai clic su chat_spark Gemini Code Assist.

  3. Nel riquadro Gemini Code Assist, inserisci il prompt Explain this code to me e fai clic su Invia Invia.

    Gemini utilizza il codice nel file di codice come riferimento al tuo prompt e risponde con una spiegazione del codice.

    Per fare riferimento a un blocco specifico di codice anziché a tutto il codice nel file, puoi selezionare il blocco nel file di codice e fare un prompt a Gemini.

Reimposta cronologia chat

Gemini Code Assist utilizza la cronologia chat per ulteriore contesto quando risponde ai tuoi prompt.

Se la cronologia chat non è più pertinente per ciò che stai cercando di ottenere, puoi reimpostarla: nel riquadro Gemini Code Assist, fai clic su Elimina Reimposta chat.

Genera codice con prompt

Le seguenti sezioni mostrano come utilizzare Gemini Code Assist per generare codice con il prompt di esempio # Function to create a Cloud Storage bucket all'interno di un file Python. Puoi anche selezionare una parte del codice e quindi chiedere a Gemini Code Assist di aiutarti tramite la funzionalità di chat. Inoltre, puoi ricevere e accettare o rifiutare suggerimenti di codice durante la programmazione.

Chiedi a Gemini Code Assist in un file di codice

  1. Crea un nuovo file di codice o utilizzane uno esistente. Se utilizzi l'esempio Python (Flask), puoi farlo nel file front.py: vai a Explorer > src > frontend e apri il file front.py.

  2. Nel file di codice, inserisci # Function to create a Cloud Storage bucket in una nuova riga, quindi premi Invio (per Windows e Linux) o Invio (per macOS).

  3. Per generare il codice, premi Ctrl+Invio (per Windows e Linux) o Ctrl+Invio (per macOS).

    Accanto al testo del prompt nel file Python, Gemini Code Assist genera il codice sotto forma di testo fantasma.

  4. (Facoltativo) Per accettare il codice generato, premi Tab.

(Facoltativo) Modifica la scorciatoia da tastiera per la generazione del codice

Se la scorciatoia da tastiera predefinita per generare il codice non funziona come descritto nella sezione precedente, puoi modificarla procedendo nel seguente modo:

  1. Nel tuo IDE, fai clic su File (per Windows e Linux) o Codice (per macOS), quindi vai a Impostazioni > Scorciatoie da tastiera.

  2. Nell'elenco delle scorciatoie da tastiera, scorri fino a trovare Cloud Code: Genera codice.

  3. Fai clic su Cloud Code: Genera codice, quindi fai clic su Modifica Cambia Keybinding.

  4. Nella finestra di dialogo visualizzata, inserisci il tuo collegamento.

  5. Premi Invio (per Windows e Linux) o Invio (per macOS).

    Ora puoi utilizzare la scorciatoia da tastiera appena assegnata per generare codice con Gemini Code Assist.

Per scoprire di più sulla modifica delle scorciatoie nel tuo IDE, consulta Associazioni di tasti per il codice Visual Studio.

Chiedi a Gemini Code Assist con il codice selezionato utilizzando la chat

Gemini Code Assist può eseguire attività o rispondere alle tue domande in base al codice selezionato. Per ottenere un codice generato basato su una richiesta con il codice selezionato:

  1. Nel tuo IDE, apri un file del progetto che contenga codice oppure usa lo stesso file di codice che hai utilizzato nei passaggi precedenti.

  2. Nella barra delle attività, fai clic su chat_spark Gemini Code Assist per aprire il riquadro Gemini Code Assist.

  3. Seleziona un blocco di codice nel file di codice.

  4. Nel campo di testo del riquadro Gemini Code Assist, inserisci un prompt per il codice selezionato.

    Ad esempio, seleziona una funzione nel codice e inserisci il prompt Write a unit test for this function:

    Gemini scrive un test delle unità per una funzione selezionata.

    Gemini usa il codice selezionato come riferimento e risponde al tuo prompt.

Ricevi suggerimenti in linea durante la programmazione

Durante la scrittura del codice, Gemini Code Assist fornisce suggerimenti di codice in linea che puoi accettare o ignorare. Per provare questa funzionalità, segui questi passaggi:

  1. Crea un nuovo file di codice o utilizzane uno esistente. Se utilizzi l'esempio Python (Flask), puoi farlo nel file front.py: vai a Explorer > src > frontend e apri il file front.py.

  2. Nel file di codice, inizia a scrivere una funzione su una nuova riga. Ad esempio, se ti trovi in un file Python, scrivi def.

    Gemini suggerisce il codice sotto forma di testo fantasma.

  3. Per accettare il suggerimento di codice da Gemini Code Assist, premi Tab. In caso contrario, per ignorare il suggerimento, premi Esc o continua a scrivere il codice.

(Facoltativo) Disattiva i suggerimenti in linea

Se preferisci disabilitare i suggerimenti incorporati in Gemini Code Assist, segui questi passaggi:

  1. Nel tuo IDE, seleziona Codice (per macOS) o File (per Windows e Linux), quindi vai a Impostazioni > Impostazioni.

  2. Nella scheda Utente della finestra di dialogo Impostazioni, vai a Estensioni > Cloud Code.

  3. Scorri fino a trovare l'elenco Cloudcode: Gemini Code Assist: Inline Suggestions: Abilita Auto, quindi seleziona Off.

    Questa operazione disattiva i suggerimenti in linea. Puoi comunque premere Ctrl+Invio (per Windows e Linux) o Ctrl+Invio (per macOS) per attivare manualmente i suggerimenti in linea.

Disattiva i suggerimenti di codice che corrispondono alle fonti citate

Gemini fornisce informazioni sulle citazioni quando cita direttamente la lunghezza di un'altra fonte, come il codice open source esistente. Per maggiori informazioni, vedi Come e quando Gemini cita le fonti.

Per evitare che venga suggerito codice corrispondente alle fonti citate, puoi modificare l'impostazione cloudcode.duetAI.recitation.maxCitedLength in 0 in un file settings.json:

"cloudcode.duetAI.recitation.maxCitedLength": 0

Utilizzare le azioni rapide

Per aiutarti a essere più produttivo riducendo al minimo il cambio di contesto, Gemini Code Assist fornisce azioni intelligenti basate sull'AI direttamente nell'editor di codice. Quando selezioni il codice nell'editor di codice, puoi visualizzare e scegliere da un elenco di azioni pertinenti al tuo contesto.

Per utilizzare le azioni rapide nel codice:

  1. Seleziona un blocco di codice nel file di codice.

  2. Accanto al blocco di codice selezionato, fai clic su lampadina Mostra azioni codice.

    L'icona a forma di lampadina delle azioni rapide viene visualizzata dopo aver selezionato un blocco di codice in VS Code.

  3. Seleziona un'azione, ad esempio Genera test delle unità.

    Gemini genera una risposta basata sull'azione selezionata.

Testa altri prompt di esempio

Dopo aver letto la sezione Genera codice con prompt di questo documento, prova alcuni dei seguenti prompt di esempio.

Ricevi una spiegazione del codice

  1. Nel file di codice, seleziona una funzione che vuoi spiegare.
  2. Nel riquadro Gemini Code Assist, inserisci il prompt Explain this code to me.

    Gemini usa il codice selezionato come riferimento e risponde con una spiegazione della funzione selezionata.

Genera piani di test

  1. Nel file di codice, seleziona il codice per cui vuoi aggiungere i test delle unità.
  2. Nel riquadro Gemini Code Assist, inserisci il prompt Write unit tests for my code.

Assistenza per il debug del codice

  1. Nel file di codice, seleziona il codice di cui vuoi eseguire il debug.
  2. Nel riquadro Gemini Code Assist, inserisci il prompt Help me debug my code.

Rendi il codice più leggibile

  1. Nel file di codice, seleziona il codice che vuoi rendere più leggibile.
  2. Nel riquadro Gemini Code Assist, inserisci il prompt Make my code more readable.

    Se preferisci concentrarti su una parte specifica del codice, seleziona la parte che preferisci prima di inviare un prompt a Gemini.

Problemi noti

Le sezioni seguenti descrivono i problemi noti di Gemini Code Assist.

Le risposte della chat potrebbero essere troncate quando includono una versione aggiornata di un file aperto di grandi dimensioni

Per risolvere il problema, seleziona una sezione di codice più piccola e includi un'istruzione aggiuntiva nel prompt di chat, ad esempio only output the selected code.

Vim: impossibile accettare o ignorare i suggerimenti di generazione del codice se non è in modalità di inserimento

Quando si utilizza il plug-in Vim in modalità normale, non è possibile accettare o ignorare i suggerimenti di codice.

Per risolvere il problema, premi i per attivare la modalità di inserimento, quindi premi i per accettare il suggerimento.

Vim: comportamento incoerente quando premi Esc per ignorare i suggerimenti

Quando premi Esc, i suggerimenti di IntelliJ e Gemini vengono ignorati. Questo comportamento è diverso da quello non Vim in cui la pressione di Esc riattiva Gemini.

I tentativi di accesso continuano a scadere

Se i tentativi di accesso continuano a scadere, prova ad aggiungere l'impostazione cloudcode.beta.forceOobLogin al file settings.json:

"cloudcode.beta.forceOobLogin": true

Gli avvisi relativi alle richieste di licenza non vengono mantenuti tra una sessione e l'altra

Se gli avvisi sulle richieste di licenza non vengono mantenuti tra una sessione e l'altra, fai riferimento ai log permanenti:

  1. Fai clic su Visualizza > Output.

  2. Seleziona Gemini Code Assist - Citations.

Problemi di connettività nella finestra di output di Gemini Code Assist

Se vedi un errore di connessione o altri problemi di connettività nella finestra di output di Gemini Code Assist, prova quanto segue:

  • Configura il firewall per consentire l'accesso a oauth2.googleapis.com e cloudaicompanion.googleapis.com.

  • Configura il firewall in modo da consentire la comunicazione su HTTP/2 utilizzato da gRPC.

Puoi utilizzare lo strumento grpc-health-probe per verificare la connettività. Un controllo riuscito genera il seguente output:

$ grpc-health-probe -addr cloudaicompanion.googleapis.com:443 -tls error: this server does not implement the grpc health protocol (grpc.health.v1.Health): GRPC target method can't be resolved

Un controllo non riuscito restituisce il seguente output:

timeout: failed to connect service "cloudaicompanion.googleapis.com:443" within 1s

Per ottenere ulteriori dettagli, esegui questo comando prima di grpc-health-probe:

export GRPC_GO_LOG_SEVERITY_LEVEL=info

Lascia un feedback

Per lasciare un feedback sulla tua esperienza, procedi nel seguente modo:

  1. Nella barra di stato, fai clic su Gemini Code Assist e poi nel menu Scelta rapida, seleziona Invia feedback.

  2. Nel modulo, compila i campi Titolo e Commenti.

  3. Se vuoi condividere i log di Skaffold o AI Companion, assicurati di selezionare l'opzione Invia log Skaffold o Invia log AI Companion.

  4. Fai clic su Invia feedback.

Passaggi successivi