Coder avec Gemini Code Assist

Ce document explique comment utiliser Gemini Code Assist, un collaborateur optimisé par l'IA dans Google Cloud, pour vous aider à effectuer les opérations suivantes dans l'éditeur de base Cloud Workstations:

  • Fournir des conseils pour vous aider à résoudre les problèmes liés à votre code

  • Générez du code pour votre projet.

  • Recevez des suggestions intégrées pendant le codage.

Découvrez comment et quand Gemini pour Google Cloud utilise vos données.

Pour vous aider à respecter les exigences de licence pour votre code, Gemini Code Assist fournit des citations de la source lorsque ses suggestions citent directement et largement une source spécifique. Pour savoir comment et quand Gemini cite ses sources, consultez Comment Gemini vous aide à générer du code et à cite ses sources.

Ce document s'adresse aux développeurs de tous niveaux. Nous partons du principe que vous avez une connaissance pratique de Cloud Workstations et que vous connaissez Google Cloud. Si vous préférez, vous pouvez également explorer Gemini Code Assist dans Cloud Code pour VS Code, Cloud Code pour IntelliJ et l'éditeur Cloud Shell.

Avant de commencer

  1. Assurez-vous de disposer du rôle IAM Administrateur Cloud Workstations sur le projet pour pouvoir créer des configurations de stations de travail.

    Accéder à IAM

  2. Configurez votre station de travail si ce n'est pas déjà fait et veillez à sélectionner Base Editor (Code-OSS) (Éditeur de base (Code-OSS)) dans la configuration.

  3. Avant de tester les fonctionnalités de Gemini Code Assist dans votre fichier de code, assurez-vous que le langage de codage de votre fichier est compatible. Pour en savoir plus sur les langages de programmation acceptés, consultez la page Langages de programmation acceptés.

Se connecter à Google Cloud et sélectionner un projet

Dans cette section, vous allez vous connecter à Google Cloud et sélectionner un projet Google Cloud avec l'API Cloud AI Companion activée sur votre poste de travail.

Si vous sélectionnez un projet Google Cloud sur lequel l'API Cloud AI Companion n'est pas activée, vous recevez une notification vous permettant d'activer l'API depuis l'IDE. Sélectionnez Activer l'API dans la fenêtre de notification afin d'activer l'API pour votre projet. Pour en savoir plus, consultez Configurer Gemini Code Assist pour un projet.

Pour vous connecter à Google Cloud sur votre poste de travail, procédez comme suit:

  1. Dans la console Google Cloud, lancez votre poste de travail.

    Lancer la station de travail

  2. Dans la barre d'état, cliquez sur Cloud Code – Connexion.

    Cloud Code : bouton "Sign In" (Se connecter) dans la barre d'état.

  3. Lorsqu'un message vous invite à vous connecter, cliquez sur Continuer pour confirmer.

  4. Pour lancer le flux de connexion Google Cloud, appuyez sur Ctrl (pour Windows et Linux) ou sur Commande (pour macOS), puis sur l'URL dans la console.

  5. Si vous êtes invité à autoriser Cloud Workstations à ouvrir le site Web externe, cliquez sur Open (Ouvrir).

  6. Pour vous connecter à votre compte, suivez les instructions.

    Si vous êtes invité à vous assurer que vous avez téléchargé cette application depuis Google, cliquez sur Sign in (Se connecter).

    Un nouvel onglet s'ouvre dans votre navigateur, affichant votre code de validation pour vous connecter à Cloud Code.

  7. Copiez le code de validation et collez-le dans votre terminal à l'emplacement du message Enter authorization code (Saisissez le code d'autorisation), puis appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

    Vous êtes désormais connecté à Google Cloud.

