Mit Gemini Code Assist programmieren

In diesem Dokument wird beschrieben, wie Sie Gemini Code Assist, ein KI-gestützter in Google Cloud, um Ihnen die folgenden Aufgaben in Cloud Shell zu erleichtern:

  • Geben Sie Anleitungen an, die Ihnen beim Lösen von Problemen mit Ihrem Code helfen.

  • Generieren Sie Code für Ihr Projekt.

  • Sie erhalten Inline-Vorschläge, während Sie programmieren.

Weitere Informationen dazu, wie und wann Gemini for Google Cloud Ihre Daten verwendet

Gemini Code Assist unterstützt Sie bei der Einhaltung von Lizenzanforderungen für Ihren Code. Dazu stellt Gemini Code Assist Quellenangaben bereit, wenn in den Vorschlägen direkt aus einer bestimmten Quelle zitiert wird. Um mehr darüber zu erfahren, wie und Wenn Gemini Quellen zitiert, siehe So hilft Ihnen Gemini beim Generieren von Code und Zitieren von Quellen

Mit der Codeanpassung erhalten Sie Codevorschläge, die auf der privaten Codebasis Ihrer Organisation basieren, direkt von Gemini Code Assist. Weitere Informationen zum Konfigurieren der Codeanpassung

Dieses Dokument richtet sich an Entwickler aller Erfahrungsstufen. Dabei wird davon ausgegangen, über praktische Kenntnisse Cloud Shell-Editor und sind mit Google Cloud vertraut. Sie können Gemini Code Assist auch in Cloud Workstations Cloud Code for IntelliJ und Cloud Code for VS Code

Mit Google Cloud verbinden und Projekt auswählen

In diesem Abschnitt stellen Sie eine Verbindung zu Google Cloud her und wählen im Cloud Shell-Editor ein Google Cloud-Projekt mit aktivierter Gemini for Google Cloud API aus.

Wenn Sie ein Google Cloud-Projekt auswählen, für das die Gemini for Google Cloud API nicht aktiviert ist, erhalten Sie eine Benachrichtigung, in der Sie die Möglichkeit haben, die API über die IDE zu aktivieren. Wählen Sie im Benachrichtigungsfenster API aktivieren aus, um die API für Ihr Projekt zu aktivieren. Weitere Informationen finden Sie unter Gemini Code Assist für ein Projekt einrichten.

So stellen Sie im Cloud Shell-Editor eine Verbindung zu Google Cloud her:

  1. Cloud Shell-Editor starten

  2. Wenn Sie den alten Editor verwenden, klicken Sie auf Neuen Editor testen.

  3. Klicken Sie in der Statusleiste auf Cloud Code – Anmelden.

    Cloud Code – Schaltfläche „Anmelden“ in der Statusleiste

  4. Wenn Sie aufgefordert werden, den Cloud Shell-Editor zu autorisieren, API-Aufrufe auf Autorisieren.

  5. Folgen Sie der Anleitung, um sich in Ihrem Google-Konto anzumelden.

    Sie sind jetzt mit Google Cloud verbunden.

Wählen Sie als Nächstes ein Google Cloud-Projekt aus, das die Gemini for Google Cloud API enthält. aktiviert haben, führen Sie folgende Schritte aus:

  1. Klicken Sie in der Statusleiste von Gemini Code Assist auf Gemini Code Assist.

    Die Gemini-Statusleiste ist verfügbar.

  2. Wähle im Gemini Code Assist-Menü die Option Gemini-Code auswählen Projekt.

  3. Wählen Sie ein Google Cloud-Projekt aus, das die Gemini for Google Cloud API enthält aktiviert.

    Gemini ist einsatzbereit.

    Das Gemini-Symbol in der Statusleiste ist auf „Normal“ gesetzt.

Mit Gemini Code Assist chatten

In diesem Abschnitt erfahren Sie, wie Sie den Bereich Gemini Code Assist öffnen und mit Gemini Code Assist chatten, um eine Erklärung zu Ihrem vorhandenen Code zu erhalten.

