Freigeben über


Erhalten Sie bessere Antworten, indem Sie den Kontext für GitHub Copilot Chat in Visual Studio festlegen.

Sie können GitHub Copilot Chat in Visual Studio verwenden, um Codierungsinformationen und Unterstützung zu erhalten, z. B. Syntax, Programmierkonzepte, kontextspezifische Codehilfe, Testfälle, Debuggen und vieles mehr, ohne die IDE zu verlassen. Copilot Chat ist in Visual Studio integriert, was bedeutet, dass es verstehen kann, worum Sie gerade arbeiten, indem Sie nützliche Hinweise über das, was Sie in der IDE haben, sammeln.

Zusätzlich zu Ihrer Eingabeaufforderung verwendet Copilot zusätzlichen Kontext, z. B. den Code in Ihrer aktuellen Datei und den Chatverlauf, um eine Antwort zu generieren. In diesem Artikel erfahren Sie, wie Sie bessere Antworten erhalten, indem Sie weitere Informationen zu Copilot Chat bereitstellen, einschließlich:

  • Verwenden Sie Schrägstrichbefehle, um häufig verwendete Aufgaben wie /explain schnell anzugeben und Codeerklärungen zu erhalten.
  • Verwenden Sie die geführte Chat-Erfahrung und die benutzerdefinierten Anweisungen , um den Kontext in Visual Studio 17.12 oder höher zu verfeinern.
  • Beschränken Sie den Chat auf bestimmte Dateien mithilfe von Verweisen.
  • Überprüfen Sie die von Copilot verwendete Quelle, um die Antwort zu generieren.
  • Verwenden Sie unterschiedliche Threads für jeden Ihrer Copilot-Chats, damit Sie unterschiedliche Kontexte in den einzelnen Chats verwalten können.

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:

Der Support für GitHub Copilot Chat wird von GitHub bereitgestellt und kann unter https://support.github.comerreicht werden.

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.

Aktivieren von benutzerdefinierten 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.

So konfigurieren Sie benutzerdefinierte Anweisungen:

  1. Erstellen/Hinzufügen einer benutzerdefinierten Anleitungsdatei .github/copilot-instruction.md im Stammverzeichnis Ihres Repositorys.
  2. Aktivieren Sie das Feature in Visual Studio über Tools>Optionen>GitHub>Copilot> wählen Sie (Vorschau) Aktivieren Sie benutzerdefinierte Anweisungen, die aus GITHUB/copilot-instructions.md-Dateien geladen und Anforderungen hinzugefügt werden sollen..

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 Schrägstrichbefehlen in Copilot Chat für häufige 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
/doc 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
/generate 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
– Gewünschten Code auswählen und /optimize eingeben
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.
Ja Ja

Screenshot: Schrägstrichbefehle in der Inlinechatansicht und Chatfenstern

Verweis: Eingrenzen von Copilot-Ergebnissen auf eine bestimmte Datei oder gesamte Projektmappe

Sie können Ihre Codierungsfragen in natürlicher Sprache stellen. Diese beantwortet GitHub Copilot Chat im Kontext der in Visual Studio geöffneten Codebasis. Mit Referenzen erhalten Sie spezifischere Informationen, die Copilot berücksichtigen soll, wenn Sie Ihre Frage beantworten.

Wenn Sie einen bestimmten Kontext in Ihrer Codebasis auswählen, können Sie problemlos bessere Fragen erstellen, ohne lange Informationen schreiben oder einfügen zu müssen. Durch die Angabe des Kontexts kann Copilot Ihnen auch relevantere Antworten bereitstellen.

Verweisen auf eine Datei

Um auf einfache Weise auf eine Datei in GitHub Copilot Chat zu verweisen, fügen Sie einfach ein # Symbol am Anfang des Dateinamens hinzu. Wenn Sie beispielsweise eine Datei mit dem Namen BasketService.cshaben, verweisen Sie im Chat als #BasketService.csdarauf.

Screenshot der Referenzen im Copilot-Chat.

Verweisen auf eine Methode, Klasse oder Funktion

Mit Visual Studio 2022, Version 17.11, können Sie jetzt auf eine bestimmte Methode, Klasse oder Funktion in GitHub Copilot Chat verweisen.

Um einfach auf eine Methode, Klasse oder Funktion in GitHub Copilot Chat zu verweisen, fügen Sie einfach ein # Symbol am Anfang der Methode, Klasse oder Funktionsnamen hinzu. Wenn Sie beispielsweise eine Methode namens BasketAddItem-haben, verweisen Sie im Chat als #BasketAddItemdarauf.

Screenshot von Verweisen auf Methoden in GitHub Copilot Chat in Visual Studio.

Verweisen auf die gesamte Lösung

Verwenden Sie @workspace, um auf die in der IDE aktive Lösung für den Kontext zu verweisen. Bei der Verwendung von @workspace für den Kontext nutzt Copilot Chat die Informationen zu den Dateien, Projekten und Konfigurationen, die derzeit geöffnet sind und in Ihrer IDE bearbeitet werden. Dadurch kann Copilot Chat relevantere und kontextbezogenere Vorschläge und Antworten bereitstellen.