Ensuite, pour sélectionner un projet Google Cloud dans lequel l'API Cloud AI Companion est activée, procédez comme suit:

  1. Dans la barre d'état Gemini Code Assist, cliquez sur Gemini Code Assist.

    La barre d'état Gemini est disponible.

  2. Dans le menu Gemini Code Assist, sélectionnez Sélectionner un projet Gemini Code Assist.

  3. Sélectionnez un projet Google Cloud dans lequel l'API Cloud AI Companion est activée.

    Gemini est prêt à l'emploi.

    L'icône Gemini dans la barre d'état est réglée sur une valeur normale.

Discuter avec Gemini Code Assist

Dans cette section, vous allez apprendre à ouvrir le volet Gemini Code Assist et à discuter avec Gemini Code Assist pour obtenir une explication de votre code existant.

Pour commencer à discuter avec Gemini, procédez comme suit:

  1. Ouvrez le fichier de code.

  2. Dans la barre d'activité de votre poste de travail, cliquez sur spark Gemini Code Assist.

  3. Dans le volet Gemini Code Assist, saisissez la requête Explain this code to me, puis cliquez sur Envoyer Envoyer.

    Gemini utilise le code de votre fichier de code comme référence à votre requête et répond en expliquant votre code.

    Pour faire référence à un bloc de code spécifique au lieu de tout le code du fichier, vous pouvez sélectionner le bloc dans votre fichier de code, puis lancer une requête à Gemini.

Réinitialiser l'historique des discussions

Gemini Code Assist utilise l'historique des discussions pour obtenir plus de contexte lorsqu'il répond à vos requêtes.

Si l'historique des discussions n'est plus pertinent, vous pouvez le réinitialiser: dans le volet Gemini Code Assist, cliquez sur supprimer Réinitialiser le chat.

Générer du code avec des requêtes

Les sections suivantes vous expliquent comment utiliser Gemini Code Assist pour générer du code avec l'exemple de requête Function to create a Cloud Storage bucket dans votre fichier de code. Vous pouvez également sélectionner une partie de votre code, puis demander de l'aide à Gemini Code Assist via la fonctionnalité de chat, puis recevoir, accepter ou refuser des suggestions de code pendant que vous codez.

Saisir une requête Gemini Code Assist dans un fichier de code

  1. Dans votre fichier de code, sur une nouvelle ligne, saisissez le commentaire Function to create a Cloud Storage bucket, puis appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

  2. Pour générer du code, appuyez sur Ctrl+Entrée (pour Windows et Linux) ou sur Ctrl+Retour (pour macOS).

    À côté du texte de la requête dans le fichier de code, Gemini Code Assist génère le code sous forme de texte fantôme.

  3. Facultatif: Pour accepter le code généré, appuyez sur la touche Tabulation.

Facultatif: Modifier le raccourci clavier pour générer le code

Si le raccourci clavier par défaut permettant de générer du code ne fonctionne pas comme indiqué dans la section précédente, vous pouvez modifier le raccourci clavier en procédant comme suit:

  1. Sur votre poste de travail, cliquez sur Menu Menu, puis accédez à Fichier > Préférences > Raccourcis clavier.

  2. Dans la liste des raccourcis clavier, recherchez Cloud Code: Générer du code.

  3. Cliquez sur Cloud Code: Générer le code, puis sur Modifier Modifier la liaison de clavier.

  4. Dans la boîte de dialogue qui s'affiche, saisissez votre propre raccourci.

  5. Appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

    Vous pouvez désormais utiliser le raccourci clavier que vous venez d'attribuer pour générer du code avec Gemini.

Saisir le code sélectionné dans Gemini Code Assist dans une requête dans Chat

Gemini Code Assist peut effectuer des tâches ou répondre à vos questions en fonction du code sélectionné. Pour obtenir du code généré à partir d'une requête avec du code sélectionné, procédez comme suit:

  1. Dans la barre d'activité, cliquez sur spark Gemini Code Assist pour ouvrir le volet Gemini Code Assist.

  2. Dans votre fichier de code, sélectionnez un bloc de code.

  3. Dans le champ de texte du volet Gemini Code Assist, saisissez une requête pour le code sélectionné.

    Par exemple, sélectionnez une fonction dans votre code et saisissez l'invite Write a unit test for this function:

    Gemini écrit un test unitaire pour une fonction sélectionnée.

    Gemini utilise le code sélectionné comme référence et répond à votre requête.

