Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwalten Sie den Chatkontext in GitHub Copilot Chat, indem Sie impliziten Kontext, Verweise, Chatverlauf und Kontextfenstertools kombinieren, um bessere Antworten zu erhalten.
In diesem Artikel erfahren Sie, wie Sie bessere Antworten erhalten, indem Sie weitere Informationen zu Copilot Chat bereitstellen:
- Verstehen des impliziten Kontexts , den Copilot hinter den Kulissen nutzt
- Den Chat mithilfe von Referenzen auf bestimmte Dateien, Änderungen und Commits eingrenzen
- Fügen Sie Bilder an Ihre Aufforderung an, um zusätzlichen Kontext bereitzustellen und Ihre Ideen besser zu veranschaulichen
- Überprüfen Sie die von Copilot verwendete Quelle , um die Antwort zu generieren.
- Verwenden Sie für jeden Ihrer Copilot-Chats unterschiedliche Threads, damit Chatverlauf und Kontext jeweils getrennt bleiben.
- Überwachen der Kontextfensterverwendung
- Konversationsverlauf kompakt zusammenfassen, um Platz freizugeben
Voraussetzungen
Um mit der Verwendung von GitHub Copilot Chat in Visual Studio zu beginnen, benötigen Sie Folgendes:
- Visual Studio 2022 , Version 17.10 oder höher
-
Melden Sie sich mit einem GitHub-Konto bei Visual Studio an, mit Copilot-Zugriff
** Sie können sich für GitHub Copilot kostenlos registrieren.
Impliziter Kontext
Visual Studio stellt automatisch Kontext für die Chataufforderung basierend auf Ihrer aktuellen Aktivität bereit.
Die folgenden Informationen sind implizit im Chatkontext enthalten:
- Der aktuell markierte Text im aktiven Editor.
- Die aktuelle Datei, die im Editor aktiv ist.
Je nach Aufforderung liest Copilot den Inhalt der aktiven Datei vor. Wenn Sie den Inhalt einer anderen Datei explizit in den Chatkontext aufnehmen möchten, wählen Sie die vorgeschlagene Datei mithilfe der + Schaltfläche in der Chatansicht aus, um Anlagen hinzuzufügen.
Referenz: Geltungsbereich: Copilot-Ergebnisse
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.
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.
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.
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.
Auf Commits aus dem Git-Verlauf verweisen
Wenn Sie einen Commit überprüfen und Copilot helfen möchten, Änderungen zu verstehen, potenzielle Probleme zu identifizieren oder eine ähnliche Bearbeitung zu entwerfen, können Sie den Commit-Kontext direkt an GitHub-Copilot Chat anfügen.
Anstatt Commit-IDs in den Chat zu kopieren und einzufügen, verwenden Sie „Zu Chat hinzufügen“, um den ausgewählten Commit-Kontext aus der IDE an den Chat anzuhängen.
Verwenden Sie "Zu Chat hinzufügen " für einen Commit aus einer der folgenden Oberflächen:
- Git-Verlauf (Git>View Branch History)
- File History (klicken Sie mit der rechten Maustaste auf eine Datei in Projektmappen-Explorer und Git>View History)
- Blame-Informationen (mit der rechten Maustaste im Editor klicken, dann Git>Blame-Informationen)
Sie können mehrere Commits auswählen, um mehrere Commits gleichzeitig im Chat anzuhängen.
Nachdem Sie den Commit-Kontext angehängt haben, probieren Sie solche Prompts aus:
- Erläutern Sie diese Änderung.
- Führt dies zu Problemen?
- Schreiben Sie eine ähnliche Änderung für diese andere Datei.
Verweisen auf Änderungen
Mit Visual Studio 2022, Version 17.14 und höher, können Sie Git-Verweise in Copilot Chat verwenden.
Verwenden Sie #changes, um auf Ihre noch nicht übertragenen Änderungen im Fenster Git-Änderungen zu verweisen. Dieser Verweis ist nützlich, wenn Sie möchten, dass Copilot Chat Ihre bisherige Arbeit zusammenfasst, die Auswirkungen ausstehender Änderungen erläutert oder vor dem Commit die nächsten Schritte vorschlägt.
Sie können z. B. Fragen stellen, z. B.:
- Zusammenfassung
#changes. - Was habe ich bisher in
#changesgetan? - Vorschlagen von Komponententests für
#changes.
Öffnen des Dialogfelds Tools>Options, erweitern Sie GitHub>Copilot>Source Control Integration, wählen Sie Enable Git preview features aus, und wählen Sie dann OK aus.
Auf einen Commit verweisen
Verwenden Sie #commit:, um auf einen bestimmten Commit in Copilot Chat zu verweisen. Wenn Sie mit der Eingabe von #commit: beginnen, zeigt Copilot eine Liste der zuletzt verwendeten Commits an, aus denen Sie auswählen können. Wenn Sie auf einen älteren Commit verweisen möchten, geben Sie die Commit-ID direkt danach #commit:ein.
Sie können Commit-Verweise für Aufgaben verwenden, z. B.:
- Erläutern
#commit:. - Schreiben Sie Unit-Tests, um Änderungen in
#commit:abzudecken. - Suchen Sie potenzielle Probleme in
#commit:.
Dieser Verweis ist nützlich, wenn Sie eine frühere Änderung überprüfen, die Absicht hinter einem Commit überprüfen oder Copilot bitten, Ihnen bei der Nachverfolgung früherer Arbeiten zu helfen.
Verweisen auf ein Bild
Mit der Vision-Integration für Copilot Chat in Visual Studio 17.14 und höher können Sie Bilder an Ihre Chataufforderung anfügen und Copilot zusätzlichen Kontext für verbesserte Antworten bereitstellen. Verwenden Sie Bilder in Kombination mit Bereich und anderen kontextbezogenen Features wie Schrägstrichbefehlen , um maßgeschneiderte Antworten zu generieren.
Im folgenden Beispiel interpretiert Copilot das angefügte Bild, um einen Plan zu generieren und Code vorzuschlagen, um ein farbiges Breakout-Spiel von Grund auf neu zu erstellen.
Referenzausgabefenster
Sie können nun das Ausgabefenster als Kontext im Chat verwenden, um Fragen zu stellen und Hilfe zu Ausgabeprotokollen zu erhalten. Unterstützte Ausgabefenster sind Build, Debug, Tests, Quellcodeverwaltung, Paket-Manager oder ein beliebiger anderer aktiver Ausgabefensterbereich.
Referenzieren Sie die Ausgabeprotokolle im Chat auf eine der folgenden Arten:
- Verwenden Sie #output , um direkt im Chat darauf zu verweisen.
- Wählen Sie das ➕ Symbol in der Chateingabe aus, und fügen Sie es als Kontext hinzu
Output logs. - Fragen Sie Copilot direkt, z. B. überprüfen Sie meine Ausgabeprotokolle, und helfen Sie mir, diesen Fehler zu beheben.
- Klicken Sie mit der rechten Maustaste in das Ausgabefenster , und wählen Sie "Mit Copilot erklären" aus, um es anzufügen.
Referenz-URLs
Fügen Sie eine URL in das Eingabeaufforderungsfeld ein, und Copilot ruft Informationen aus dem Web ab, um die Leerzeichen auszufüllen, wenn die Schulungsdaten von Copilot kein Thema abdecken oder wenn Sie auf eine bestimmte Ressource verweisen möchten.
Sie können Copilot beispielsweise auffordern, Ihnen beim Schreiben einer readme.md-Datei basierend auf den bewährten Methoden für GitHub zu helfen.
Beachten Sie, dass Copilot nur auf statische HTML-Inhalte aus der von Ihnen bereitgestellten öffentlichen URL verweisen kann und nicht auf andere Links auf dieser Seite, seiten hinter der Authentifizierung oder auf Inhalte von dynamischen Seiten zugreifen kann.
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 |
| /Erkläre #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 meinem @workspace Wo befindet sich #AddItemToBasket? | Aktuelle Lösung in der IDE geöffnet |
| Fasse #changes zusammen, bevor ich committe | Nicht committete Änderungen im Fenster „Git-Änderungen“ |
| Potenzielle Probleme in #commit:abc1234 suchen | Der angegebene Commit |
| Aktualisieren der Benutzeroberfläche in "App.tsx" auf ähnliche Weise wie dieses Bild | Hochgeladenes Bild |
Ü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.
Organisieren: Verwalten des Chatverlaufskontexts mit Threads
Während Sie mehrere Chataufforderungen in einer Chatsitzung durchlaufen und senden, verwendet Copilot den Verlauf von Chataufforderungen und -antworten als Kontext für Ihre aktuelle Chataufforderung. Dies bedeutet, dass Sie Nachverfolgungsfragen stellen oder Ihre vorherige Frage klären können, ohne den Kontext wiederholen zu müssen. Zum Beispiel können Sie fragen: „Wie unterscheidet sich das von ...?“, „Füge jetzt einen Testfall hinzu“, „Erkläre es ausführlicher“ und mehr.
Um mit einer neuen Chatsitzung zu beginnen und den aktuellen Kontext zu verwerfen, starten Sie einen neuen Thread in der Chatansicht. Dies ist nützlich, wenn Sie zu einem anderen Thema wechseln und den vorherigen Kontext und verlauf vermeiden möchten. Verwenden Sie Threads, um Unterhaltungen auf die jeweilige Aufgabe zu konzentrieren und den Kontext klar zu halten, sodass die Antworten auf den relevanten Verlauf basieren.
Neuer Chatthread
Wählen Sie im Chatfenster " Neuen Thread erstellen" oder "STRG+N " aus, um einen neuen Thread zu starten.
Chatthread wechseln
Sie können zwischen mehreren fortlaufenden Threads auswählen, um den richtigen historischen Kontext für Ihre Frage bereitzustellen. Sie können STRG+PgDown für vorherigen Thread oder STRG+PgUp für den nächsten Thread im Chatfenster verwenden. Strg+Shift+T erweitert das Thread-Dropdown.
Organisieren: Verwalten des Chatverlaufs mit dem Chatverlaufsbereich
Während Sie mehrere Chataufforderungen in einer Chatsitzung durchlaufen und senden, verwendet Copilot den Verlauf von Chataufforderungen und -antworten als Kontext für Ihre aktuelle Chataufforderung. Dies bedeutet, dass Sie Nachverfolgungsfragen stellen oder Ihre vorherige Frage klären können, ohne den Kontext wiederholen zu müssen. Zum Beispiel können Sie fragen: „Wie unterscheidet sich das von ...?“, „Füge jetzt einen Testfall hinzu“, „Erkläre es ausführlicher“ und mehr.
Um mit einer neuen Chatsitzung zu beginnen und den aktuellen Kontext zu verwerfen, starten Sie einen neuen Thread in der Chatansicht. Dies ist nützlich, wenn Sie zu einem anderen Thema wechseln und den vorherigen Kontext und verlauf vermeiden möchten. Verwenden Sie den Chatverlaufsbereich, um Unterhaltungen auf die jeweilige Aufgabe zu konzentrieren und den Kontext klar zu halten, sodass die Antworten auf den relevanten Verlauf basieren.
Neuer Chatthread
Wählen Sie im Chatfenster " Neuen Thread erstellen" oder "STRG+N " aus, um einen neuen Thread zu starten.
Chatthread wechseln
Verwenden Sie den Chatverlaufsbereich, um zwischen Chatsitzungen zu wechseln und den richtigen historischen Kontext für Ihre Frage bereitzustellen.
Jeder Chatverlaufseintrag zeigt Folgendes an:
- Der Chattitel
- Eine Vorschau der aktuellsten Nachricht
- Zeitpunkt der letzten Aktualisierung der Sitzung
Wählen Sie im Bereich eine Sitzung aus, um direkt zu dieser Konversation zu wechseln.
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.
Überwachen und Optimieren der Kontextfensternutzung
Wenn Sie mit Copilot chatten, wird ein Kontextfenster verwendet, das Ihren Unterhaltungsverlauf, angefügte Dateien und andere kontextbezogene Eingaben enthält. Wenn sich das Kontextfenster füllt, kann Copilot frühere Details aus dem bisherigen Threadverlauf verlieren.
Verwenden Sie die Kontextfensteranzeige, um die Verwendung in Echtzeit nachzuverfolgen:
- Öffnen Sie das fenster Copilot Chat.
- Suchen Sie in der oberen rechten Ecke des Chataufforderungsfelds die Ringanzeige.
- Wählen Sie den Indikator aus, um den genauen Prozentsatz des verwendeten Kontexts anzuzeigen.
- Überprüfen Sie die Aufschlüsselung, was zur Kontextnutzung beiträgt (z. B. Unterhaltungsnachrichten und Arbeitsbereichsdateien).
Konversationsverlauf zusammenfassen und komprimieren
Die Kompaktierung verringert den von älteren Teilen des aktuellen Gesprächsverlaufs verwendeten Kontextumfang, sodass Sie im selben Gespräch weiterarbeiten können.
Wenn der verfügbare Kontext knapp wird, wählen Sie Unterhaltung zusammenfassen aus, um frühere Teile der Unterhaltung zusammenzufassen und wieder Platz zu schaffen, ohne die aktuelle Unterhaltung zu verlassen.
Verwenden Sie die Komprimierung auf eine der folgenden zwei Arten:
- Wählen Sie über die Kontextfensteranzeige Konversation zusammenfassen aus, um frühere Nachrichten automatisch kompakt zusammenzufassen.
- Geben Sie
/compactjederzeit im Chat ein, um die Konversation manuell zu verdichten.
Nach der Komprimierung behält Copilot eine Zusammenfassung früherer Drehungen statt der vollständigen Transkription bei. Auf diese Weise können Sie den Kontextfensterbereich freigeben und gleichzeitig die Gesamtrichtung des Threads beibehalten.
Komprimierung verwenden, wenn:
- Die Kontextnutzung ist hoch, und Sie möchten vermeiden, dass ein wichtiger aktueller Kontext verloren geht.
- Ein Thread ist lang geworden, aber Sie möchten ihn im selben Chat weiterführen.
- Sie möchten den Fokus verbessern, bevor Sie eine neue Reihe von Nachverfolgungsfragen stellen.
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 neue Threads, um eine neue Unterhaltung für eine neue Aufgabe zu beginnen.
- Wenn Sie denselben Thread beibehalten möchten, verwenden Sie "Unterhaltung zusammenfassen" , wenn die Kontextverwendung hoch ist.
- 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
- GitHub Copilot-Erfahrung für Visual Studio
- GitHub Copilot Chat-Erfahrung für Visual Studio
- Erstellen eines Git-Commits in Visual Studio
- GitHub Copilot Trust Center
- Senden Sie uns Vorschläge, Feedback und Probleme
- Unterstützung für GitHub Copilot Chat
- Verwenden von GitHub Copilot: Aufforderungen, Tipps und Anwendungsfälle