Gehen Sie so vor, um mit Gemini zu chatten:

  1. Öffnen Sie die Codedatei.

  2. Klicken Sie in der Aktivitätsleiste des Cloud Shell-Editors auf spark Gemini Code Assist.

  3. Geben Sie im Bereich Gemini Code Assist den Prompt Explain this code to me ein und klicken Sie auf send Senden.

    Gemini verwendet den Code in Ihrer Codedatei als Referenz auf Ihren Prompt und antwortet mit einer Erläuterung Ihres Codes.

    Um auf einen bestimmten Codeblock anstatt auf den gesamten Code in der Datei zu verweisen, können Sie den Block in Ihrer Codedatei auswählen und Gemini auffordern.

Chatprotokoll zurücksetzen

Gemini Code Assist verwendet den Chatverlauf als zusätzlichen Kontext, um auf Ihre Prompts zu reagieren.

Wenn Ihr Chatprotokoll für Ihre Ziele nicht mehr relevant ist, können Sie den Chatverlauf zurücksetzen: Klicken Sie im Bereich Gemini Code Assist auf delete Chat zurücksetzen.

Code mit Prompts generieren

In den folgenden Abschnitten erfahren Sie, wie Sie mit Gemini Code Assist Generieren Sie Code mit dem Beispiel-Prompt Function to create a Cloud Storage bucket in Ihrer Codedatei. Sie können auch einen Teil Ihres Codes auswählen Gemini Code Assist über die Chatfunktion um Hilfe bitten und Codevorschläge erhalten und annehmen oder ablehnen, während Sie programmieren

Gemini Code Assist in einer Codedatei auffordern

  1. Geben Sie in Ihrer Codedatei in einer neuen Zeile den Kommentar Function to create a Cloud Storage bucket ein und drücken Sie dann die Eingabetaste (Windows und Linux) oder den Zeilenschalter (macOS).

  2. Drücken Sie zum Generieren von Code Strg + Eingabetaste (Windows und Linux) oder Strg + Return (macOS).

    Neben dem Prompttext in Ihrer Codedatei generiert Gemini Code Assist den Code in Form von Ghosttext.

  3. Optional: Um den generierten Code zu übernehmen, drücken Sie die Tabulatortaste.

Optional: Tastenkombination zum Generieren von Code ändern

Wenn das Standard-Tastenkürzel zum Generieren von Code nicht wie beschrieben funktioniert wie im vorherigen Abschnitt beschrieben, können Sie die Tastenkombination folgendermaßen ändern: Schritte:

  1. Klicken Sie im Cloud Shell-Editor auf menu Menü und dann auf Datei > Einstellungen > Tastenkürzel.

  2. Suchen Sie in der Liste der Tastenkombinationen nach Cloud Code: Code generieren.

  3. Klicken Sie auf Cloud Code: Code generieren und dann auf edit Tastenkombination ändern.

  4. Geben Sie im angezeigten Dialogfeld Ihre eigene Tastenkombination ein.

  5. Drücken Sie die Eingabetaste (Windows und Linux) oder die Return-Taste (macOS).

    Sie können jetzt mit der neu zugewiesenen Tastenkombination Code mit Gemini generieren.

Gemini Code Assist über den Chat mit ausgewähltem Code auffordern

Gemini Code Assist kann Aufgaben ausführen oder Ihre Fragen beantworten, basierend auf dem von Ihnen ausgewählten Code. Um generierten Code zu erhalten, der auf einem mit ausgewähltem Code auf, gehen Sie folgendermaßen vor:

  1. Klicken Sie in der Aktivitätsleiste auf spark Gemini Code Assist, um den Bereich Gemini Code Assist zu öffnen.

  2. Wählen Sie in Ihrer Codedatei einen Codeblock aus.

  3. Geben Sie im Textfeld Gemini Code Assist einen Prompt für den ausgewählten Code ein.

    Wählen Sie beispielsweise eine Funktion in Ihrem Code aus und geben Sie den Prompt Write a unit test for this function ein:

    Gemini schreibt einen Unittest für eine ausgewählte Funktion.

    Gemini verwendet den ausgewählten Code als Referenz und reagiert auf Ihren Prompt.