Screenshot des Referenzlösungskontexts im Copilot-Chat.

Mit Visual Studio 2022, Version 17.11, können GitHub Copilot Enterprise Abonnenten jetzt @github im Chat verwenden, um Kontext aus ihrem gesamten Repository einzuschließen und das Web zu durchsuchen (wenn Suche von Ihrem Administratoraktiviert ist). Weitere Informationen zur Sammlung von GitHub-spezifischen Fähigkeiten, die Copilot verwenden kann, um Ihre Frage bei der Verwendung von @githubzu beantworten, finden Sie unter Verwenden von GitHub-Fähigkeiten für Copilot.

Screenshot der Verwendung von GitHub-Fähigkeiten in Copilot Chat.

Verwendungsbeispiele

Hier sind einige Beispiele für die Verwendung von Verweisen zur Kontextsteuerung:

Beispiel Kontext, der von Copilot verwendet wird, um eine Frage zu bilden
Was ist der Zweck von #MyFile.cs: 66-72? Exakter Abschnitt der Datei
Wo befinden sich die Tests in #BasketService.cs? BasketService.cs
/explain the #AddItemToBasket in #BasketService.cs AddItemToBasket-Methode in BasketService.cs
Gibt es eine Methode zum Löschen von Körben in diesem @workspace? Aktuelle Lösung in der IDE geöffnet
Ich habe eine Testmethode namens #TestCalculator. Wie kann ich sicherstellen, dass sie ordnungsgemäß ausgeführt wird? TestCalculator-Methode
Könnten Sie die Unterschiede zwischen Klassen #BasketService und #OrderService erläutern? BasketService-Klasse und OrderService-Klasse
In my @workspace where is #AddItemToBasket? Aktuelle Lösung in der IDE geöffnet

Überprüfen der von Copilot Chat verwendeten Quellen

Copilot Chat zeigt den Kontext an, der nach jedem Ergebnis verwendet wird, damit Sie feststellen können, was bei der Beantwortung Ihrer Frage berücksichtigt wurde. Wenn Sie Copilot Chat eine Frage stellen und eine Antwort im Chatfenster erhalten, wird unterhalb der Antwort das Dropdownmenü Verweise angezeigt. Die Einträge in der Dropdown-Liste Verweise zeigen Ihnen den Kontext, auf den Copilot Chat zugreift, um diese Antwort zu generieren. Diese Informationen können Ihnen helfen, Ihre Frage zu ändern, um bessere und relevantere Antworten zu erhalten.

Screenshot: Dropdownliste für verwendete Verweise in Copilot Chat

Organisation: Chats mit Copilot in einzelne Threads aufteilen

Wenn Sie Copilot Chat häufig verwenden, um Fragen im Code zu stellen, können Sie Ihre Unterhaltungen auf eine Weise organisieren, die sie auf dem Thema hält. Copilot-Chat für Visual Studio bietet jetzt eine einfache Möglichkeit, neue Unterhaltungen (Threads) zu starten, um sich auf die jeweilige Aufgabe zu konzentrieren und den Kontext klar zu halten, damit die Antworten auf dem relevanten Verlauf basieren.

Neuer Chatthread

Sie können einen neuen Thread starten, indem Sie im Chatfenster den Neuen Thread erstellen auswählen.

Screenshot des Symbols

Chatthread wechseln

Sie können zwischen mehreren fortlaufenden Threads auswählen, um den richtigen historischen Kontext für Ihre Frage bereitzustellen.

Screenshot des Wechsels zwischen laufenden Threads im Copilot-Chat.

Höherstufen des Inlinechats in das Chatfenster

Mit Visual Studio 2022, Version 17.11, können Sie jetzt den Verlauf Ihres Inline-Chats beibehalten, indem Sie ihn in das Chatfensterübertragen. Wählen Sie Im Chatfenster fortsetzen..., um eine Aufzeichnung und den Kontext der Unterhaltung beizubehalten, und setzen Sie im Chatfenster fort.

Screenshot des Verschiebens des laufenden Threads aus dem Inline-Chat ins Chatfenster.

Bewährte Methoden

Copilot Chat verwendet den Chatverlauf, um Kontext zu Ihrer Anfrage zu erhalten. So geben Sie Copilot nur die relevante Geschichte:

  • Verwenden Sie Threads, um eine neue Unterhaltung für eine neue Aufgabe zu beginnen.
  • Löschen Sie Anforderungen, die nicht mehr relevant sind oder die Ihnen das gewünschte Ergebnis nicht gegeben haben.

Lassen Sie die Chatunterhaltung geöffnet, und fordern Sie Copilot auf, die vorgeschlagene Lösung weiter zu verbessern. Copilot hat sowohl den Kontext des generierten Codes als auch den aktuellen Gesprächsverlauf. Während Sie weitere Fragen stellen, optimiert Copilot die Antwort nach Ihren Anforderungen weiter. Weitere Informationen zu den Strategien für effektive Prompts zur Verbesserung Ihrer Copilot-Ergebnisse finden Sie unter Prompt Engineering für GitHub Copilot.

Nächste Schritte