Obtenez des suggestions intégrées pendant que vous codez

Lorsque vous écrivez du code, Gemini Code Assist propose des suggestions de code intégrées que vous pouvez accepter ou ignorer. Pour essayer cette fonctionnalité, procédez comme suit:

  1. Dans votre fichier de code, sur une nouvelle ligne, commencez à écrire une fonction. Par exemple, si vous vous trouvez dans un fichier Python, écrivez def.

    Gemini suggère du code sous la forme de texte fantôme.

  2. Pour accepter la suggestion de code de Gemini Code Assist, appuyez sur Tabulation. Sinon, pour ignorer la suggestion, appuyez sur Esc ou poursuivez l'écriture de votre code.

Facultatif: désactiver les suggestions intégrées

Si vous préférez désactiver les suggestions intégrées dans Gemini Code Assist, procédez comme suit:

  1. Sur votre poste de travail, sélectionnez le menu Menu, puis accédez à Fichier > Préférences > Paramètres.

  2. Dans l'onglet User (Utilisateur) de la boîte de dialogue Settings (Paramètres), accédez à Extensions > Cloud Code.

  3. Faites défiler la page jusqu'à la liste Cloudcode: Gemini Code Assist: Inline Suggestions: Enable Auto (Cloudcode : Gemini Code Assist : Suggestions intégrées : Activer automatiquement), puis sélectionnez Désactivé.

    Les suggestions intégrées sont alors désactivées. Vous pouvez toujours appuyer sur Ctrl+Entrée (pour Windows et Linux) ou sur Ctrl+Retour (sous macOS) pour déclencher manuellement des suggestions intégrées.

Désactiver les suggestions de code qui correspondent aux sources citées

Gemini fournit des informations sur les citations lorsqu'il cite directement une autre source, comme le code Open Source existant. Pour en savoir plus, consultez Comment et quand Gemini cite ses sources.

Pour empêcher la suggestion de code correspondant aux sources citées, vous pouvez définir le paramètre cloudcode.duetAI.recitation.maxCitedLength sur 0 dans un fichier settings.json:

"cloudcode.duetAI.recitation.maxCitedLength": 0

Utiliser les actions intelligentes

Pour vous aider à gagner en productivité tout en limitant les changements de contexte, Gemini Code Assist propose des actions intelligentes basées sur l'IA, directement dans votre éditeur de code. Lorsque vous sélectionnez votre code dans votre éditeur de code, vous pouvez afficher et sélectionner une liste d'actions adaptées à votre contexte.

Pour utiliser des actions intelligentes dans votre code, procédez comme suit:

  1. Dans votre fichier de code, sélectionnez un bloc de code.

  2. À côté du bloc de code sélectionné, cliquez sur ampoule Afficher les actions sur le code.

    L'icône d'ampoule des actions intelligentes s'affiche lorsque vous sélectionnez un bloc de code dans Shell et Workstations.

  3. Sélectionnez une action, par exemple Générer des tests unitaires.

    Gemini génère une réponse basée sur l'action que vous avez sélectionnée.

Aperçu: Utiliser les transformations de code

Gemini Code Assist fournit des transformations de code, qui vous permettent de sélectionner une partie de votre fichier de code et de demander des modifications de votre code existant par le biais de requêtes en langage naturel, dans une zone de texte intégrée.

Les transformations de code vous permettent d'effectuer les opérations suivantes:

  • Générer des lignes de commentaire pour documenter votre code
  • Résoudre les problèmes de code
  • Améliorer la lisibilité du code
  • Rendre le code plus efficace

Vous pouvez également afficher les sources contextuelles d'une réponse générée dans le volet Gemini : Chat.

Saisir une requête Gemini Code Assist à l'aide de la zone de texte intégrée

La zone de texte intégrée vous permet d'interagir avec Gemini Code Assist directement dans votre fichier de code.