Inline-Vorschläge beim Programmieren erhalten

Während Sie Code schreiben, macht Gemini Code Assist Vorschläge für Inline-Code, die Sie entweder akzeptieren oder ignorieren können. Wenn du diese Funktion ausprobieren möchtest, folge diese Schritte:

  1. Beginnen Sie in Ihrer Codedatei in einer neuen Zeile mit dem Schreiben einer Funktion. Wenn Sie sich beispielsweise in einer Python-Datei befinden, geben Sie def ein.

    Gemini schlägt Code in Form von Geistertext vor.

  2. Um den Codevorschlag von Gemini Code Assist anzunehmen, drücken Sie Tab: Wenn Sie den Vorschlag ignorieren möchten, drücken Sie Esc oder Schreiben Sie Ihren Code weiter.

Optional: Inline-Vorschläge deaktivieren

Wenn Sie Inline-Vorschläge in Gemini Code Assist deaktivieren möchten, führen Sie folgende Schritte aus:

  1. Führen Sie im Cloud Shell-Editor Auswählen menu Menü und gehen Sie dann zu Datei. > Einstellungen > Einstellungen.

  2. Klicken Sie im Dialogfeld Einstellungen auf dem Tab Nutzer auf Erweiterungen > Cloud Code.

  3. Scrollen Sie zu Cloudcode: Gemini Code Assist: Inline Suggestions: Enable Automatisch und wählen Sie dann Aus aus.

    Dadurch werden die Inline-Vorschläge deaktiviert. Sie können weiterhin die Tastenkombination Strg + Eingabetaste (Windows und Linux) oder Strg + Return (macOS) drücken, um Inline-Vorschläge manuell auszulösen.

Optional: Dateien mit einer .aiexclude-Datei aus dem Kontext ausschließen

Sie können Dateien ausschließen, damit sie von Gemini Code Assist berücksichtigt werden um Kontext zu erhalten, indem Sie eine .aiexclude-Datei erstellen. Die Syntax einer .aiexclude-Datei ähnelt der einer .gitignore-Datei, mit folgenden Unterschieden:

  • Eine leere oder nicht vorhandene .aiexclude-Datei blockiert keine Dateien in ihrem Verzeichnis und in allen Unterverzeichnissen.
  • In einer .aiexclude-Datei wird die Negierung nicht unterstützt, bei der Muster mit einem Ausrufezeichen (!) vorangestellt werden.
  • Eine .aiexclude-Datei sucht gierig nach dem Zeichen *. Dies entspricht wahllos in Verzeichnissen und Dateien. In dieser .aiexclude-Datei wird bei Ordnern oder Dateien nicht zwischen ** und * unterschieden.

Derzeit wird nur eine einzelne .aiexclude-Datei unterstützt. Erstellen Sie zum Konfigurieren Ihrer .aiexclude-Datei eine Datei mit dem Namen .aiexclude im Stammverzeichnis Ihres Arbeitsbereichsordners. Wenn Sie diese Datei außerhalb des Stammverzeichnisses des Arbeitsbereichs platzieren oder die Datei umbenennen möchten, können Sie den Pfad in den VS Code-Einstellungen unter „Context Exclusion File“ festlegen. Der in dieser Einstellung angegebene Pfadwert wird relativ zum Stammordner des geöffneten Arbeitsbereichs aufgelöst.

Beispiele

