Freigeben über


Anpassen von Chatantworten und Festlegen des Kontexts

Sie können GitHub Copilot Chat bitten, Ihnen Codevorschläge zu geben, Code zu erläutern, Komponententests zu generieren und Codekorrekturen vorzuschlagen. Chat in Visual Studio kann Ihnen Antworten geben und Code generieren, der Ihren Codierungsmethoden und Projektanforderungen entspricht, wenn Sie ihm den richtigen Kontext geben. Anstatt diese Informationen immer wieder in jeder Chataufforderung hinzuzufügen, können Sie diesen Kontext in Dateien speichern und automatisch in jede Chatanfrage einschließen.

In diesem Artikel erfahren Sie, wie Sie bessere Antworten erhalten, indem Sie weitere Informationen zu Copilot Chat bereitstellen:

Erfahren Sie mehr über KI-unterstützte Entwicklung in Visual Studio und wie Sie in Visual Studio Copilot Chatverwenden.

Voraussetzungen

Um mit der Verwendung von GitHub Copilot Chat in Visual Studio zu beginnen, benötigen Sie Folgendes:

Unterstützung für GitHub Copilot Chat wird von GitHub bereitgestellt und kann unter erreicht https://support.github.comwerden.

Promptingleitfaden

Die geführte Chaterfahrung in Visual Studio 17.12 und höher hilft Ihnen, Ihre Eingabeaufforderungen zu verfeinern, um den Kontext für bessere Antworten zu verdeutlichen. GitHub Copilot Chat führt Sie jetzt mit klarstellenden Fragen, wenn der Kontext unklar ist.

Screenshot der geführten Chaterfahrung mit GitHub Copilot Chat.

Verwenden benutzerdefinierter Anweisungen

Mit dem Feature für benutzerdefinierte Anweisungen können Sie Ihren Chatfragen automatisch vordefinierte Kontextdetails hinzufügen. Copilot Chat verwendet diese Anweisungen, die auf Ihren spezifischen Kontext zugeschnitten sind, z. B. die Funktionsweise Ihres Teams, die von Ihnen verwendeten Tools oder die Besonderheiten Ihres Projekts beim Generieren von Antworten.

Screenshot der benutzerdefinierten Anweisungsdateien, die von Copilot in der Liste

Verwenden Sie eine .github/copilot-instructions.md-Datei

So verwenden Sie eine .github/copilot-instructions.md Datei:

  1. Erstellen/Hinzufügen einer benutzerdefinierten Anleitungsdatei .github/copilot-instructions.md im Stammverzeichnis Ihres Repositorys.
  1. Aktivieren Sie das Feature in Visual Studio im Bereich Extras>Optionen. Erweitern Sie den Abschnitt "Alle Einstellungen">"GitHub">"Copilot">"Copilot Chat", und aktivieren Sie das Kontrollkästchen "Benutzerdefinierte Anweisungen aktivieren, die aus .github/copilot-instructions.md-Dateien geladen und zu Anforderungen hinzugefügt werden".
  1. Aktivieren Sie das Feature in Visual Studio über das Dialogfeld ">". Erweitern Sie den GitHub>Copilot-Abschnitt, und wählen Sie in der Copilot-Chat-Gruppe das Kontrollkästchen "Benutzerdefinierte Anweisungen aus .github/copilot-instructions.md-Dateien laden und zu Anforderungen hinzufügen aktivieren" aus.

Benutzerdefinierte Anweisungen sind in der Chatansicht oder inline-Chats nicht sichtbar. Bei Verwendung von Copilot wird die.github/copilot-instructions.md Datei jedoch in der Liste "Verweise" einer Antwort aufgeführt.

Verwenden von .instructions.md-Dateien

Anstatt eine einzelne Anleitungsdatei zu verwenden, die für alle Chatanfragen gilt, können Sie mehrere *.instructions.md Dateien erstellen, die für bestimmte Dateitypen oder Aufgaben gelten. Sie können z. B. Anweisungendateien für verschiedene Programmiersprachen, Frameworks oder Projekttypen erstellen.