Pour ouvrir la zone de texte intégrée et envoyer une requête à Gemini, procédez comme suit:

  1. Dans votre fichier de code, appuyez sur Ctrl+I (pour Windows et Linux) ou sur Cmd+I (pour macOS).

  2. Saisissez une requête, telle que Write a function to create a Cloud Storage bucket, puis appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

    Gemini Code Assist génère le code en fonction de votre requête.

Afficher les différences du code refactorisé

Grâce à l'affichage des différences intégrée dans la zone de texte intégrée, vous pouvez voir les modifications suggérées par Gemini et votre code d'origine. Vous pouvez ensuite accepter ou ignorer les modifications suggérées.

Pour afficher les différences du code refactorisé à partir de la zone de texte intégrée, procédez comme suit:

  1. Dans votre fichier de code, sélectionnez une fonction et ouvrez la zone de texte intégrée en appuyant sur Ctrl+I (pour Windows et Linux) ou sur Cmd+I (pour macOS).

  2. Saisissez une requête, telle que Add comments, puis appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

    Lorsque Gemini génère les modifications de code pour la fonction sélectionnée, la vue des différences s'affiche.

    Sources de contexte répertoriées dans le volet Gemini: Chat

  3. Pour accepter ou supprimer les modifications, cliquez sur Accepter ou Supprimer.

Afficher les sources de contexte d'une réponse générée

La fonctionnalité d'affichage du contexte répertorie les fichiers de votre projet (les sources de contexte) utilisés comme référence pour générer des réponses à vos requêtes. Savoir quels fichiers ont été utilisés comme références vous aide à affiner vos requêtes et à obtenir des réponses plus spécifiques. Les sources de contexte s'affichent chaque fois que vous utilisez Gemini Chat.

Pour afficher les sources contextuelles de la réponse générée, faites défiler le volet Gemini: Chat jusqu'à l'extrait Sources de contexte. Développez l'extrait pour afficher toutes les sources contextuelles.

Sources de contexte répertoriées dans le volet Gemini: Chat

Utiliser les commandes intelligentes

Les commandes intelligentes sont des commandes que vous pouvez utiliser dans la zone de texte intégrée pour effectuer des actions spécifiques sur votre code.

Pour obtenir une explication de l'intégralité de votre fichier de code à l'aide de la commande intelligente /explain, procédez comme suit:

  1. Dans votre fichier de code, ouvrez la zone de texte intégrée en appuyant sur Ctrl+I (pour Windows et Linux) ou sur Cmd+I (pour macOS).

  2. Appuyez sur / pour afficher la liste des commandes intelligentes et leur description.

  3. Sélectionnez /explain.

    Gemini génère une explication de l'intégralité du fichier de code dans la zone de texte intégrée.

  4. Facultatif: Si vous souhaitez afficher la réponse générée dans le volet Gemini: Chat, cliquez sur Afficher dans Chat.

Afficher l'historique des requêtes

Accéder à l'historique de vos requêtes vous fait gagner du temps lorsque vous devez saisir les mêmes requêtes dans un fichier de code volumineux.

Pour accéder à l'historique de vos requêtes, dans votre fichier de code, ouvrez la zone de texte intégrée en appuyant sur Ctrl+I (pour Windows et Linux) ou Cmd+I (pour macOS), puis sur Ctrl+Flèche vers le haut (pour Windows et Linux) ou Commande+Flèche vers le haut (sous macOS). Cela vous permet de faire défiler vos anciennes requêtes et de les réutiliser si nécessaire.

Améliorez la lisibilité du code pour les anglophones non natifs

Si vous ne parlez pas anglais et que vous utilisez des applications de traduction, vous pouvez utiliser la zone de texte intégrée pour générer des commentaires dans d'autres langues.