Die folgenden Beispiele veranschaulichen, wie Sie eine .aiexclude-Datei konfigurieren können:

  • Blockieren Sie alle Dateien mit dem Namen apikeys.txt im oder unterhalb des Arbeitsbereichsverzeichnisses:

    apikeys.txt
    
  • So blockieren Sie alle Dateien mit der Dateiendung .key im Arbeitsbereichsverzeichnis oder darunter:

    *.key
    
  • Blockieren Sie nur die Datei „apikeys.txt“ im selben Verzeichnis wie die Datei „.aiexclude“, aber keine Unterverzeichnisse:

    /apikeys.txt
    
  • Blockieren Sie alle Dateien im Verzeichnis my/sensitive/dir und in allen Unterverzeichnissen. Der Pfad sollte sich auf das Stammverzeichnis des Arbeitsbereichs beziehen.

    my/sensitive/dir/*
    

Codevorschläge deaktivieren, die mit zitierten Quellen übereinstimmen

Gemini liefert Zitationsinformationen, wenn es direkt zitiert wird. Länge aus einer anderen Quelle, z. B. aus bestehendem Open-Source-Code. Weitere Informationen finden Sie unter Wie und wann Gemini Quellen zitiert.

Wenn Sie verhindern möchten, dass Code vorgeschlagen wird, der mit den zitierten Quellen übereinstimmt, können Sie die Einstellung cloudcode.duetAI.recitation.maxCitedLength in einer settings.json-Datei in 0 ändern:

"cloudcode.duetAI.recitation.maxCitedLength": 0

Intelligente Aktionen verwenden

Gemini Code Assist bietet KI-gestützte intelligente Aktionen direkt in Ihrem Code-Editor, damit Sie produktiver arbeiten und den Kontextwechsel minimieren können. Wenn Sie den Code in Ihrem Code-Editor auswählen, können Sie eine Liste der für Ihren Kontext relevanten Aktionen aufrufen und eine davon auswählen.

So verwenden Sie intelligente Aktionen in Ihrem Code:

  1. Wählen Sie in Ihrer Codedatei einen Codeblock aus.

  2. Klicken Sie neben dem ausgewählten Codeblock auf lightbulb Codeaktionen anzeigen.

    Das Glühbirnensymbol für intelligente Aktionen wird angezeigt, nachdem ein Codeblock in Shell und Workstations ausgewählt wurde.

  3. Wählen Sie eine Aktion aus, z. B. Einheitentests generieren.

    Gemini generiert eine Antwort, die auf der von Ihnen ausgewählten Aktion basiert.

Codetransformation verwenden

Gemini Code Assist bietet eine Codetransformation, mit der Sie einen Teil Ihrer Codedatei auswählen und Änderungen an Ihrer vorhandener Code über Prompts in natürlicher Sprache und mithilfe eines Inline-Textfelds.

Mit der Codetransformation haben Sie folgende Möglichkeiten:

  • Kommentarzeilen zum Dokumentieren Ihres Codes generieren
  • Probleme mit Code beheben
  • Verbesserung der Lesbarkeit von Code
  • Code effizienter machen

Sie können sich die Kontextquellen einer generierten Antwort auch im Bereich Gemini: Chat ansehen.

Gemini Code Assist über das Inline-Textfeld auffordern

Über das Inline-Textfeld können Sie direkt in Ihrer Codedatei mit Gemini Code Assist interagieren.

So öffnen Sie das Inline-Textfeld und geben einen Prompt für Gemini ein:

  1. Drücken Sie in der Codedatei Strg + I (Windows und Linux) oder Befehlstaste + I (für macOS).

  2. Geben Sie einen Prompt ein, z. B. Write a function to create a Cloud Storage bucket, und drücken Sie die Eingabetaste (Windows und Linux) oder die Return-Taste (macOS).

    Gemini Code Assist generiert den Code anhand Ihres Prompts.

Unterschied von refaktoriertem Code ansehen

Mit der Ansicht „Unterschiede“ in das Inline-Textfeld können Sie die Änderungen sehen, die Gemini-Vorschläge und Ihr ursprünglicher Code. Sie können die vorgeschlagenen Änderungen dann akzeptieren oder verwerfen.

So rufen Sie den Diff-Vergleich des überarbeiteten Codes aus dem Inline-Textfeld auf:

  1. Wählen Sie in Ihrer Codedatei eine Funktion aus und öffnen Sie das Inline-Textfeld, indem Sie die Tastenkombination Strg + I (Windows und Linux) oder Befehlstaste + I (macOS) drücken.

  2. Geben Sie einen Prompt ein, z. B. Add comments, und drücken Sie die Eingabetaste (Windows und Linux) oder die Return-Taste (macOS).

    Wenn Gemini die Codeänderungen an der ausgewählten Funktion generiert, wird die Diff-Ansicht angezeigt.

    Kontextquellen im Bereich „Gemini: Chat“.

  3. Klicken Sie auf Akzeptieren oder Verwerfen, um die Änderungen zu akzeptieren oder zu verwerfen.

Kontextquellen einer generierten Antwort ansehen

Mit der Funktion zur Kontextanzeige werden Ihre Projektdateien aufgelistet, d. h. die Kontextquellen. die als Referenz verwendet wurden, um Antworten auf Ihre Prompts zu generieren. Zu wissen, welche Dateien wurden als Referenzen verwendet, um Ihre Prompts zu verfeinern und bestimmte Antworten geben. Kontextquellen werden jedes Mal angezeigt, wenn Sie Gemini Chat verwenden.

Wenn Sie die Kontextquellen der generierten Antwort aufrufen möchten, scrollen Sie im Bereich Gemini: Chat nach unten, bis Sie das Snippet Kontextquellen sehen. Snippet maximieren um alle Kontextquellen zu sehen.

Kontextquellen im Bereich „Gemini: Chat“.

Intelligente Befehle verwenden

Intelligente Befehle sind Befehle, die Sie im Inline-Textfeld verwenden können, um bestimmten Aktionen hinzufügen.

So erhalten Sie mit dem intelligenten Befehl /explain eine Erklärung Ihrer gesamten Codedatei:

  1. Öffnen Sie in Ihrer Codedatei das Inline-Textfeld, indem Sie Strg + I (Windows und Linux) oder Befehlstaste + I (macOS) drücken.

  2. Drücken Sie die /-Taste, um eine Liste der Smart-Befehle und ihre Beschreibungen aufzurufen.

  3. Wählen Sie /explain aus.

    Gemini generiert eine Erklärung der gesamten Codedatei im Textfeld ein.

  4. Optional: Wenn Sie die generierte Antwort im Bereich Gemini: Chat ansehen möchten, klicken Sie auf In Google Chat ansehen.

Prompt-Verlauf ansehen

Durch den Zugriff auf den Prompt-Verlauf sparen Sie Zeit, wenn Sie dieselben Informationen Prompt(s) in einer großen Codedatei.

Wenn Sie auf den Prompt-Verlauf zugreifen möchten, öffnen Sie in Ihrer Codedatei das Inline-Textfeld. Drücken Sie dazu Strg + I (Windows und Linux) oder Befehlstaste + I (macOS) und dann Strg + Aufwärtspfeil (Windows und Linux) oder Befehlstaste + Aufwärtspfeil (macOS). So können Sie durch die und verwenden Sie sie bei Bedarf wieder.

Bessere Lesbarkeit des Codes für Nicht-Muttersprachler

Wenn Sie keine Muttersprachler sind und Übersetzungsprogramme verwenden, können Sie Kommentare in anderen Sprachen im Inline-Textfeld eingeben.

Um englische Kommentare in eine andere Sprache umzuwandeln oder neue Kommentare in einer anderen Sprache hinzuzufügen Sprache zu aktivieren, gehen Sie folgendermaßen vor:

  1. Wählen Sie in der Codedatei Code aus, dem Sie Kommentare hinzufügen möchten.

  2. Öffnen Sie das Inline-Textfeld durch Drücken von Strg+I (für Windows und Linux) oder Befehlstaste + I (für macOS).

  3. Geben Sie einen Prompt ein, z. B. Add spanish comments, und drücken Sie die Eingabetaste (für Windows und Linux) oder die Eingabetaste (für macOS) verwenden.

    Gemini generiert Kommentare in der Sprache, die du in deinem Prompt angegeben hast, und sieht sich die Unterschiede zwischen diesen Vorschlägen an.

  4. Um die Änderungen an Ihrem Code zu akzeptieren oder zu verwerfen, klicken Sie auf Akzeptieren oder Verwerfen.

Andere Beispiel-Prompts testen

Nachdem Sie die Abschnitt Code mit Prompts generieren hier -Dokument enthält, probieren Sie einige der folgenden Beispiel-Prompts aus.

Erläuterungen zu Code abrufen

  1. Wählen Sie in Ihrer Codedatei eine Funktion aus, die Sie erklärt haben möchten.
  2. Geben Sie im Bereich Gemini Code Assist den Prompt Explain this code to me ein.

    Gemini verwendet Ihren ausgewählten Code als Referenz und antwortet mit einer Erläuterung der ausgewählten Funktion.

Testpläne erstellen

  1. Wählen Sie in der Codedatei den Code aus, dem Sie Einheitentests hinzufügen möchten.
  2. Geben Sie im Bereich Gemini Code Assist den Prompt Write unit tests for my code ein.

Hilfe zum Debugging von Code

  1. Wählen Sie in der Codedatei den Code aus, in dem Sie Fehler beheben möchten.
  2. Geben Sie im Bereich Gemini Code Assist den Prompt Help me debug my code ein.

Code lesbarer gestalten

  1. Wählen Sie in Ihrer Codedatei den Code aus, der lesbarer gemacht werden soll.
  2. Geben Sie im Bereich Gemini Code Assist den Prompt Make my code more readable ein.

    Wenn Sie sich auf einen bestimmten Teil Ihres Codes konzentrieren möchten, wählen Sie das bevor Sie Gemini auffordern.

Bekannte Probleme

In den folgenden Abschnitten werden die bekannten Probleme mit Gemini Code Assist beschrieben.

Warnungen zur Lizenzwiedergabe bleiben nicht sitzungsübergreifend erhalten

Wenn die Warnungen bei einer Lizenzänderung nicht über mehrere Sitzungen hinweg bestehen, siehe persistente Logs:

  1. Klicken Sie auf das menu Menü > Ansicht. > Ausgabe.

  2. Wählen Sie Gemini Code Assist – Zitate aus.

Verbindungsprobleme im Ausgabefenster von Gemini Code Assist

Wenn im Ausgabefenster von Gemini Code Assist ein Verbindungsfehler oder andere Verbindungsprobleme angezeigt werden, versuchen Sie Folgendes:

  • Konfigurieren Sie Ihre Firewall so, dass der Zugriff auf oauth2.googleapis.com und cloudaicompanion.googleapis.com zugelassen wird.

  • Konfigurieren Sie Ihre Firewall so, dass die Kommunikation über HTTP/2 zugelassen wird, das von gRPC verwendet wird.

Mit dem grpc-health-probe-Tool können Sie die Verbindung testen. Bei einer erfolgreichen Prüfung wird die folgende Ausgabe angezeigt:

$ 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

Eine fehlgeschlagene Prüfung führt zu der folgenden Ausgabe:

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

Führen Sie vor dem grpc-health-probe folgenden Befehl aus, um weitere Details zu erhalten:

export GRPC_GO_LOG_SEVERITY_LEVEL=info

„Gemini Code Assist aktivieren“ wird immer noch angezeigt, nachdem Sie das Gemini Code Assist-Projekt ausgewählt haben

Wenn Sie gemäß der Anleitung in diesem Projekt Ihr Projekt ausgewählt haben, unter anderem zur Aktivierung der Gemini für die Google Cloud API, werden möglicherweise Es gibt ein Problem mit dem LS-Server.

So erhalten Sie weitere Informationen zu Ihrem Problem:

  1. Klicken Sie in der Statusleiste auf spark. Gemini Code Assist und wählen Sie dann Feedback geben aus.

  2. Klicken Sie bei einer der Protokolldateien auf Anzeigen, um weitere Details zu sehen und das Problem zu beheben.

Feedback geben

So geben Sie Feedback zu Ihrer Erfahrung:

  1. Klicken Sie in der Statusleiste auf Gemini Code Assist und dann in der Quick Auswählen die Option Feedback geben aus.

  2. Füllen Sie im Formular die Felder Titel und Kommentare aus.

  3. Wenn Sie Ihre Skaffold- oder AI Companion-Protokolle freigeben möchten, wählen Sie die Option Skaffold-Protokolle senden oder AI Companion-Protokolle senden aus.

  4. Klicken Sie auf Feedback geben.

Nächste Schritte