So verwenden Sie eine .github/instructions/*.instructions.md Datei:

  1. Erstelle das .github/instructions-Verzeichnis, wenn es noch nicht vorhanden ist.

  2. Fügen Sie ein oder mehrere .github/instructions/*.instructions.md Dateien hinzu.

  3. Fügen Sie die applyTo Eigenschaft im Frontmatterabschnitt der Anweisungendatei hinzu. Verwenden Sie glob-Syntax, um anzugeben, auf welche Dateien oder Ordner die Anweisungen angewendet werden.

  4. Aktivieren Sie das Feature in Visual Studio.

    Im Bereich "Extras>Optionen" erweitern Sie den Abschnitt "Alle Einstellungen>GitHub>Copilot>Chat" und wählen Sie das Kontrollkästchen "Benutzerdefinierte Anweisungen aus .github/copilot-instructions.md-Dateien laden und zu Anfragen hinzufügen aktivieren" aus.

    Erweitern Sie im Dialogfeld ">" den Abschnitt "GitHub>Copilot". Wählen Sie in der Gruppe "Copilot-Chat" das Kontrollkästchen "Benutzerdefinierte Anweisungen aktivieren, die aus .github/copilot-instructions.md-Dateien geladen und zu Anfragen hinzugefügt werden" aus.

Anleitungsdateiformat

Gezielte Anweisungsdateien verwenden die .instructions.md Erweiterung und weisen diese Struktur auf:

  • Header (optional): YAML-Frontmatter
    • description: Beschreibung, die beim Zeigen darauf in der Chatansicht angezeigt wird
    • applyTo: Glob-Muster, das den Dateien oder Ordnern entspricht, auf die die Anweisungen angewendet werden sollen
  • Textkörper: Anweisungen im Markdown-Format

Example

Hier ist ein Beispiel für eine benutzerdefinierte C#-Anweisung:

## C# Instructions
---
applyTo: `**/*.cs`
---

- Write clear and concise comments for each function.
- Use PascalCase for component names, method names, and public members.
- Use camelCase for private fields and local variables.
- Add a newline before the opening curly brace of any code block  
  (such as after `if`, `for`, `while`, `foreach`, `using`, `try`, etc.).
- Ensure that the final `return` statement of a method is on its own line.

Kopieren Sie diese Anweisungen in Ihre .github/instructions/*.instructions.md Datei, um das Copilot-Verhalten zu verwenden und automatisch anzuwenden.

Weitere Beispiele für benutzerdefinierte Anweisungen finden Sie in der Liste der Anleitungsbeispiele auf GitHub.

Funktionsweise von Anweisungsdateien

Wenn Sie mit Copilot arbeiten, erkennt es automatisch, welche Anweisungsdateien für Ihren aktuellen Kontext relevant sind, und fügt sie als Verweise an. Dadurch wird sichergestellt, dass die Vorschläge von Copilot immer an den Regeln Ihres Projekts ausgerichtet sind, unabhängig davon, wo Sie in Ihrer Codebasis arbeiten.

Die von Copilot verwendeten Anweisungsdateien sind in der Liste "Verweise" der Antwort aufgeführt.

Verwenden Sie Prompt-Dateien

Sie können jetzt wiederverwendbare Eingabeaufforderungsdateien in Ihrem Repository erstellen, um Ihre häufig verwendeten Eingabeaufforderungen auszuführen oder freizugeben.

So erstellen Sie eine Aufforderungsdatei:

  1. Schreiben Sie Ihre Prompts wie gewohnt in das Prompt-Feld und verwenden Sie #-Referenzen, um bestimmte Informationen aus Ihrer Lösung aufzunehmen, wie z. B. Methoden, Klassen und Dateien. Sie können sogar auf andere Eingabedateien für gemeinsame Anweisungen verweisen.
  2. Kopieren Sie die Eingabeaufforderung in eine Markdowndatei, und speichern Sie sie mit der .prompt.md Erweiterung im .github/prompts Ordner im Stammverzeichnis Ihres Repositorys.

So verwenden Sie eine Promptdatei:

  1. Geben Sie #prompt: im Chat-Eingabefeld ein, um auf beliebige Prompt-Dateien aus Ihrem .github/promptsOrdner zu verweisen, oder klicken Sie auf das ➕-Symbol im Chat-Eingabefeld, um sie als Kontext hinzuzufügen.
  2. Fügen Sie zusätzliche Details hinzu, oder geben Sie einfach die Eingabeaufforderung wie folgt ein.

Screenshot der Verwendung von Prompt-Dateien in GitHub Copilot Chat.

Verwenden von Schrägstrichbefehlen zum Festlegen des Kontexts für allgemeine Aufgaben

Schrägstrichbefehle in Copilot Chat helfen Ihnen, die Absicht für allgemeine Entwicklungsaufgaben schnell festzulegen. Wenn Sie bestimmte Schrägstrichbefehle verwenden, um Ihre Frage zu bilden, können Sie bessere Antworten erhalten, ohne lange Fragen schreiben zu müssen.

Sie können Schrägstrichbefehle in einem Chatfenster oder mithilfe der Inlinecodeunterstützung direkt inline im Code verwenden, den Sie ändern möchten. Befehle, mit denen Sie die Codedatei ändern oder hinzufügen können, die Sie im Editor geöffnet haben, funktionieren sowohl im Inlinecode-Assistenten als auch in den Chatfenstern, während Befehle für allgemeinere Codierungsfragen nur im Chatbereich funktionieren.

Befehl Verwendung Chatfenster Inlinechat
/Doktor Fügen Sie Kommentare für angegebenen oder ausgewählten Code hinzu.
Beispiele:
- /doc DeleteBasketAsync method in BasketService.cs
– Wählen Sie den gewünschten Code aus, und geben Sie /doc ein.
Ja Ja
/erklären Abrufen von Codeerklärungen.

Beispiele:
- /explain the AddItemToBasket method in BasketService.cs
– Wählen Sie den gewünschten Code aus, und geben Sie /explain ein.
Ja Ja
/beheben Schlagen Sie eine Lösung für Probleme im ausgewählten Code vor.
Beispiele:
- /fix the SetQuantities method in BasketService.cs
– Wählen Sie den gewünschten Code aus, und geben Sie /fix ein.
Ja Ja
/erzeugen Generieren Sie Code, um die angegebene Frage zu beantworten.
Beispiel: /generate code to add two numbers in Calculator.cs
Ja Ja
/Hilfe Erhalten Sie Hilfe zur Verwendung von Copilot Chat.
Beispiel: /help
Ja Ja
/optimieren Analysieren und verbessern Sie die Laufzeit des ausgewählten Codes.
Beispiele:
- /optimize the AddItemToBasket method in BasketService.cs
– Wählen Sie den gewünschten Code aus, und geben Sie /optimize ein.
Ja Ja
/Tests Erstellen Sie Komponententests für den ausgewählten Code.
Beispiel: Wählen Sie den gewünschten Code aus, und geben Sie /tests using XUnit Framework ein.
Für .NET empfehlen wir GitHub Copilot Testing für .NET
Ja Ja

Screenshot: Schrägstrichbefehle in der Inlinechatansicht und Chatfenstern

Sobald der Benutzer in Visual Studio 2022 Version 17.13 einen Slash-Befehl eingibt, erweitert sich die Eingabeaufforderung in natürlicher Sprache, um den Kontext des Befehls anzuzeigen.

Copilot-Aktionen verwenden

Sie können Copilot-Aktionen aus dem Kontextmenü verwenden, um schnell auf vorkonfigurierte Eingabeaufforderungen und Schrägstrichbefehle für allgemeine Entwicklungsaufgaben zuzugreifen.

Screenshot der Copilot-Aktionen im Kontextmenü.

Das Verhalten jeder Aktion hängt davon ab, ob Beim Öffnen des Kontextmenüs Code ausgewählt wurde:

Action Mit ausgewähltem Code Ohne Code ausgewählt
Erklären Erläutert den ausgewählten Code Erläutert den Code in der Nähe der Cursorposition.
Auswahl optimieren Optimiert den ausgewählten Code für Leistung, Wartung, Zuverlässigkeit und Architektur Nicht anwendbar
Kommentare generieren Generiert Kommentare für den ausgewählten Code. Generieren von Kommentaren für Code in der Nähe der Cursorposition
Generieren von Tests Generiert Tests für den ausgewählten Code. Generieren von Tests für Code in der Nähe der Cursorposition
Zu Chat hinzufügen Fügt den ausgewählten Code zu Chat als Referenz hinzu. Hinzufügen der gesamten Datei zum Chat als Referenz

Wenn Sie eine Aktion außer "Auswahl optimieren" auswählen, wird das Chatfenster automatisch geöffnet und sendet einen Schrägstrichbefehl an Copilot mit dem entsprechenden bereichsbezogenen Kontext. Sie können dann die Antwort von Copilot im Chatfenster überprüfen und mit ihnen interagieren.

Verwenden der Option "Auswahl optimieren" für besseren Code

Wählen Sie einen bestimmten Codeabschnitt aus und dann "Auswahl optimieren", damit Copilot nur diesen Abschnitt analysiert und verbessert, anstatt eine gesamte Datei.

Copilot untersucht den ausgewählten Code und seinen umgebenden Kontext, um aussagekräftige, kontextbezogene Vorschläge bereitzustellen. Die Optimierung behält Ihre vorhandene Codeformatvorlage, -struktur und -funktionalität bei, wobei Ihre Codebasis organisiert und konsistent bleibt. Im Gegensatz zu anderen Aktionen, die den Chatbereich verwenden, stellt "Auswahl optimieren" Vorschläge als Inline-Diff dar, die Sie direkt überprüfen, annehmen oder ablehnen können.

Copilot bietet Optimierungsvorschläge in diesen Bereichen:

  • Leistung: Schnellere Algorithmen, reduzierte Speicherauslastung, asynchrone Muster
  • Wartbarkeit: Vereinfachte Logik, klarere Struktur, bessere Benennung
  • Zuverlässigkeit: Fehlerbehandlung, Ressourcenbereinigung, Threadsicherheit
  • Architektur: Abhängigkeitsinjektion, bessere Schnittstellen, modulares Design

Nächste Schritte