Pour convertir des commentaires en anglais dans une autre langue ou ajouter des commentaires dans une autre langue, procédez comme suit:

  1. Dans votre fichier de code, sélectionnez le code auquel vous souhaitez ajouter des commentaires.

  2. Ouvrez la zone de texte intégrée en appuyant sur Ctrl+I (pour Windows et Linux) ou sur Cmd+I (sous macOS).

  3. Saisissez une requête, telle que Add spanish comments, puis appuyez sur Entrée (pour Windows et Linux) ou sur Retour (pour macOS).

    Gemini génère des commentaires dans la langue que vous avez spécifiée dans votre requête et affiche les différences de ces suggestions.

  4. Pour accepter ou supprimer les modifications apportées à votre code, cliquez sur Accepter ou Supprimer.

Tester d'autres exemples de requêtes

Après avoir lu la section Générer du code avec des invites de ce document, essayez certains des exemples d'invites suivants.

Obtenir une explication du code

  1. Dans votre fichier de code, sélectionnez une fonction pour laquelle vous souhaitez obtenir des explications.
  2. Dans le volet Gemini Code Assist, saisissez la requête Explain this code to me.

    Gemini utilise le code sélectionné comme référence et répond avec une explication de la fonction sélectionnée.

Générer des plans de test

  1. Dans votre fichier de code, sélectionnez le code pour lequel vous souhaitez ajouter des tests unitaires.
  2. Dans le volet Gemini Code Assist, saisissez la requête Write unit tests for my code.

Obtenir de l'aide pour déboguer du code

  1. Dans votre fichier de code, sélectionnez le code que vous souhaitez déboguer.
  2. Dans le volet Gemini Code Assist, saisissez la requête Help me debug my code.

Rendre votre code plus lisible

  1. Dans votre fichier de code, sélectionnez le code que vous souhaitez rendre plus lisible.
  2. Dans le volet Gemini Code Assist, saisissez la requête Make my code more readable.

    Si vous préférez vous concentrer sur une partie spécifique de votre code, sélectionnez-la avant d'envoyer une requête à Gemini.

Problèmes connus

Les sections suivantes décrivent les problèmes connus de Gemini Code Assist.

Les avertissements concernant la récitation de licences ne persistent pas d'une session à l'autre

Si les avertissements de récitation de licence ne persistent pas d'une session à l'autre, consultez les journaux persistants:

  1. Cliquez sur menu Menu > Affichage > Sortie.

  2. Sélectionnez Gemini Code Assist - Citations.

Problèmes de connectivité dans la fenêtre de sortie de Gemini Code Assist

Si une erreur de connexion ou d'autres problèmes de connectivité s'affiche dans la fenêtre de résultat de Gemini Code Assist, procédez comme suit:

  • Configurez votre pare-feu pour autoriser l'accès à oauth2.googleapis.com et cloudaicompanion.googleapis.com.

  • Configurez votre pare-feu pour autoriser la communication via HTTP/2, utilisé par gRPC.

Vous pouvez utiliser l'outil grpc-health-probe pour tester la connectivité. Si la vérification réussit, le résultat suivant s'affiche:

$ 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

En cas d'échec de la vérification, le résultat suivant est renvoyé:

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

Pour obtenir plus de détails, exécutez la commande suivante avant grpc-health-probe:

export GRPC_GO_LOG_SEVERITY_LEVEL=info

Gemini Code Assist et JetBrains Gateway

Gemini Code Assist ne s'exécute pas via JetBrains Gateway. Par conséquent, Gemini Code Assist ne s'exécute pas sur les IDE Cloud Workstations qui nécessitent JetBrains Gateway pour se connecter.

Laisser un commentaire

Pour laisser des commentaires sur votre expérience, procédez comme suit:

  1. Dans la barre d'état, cliquez sur Gemini Code Assist, puis dans le menu Choix rapide, sélectionnez Envoyer des commentaires.

  2. Dans le formulaire, remplissez les champs Titre et Commentaires.

  3. Si vous souhaitez partager vos journaux Skaffold ou AI Companion, veillez à sélectionner l'option Envoyer des journaux Skaffold ou Envoyer des journaux AI Companion.

  4. Cliquez sur Envoyer des commentaires.

Étapes suivantes