Freigeben über


Wie Copilot Chat Kontext versteht und verwendet

Copilot Chat in Visual Studio ist darauf ausgelegt, kontextbewusst zu sein und hoch relevante und maßgeschneiderte Antworten zu liefern, indem sie die Struktur und den Inhalt Ihres Projekts tief verstehen. In diesem Artikel wird im Hintergrund erläutert, wie Copilot Chat Kontext erstellt und verwendet, um Ihren Codierungsworkflow zu verbessern.

Wie Copilot Chat den Lösungskontext sammelt

Copilot Chat verwendet einen mehrschichtigen Ansatz zum Kontextaufbau innerhalb Ihrer Codebasis, um sicherzustellen, dass seine Vorschläge und Antworten relevant und korrekt sind.

Codebasisindizierung

Wenn Ihr Repository auf GitHub oder Azure DevOps gehostet wird, erstellt Copilot einen Remoteindex Ihrer Codebasis und berechnet eine Einbettung, die Muster und Beziehungen in Ihrem Code erfasst. Weitere Informationen zur Remoteindizierung auf GitHub.

Wenn Ihr Code an anderer Stelle gehostet wird, erstellt Copilot einen lokalen Index.

Basierend auf Ihrer Eingabeaufforderung kann Copilot feststellen, dass es mehr Projektkontext benötigt, um genau zu reagieren. In solchen Fällen führt sie eine semantische Suche im Remote- oder lokalen Index durch.

Im Gegensatz zur herkömmlichen Suche, die exakten Wörtern entspricht, konzentriert sich die semantische Suche auf die Bedeutung. Mit erweiterten Vektoreinbettungen identifiziert Copilot Dateien mit der höchsten semantischen Ähnlichkeit mit Ihrer Anforderung und fügt sie dem Kontext hinzu.

Diese Dateien ergänzen die Systemaufforderung, Anweisungen, impliziten Kontext (z. B. Chatverlauf und geöffnete Dateien) und alle expliziten Inhalte, die Sie bereitstellen, z. B. Fehler.

Erfahren Sie, wie Sie Im Chat Verweise als Kontext hinzufügen .

So wendet Copilot Chat Codevorschläge an

Copilot Chat bietet häufig Codevorschläge in seinen Antworten. Diese Vorschläge müssen Ihrer Codebasis genau zugeordnet werden, bevor sie angewendet und getestet werden können.

Modellbasierte Codezuordnung

Copilot Chat verwendet spekulative Decodierung, um Vorschläge genau in vorhandene Dateien einzufügen, wodurch das Risiko von Fehlern verringert wird. Im Agent-Modus kann Copilot zuverlässige Bearbeitungen vornehmen, die das Erstellen, Debuggen und Testen Ihres Codes unabhängig unterstützen.

Copilot-Gedächnis

Copilot-Speicher ermöglichen es, dass Copilot die spezifischen Codierungsstandards und bewährten Methoden Ihres Projekts kennenlernen kann, wodurch es projektbewusst und konsistent über Sitzungen hinweg bleibt.

So funktioniert das Copilot-Gedächnis

Erinnerungen nutzen eine intelligente Erkennung, um die Präferenzen Ihres Teams zu verstehen, während Sie im Chat Prompts nutzen. Während Sie einen Impuls geben, identifiziert Copilot Fälle, in denen Sie sein Verhalten korrigieren, einen Standard angeben oder ihn bitten, sich etwas zu merken.

Wenn solche Fälle erkannt werden, wird eine Bestätigungsaufforderung angezeigt, um die Einstellung zu speichern.

Screenshot, der zeigt, wann Copilot eine Präferenz erkennt, die zu Erinnerungen hinzugefügt werden soll.

Copilot kategorisiert dann die Präferenz in einer von drei Dateien.

  • .editorconfig für Coding-Standards
  • CONTRIBUTING.md für bewährte Methoden, Richtlinien und Architekturstandards.
  • README.md für übergeordnete Projektinformationen

Während Sie Copilot weiterhin auffordern, lernen Sie es, effektiver auf Ihre Bedürfnisse zu reagieren und Ihr Team zu unterstützen, indem Sie bewährte Methoden für die Entwicklung dokumentieren, die ihre zukünftigen Copilot-Interaktionen verbessern.