GitHub Copilot Chat
GitHub Copilot Chat ist ein erweitertes Feature des GitHub Copilot-Ökosystems, das Entwicklern einen interaktiven, unterhaltungsbasierten KI-Assistenten direkt in ihrer Entwicklungsumgebung zur Verfügung stellt. Es ermöglicht Entwicklern, natürliche Sprachdialoge über ihren Code zu führen, Fragen zu stellen und intelligente Antworten und Vorschläge in Echtzeit zu erhalten. In dieser Einheit behandeln wir:
- Gewusst wie: Generieren von Code mithilfe von GitHub Copilot Chat
- Debuggen mit GitHub Copilot Chat
- Gewusst wie: Codeerklärungen mit GitHub Copilot Chat
- Verwenden von Schrägstrich-Befehlen zum Ausführen von Aktionen mit GitHub Copilot
- Verwenden von benutzerdefinierten GitHub Copilot-Agents zur Verbesserung von Prompts
Um auf Copilot in Ihrer integrierten Entwicklungsumgebung (Integrated Development Environment, IDE) zuzugreifen, klicken Sie auf das Chatsymbol auf der linken Navigationsleiste.
GitHub Copilot Chat ist in bestimmten Szenarien von Vorteil:
Komplexe Codegenerierung: Wenn Sie komplexe Algorithmen, Datenstrukturen implementieren oder Codebausteine für bestimmte Entwurfsmuster generieren müssen, kann Copilot Chat zur Optimierung des Prozesses beitragen. Es kann dazu beitragen, komplexe reguläre Ausdrücke zu erstellen, detaillierte SQL-Abfragen zu erstellen oder erweiterte Datenstrukturen wie eine Blasensortierung in Python zu entwickeln.
Debugging-Unterstützung: Wenn Fehler in Ihrem Code auftreten, kann Copilot Chat Sie bei der Analyse von Fehlermeldungen unterstützen und potenzielle Korrekturen vorschlagen. Copilot Chat kann helfen, logische Fehler zu identifizieren und schrittweise Erläuterungen problematischer Codeabschnitte bereitzustellen. Eine Möglichkeit, dieses Ergebnis zu erzielen, besteht darin, dass Copilot inline-Chat verwendet wird, indem der Codeabschnitt hervorgehoben wird, der den Fehler enthält, klicken Sie mit der rechten Maustaste, und wählen Sie "Copilot" und dann "Inline-Chat" aus.
Sie könnten z. B. fragen: „Ich erhalte eine
NullReferenceExceptionin dieser Methode. Kannst du mir beim Debuggen helfen?“
Codeerklärungen: Copilot Chat kann auch verwendet werden, um komplexe Codeausschnitte besser zu verstehen. Copilot Chat kann Code in einfachere Begriffe zerlegen, den Zweck und die Funktionalität von unbekanntem Code erläutern und Einblicke in bewährte Methoden und potenzielle Optimierungen bieten. Sie könnten z. B. fragen: „Kannst du erklären, wie dieser asynchrone/await-Code in Python funktioniert?“
Gewusst wie: Verbessern der Antworten von GitHub Copilot Chat
Sie können die Qualität und Relevanz der Antworten von GitHub Copilot Chat mit bestimmten wichtigen Features deutlich verbessern. Sehen wir uns das genauer an.
Bereichsverweise
Um die Genauigkeit und Relevanz der Antworten zu verbessern, die von GitHub Copilot Chat bereitgestellt werden, ist es wichtig, Ihre Fragen mithilfe von Verweisen richtig einzugrenzen. Gehen Sie hierzu wie folgt vor:
Dateiverweise: Sie können eine bestimmte Datei in Ihrer Frage angeben, indem Sie dem Dateinamen
#file:voranstellen.Wenn Sie z. B. mit einer Datei mit dem Namen
controller.jsarbeiten, können Sie den Befehl #file verwenden, um sie auszuwählen und direkt in Ihrer Frage mit#file:controller.jsdarauf zu verweisen. Dieses Feature weist Copilot Chat an, sich beim Generieren einer Antwort auf den Inhalt dieser Datei zu konzentrieren.Umgebungsverweise: Mit
@workspacekönnen Sie auf die gesamte Lösung oder den gesamten Arbeitsbereich verweisen. Mit diesem Feature kann Copilot Chat den umfassenderen Kontext der Projekte und Konfigurationen berücksichtigen, die derzeit in Ihrer Visual Studio-IDE geöffnet sind. Wenn Sie beispielsweise "@workspace, wo ist die Funktion 'Berechnung'?" eingeben, wird Copilot aufgefordert, die gesamte Lösung zu berücksichtigen, um die relevantesten Informationen zu finden.
Slash-Befehle
Mit den Schrägstrich-Befehlen in GitHub Copilot Chat können Sie schnell die Absicht Ihrer Abfrage angeben. Indem Sie stärker fokussierte Anforderungen formulieren, können Sie die Qualität der Antworten erheblich verbessern. Es folgen einige häufig verwendete Schrägstrich-Befehle:
/doc: Fügt dem angegebenen oder ausgewählten Code Kommentare hinzu. Zum Beispiel können Sie
/docgefolgt von dem Code eingeben, den Sie dokumentieren möchten, und Copilot generiert entsprechende Kommentare./explain: Bietet Erläuterungen für ausgewählten Code. Dieser Befehl ist nützlich, wenn Sie verstehen müssen, was ein bestimmter Codeabschnitt tut. Beispielsweise liefert
/explain the #file:controller.jsIhnen eine ausführliche Erläuterung dieser Datei./fix: Schlägt Korrekturen für Probleme im ausgewählten Code vor. Wenn Probleme auftreten, können Sie den problematischen Abschnitt hervorheben und durch die Eingabe von
/fixVorschläge zur Lösung des Problems erhalten./generate: Dient zum Generieren von neuem Code basierend auf Ihren Anforderungen. Zum Beispiel erstellt
/generate code to find the root of a number in client.jseine Funktion, um die Aufgabe auszuführen./optimize: Analysiert und schlägt Verbesserungen der Laufzeit oder Effizienz des ausgewählten Codes vor. So fokussiert sich
/optimize thecalculatemethod in controller.jsz. B. darauf, die Leistung dieser speziellen Methode zu verbessern./tests: Erstellt automatisch Komponententests für den ausgewählten Code. Sie können den Code einfach hervorheben und
/tests using Mochazum Generieren von Tests verwenden.
Modellauswahl und Premium-Features
GitHub Copilot Chat bietet verschiedene KI-Modelle, um Ihren Entwicklungsworkflow zu optimieren. Einige Umgebungen bieten Modellauswahloptionen, mit denen Sie je nach Ihren spezifischen Anforderungen zwischen verschiedenen Funktionsstufen wählen können:
Standardmodelle (GPT-4o):
- Schnelle, zuverlässige Antworten für die meisten Entwicklungsaufgaben bereitstellen
- Eine PRU pro Anfrage verbrauchen
- Ideal für Routinecodierungsunterstützung, Codeerklärungen und grundlegendes Debuggen
- Beispiele: Einfache Funktionsgenerierung, Syntaxhilfe, grundlegende Umgestaltungsvorschläge
Premiummodelle (o1-Preview, o1-mini):
- Bieten Sie erweiterte analytische Fähigkeiten für komplexe Probleme
- Verbrauchen Sie 2 PRUs pro Anforderung (doppelte Standardrate)
- Besser geeignet für anspruchsvolle Analysen, komplexe Algorithmen und Architekturentscheidungen
- Beispiele: Erweitertes Debuggen von Multithread-Code, komplexer Algorithmusentwurf, Sicherheitsanalyse
Bei der Arbeit an anspruchsvollen Problemen, die tiefes Denken erfordern, können Premium-Modelle gründlichere Analysen und umfassende Lösungen bereitstellen. Berücksichtigen Sie jedoch ihre PRU-Verwendung beim Auswählen von Modellen für verschiedene Arten von Aufgaben.
Hinweis
Die Verwendung von Premiummodellen (o1-Preview, o1-mini) verbraucht 2 PRUs anstelle von 1 für dieselbe Anforderung. Überwachen Sie Ihre monatlichen Zulagen und wählen Sie das entsprechende Modell basierend auf der Aufgabenschwierigkeit aus. Aktuelle Informationen zu PRU-Verbrauch und -Grenzwerten finden Sie in der Dokumentation zu Anforderungen in GitHub Copilot.
Copilot-Agents
GitHub Copilot Agents sind benutzerdefinierte Tools, die Sie mit GitHub Copilot Chat erstellen und darin integrieren können, um zusätzliche Funktionen bereitzustellen, die auf Ihre spezifischen Anforderungen zugeschnitten sind. Neben den Schrägstrich-Befehlen können Sie bestimmte Agents innerhalb von Copilot-Chat in Ihrer IDE verwenden, um verschiedene Aufgaben zu verarbeiten:
@workspace: Dieser Agent ermöglicht es Ihnen, den Kontext aller Fragen, die Sie Copilot stellen, auf das gesamte Projekt zu erweitern. Es ist nützlich, Code zu generieren, der sofort in Ihr Projekt passt, indem Informationen aus Ihrem gesamten Projekt verwendet werden. Er kann auch verwendet werden, um Antworten zu Ihrer gesamten Codebasis zu erhalten.
Sie können auch die intelligente Aktion "@workspace /new" verwenden, mit der Sie ein völlig neues Projekt basierend auf Ihren Anforderungen generieren können. Beispiel: "@workspace /new generieren neue HTML-Dateiseiten und JavaScript für erweiterte Berechnungen"
Klicken Sie auf „Arbeitsbereich erstellen“, um mit der Codegenerierung fortzufahren. Daraufhin wird im Handumdrehen Ihr neues Projekt mit dem angeforderten Code erstellt.
@terminal: Dieser Agent ist nützlich für Fragen im Zusammenhang mit er Befehlszeile. Sie könnten ihn beispielsweise auffordern, die größte Datei in einem Verzeichnis zu finden oder den zuletzt ausgeführten Befehl zu erläutern.
@vscode: Verwenden Sie diesen Agent, um Fragen im Zusammenhang mit Visual Studio Code zu stellen, z. B. wie Sie Einstellungen innerhalb der IDE debuggen oder ändern können.
Durch den effektiven Einsatz dieser Tools und Techniken können Sie die Qualität der Antworten, die Sie vom GitHub Copilot Chat erhalten, erheblich verbessern und so Ihre Programmierarbeit effizienter und produktiver gestalten.
Hinweis
Erweiterte Agents wie @workspace und komplexe Vorgänge können mehr Premium Request Units (PRUs) verbrauchen. Einfache Abfragen verwenden in der Regel 1 PRU, während komplexe Arbeitsbereichsanalysen oder Projektgenerierung 2-5 PRUs verwenden können. Aktuelle Informationen zum PRU-Verbrauch, monatlichen Zulagen und Zinslimits finden Sie in der Dokumentation zu Anfragen in GitHub Copilot.
Teilen von Feedback im GitHub Copilot Chat
Die meisten IDEs mit Copilot Chat-Integration verfügen über integrierte Feedbackmechanismen. In Visual Studio Code finden Sie beispielsweise Feedbackoptionen am Anfang der Vorschläge von GitHub Copilot Chat. Zeigen Sie mit der Maus auf einen Vorschlag, und Sie sollten die Schaltflächen "Daumen nach oben" und "Daumen nach unten" sehen.
Klicken Sie auf den nach oben gerichteten Daumen, um einen Vorschlag als hilfreich zu bewerten.
Klicken Sie auf den nach unten gerichteten Daumen, um einen Vorschlag als wenig hilfreich zu bewerten.