Delen via


Hoe Copilot Chat context begrijpt en gebruikt

Copilot Chat in Visual Studio is ontworpen om contextbewust te zijn en zeer relevante en op maat gemaakte antwoorden te leveren door de structuur en inhoud van uw project diep te begrijpen. In dit artikel vindt u een kijkje achter de schermen in hoe Copilot Chat context bouwt en gebruikt om uw codewerkstroom te verbeteren.

Hoe Copilot Chat oplossingscontext verzamelt

Copilot Chat maakt gebruik van een benadering met meerdere lagen voor het bouwen van context in uw codebasis om ervoor te zorgen dat de suggesties en antwoorden relevant en nauwkeurig zijn.

Codebase-indexering

Als uw opslagplaats wordt gehost op GitHub of Azure DevOps, maakt Copilot een externe index van uw codebasis en berekent een insluiting waarmee patronen en relaties in uw code worden vastgelegd. Meer informatie over externe indexering op GitHub.

Als uw code ergens anders wordt gehost, bouwt Copilot een lokale index.

Op basis van uw prompt kan Copilot bepalen dat er meer projectcontext nodig is om nauwkeurig te reageren. In dergelijke gevallen wordt er een semantische zoekopdracht uitgevoerd op de externe of lokale index.

In tegenstelling tot traditionele zoekopdrachten, die overeenkomt met exacte woorden, is semantische zoekopdracht gericht op betekenis. Met behulp van geavanceerde vector embeddings identificeert Copilot bestanden met de hoogste semantische gelijkenis met uw aanvraag en voegt deze toe aan de context.

Deze bestanden vormen een aanvulling op de systeemprompt, instructies, impliciete context (zoals chatgeschiedenis en open bestanden) en eventuele expliciete inhoud die u opgeeft, zoals fouten.

Meer informatie over het toevoegen van verwijzingen als context in chat.

Hoe Copilot Chat codesuggesties toepast

Copilot Chat biedt regelmatig codesuggesties in de antwoorden. Deze suggesties moeten nauwkeurig worden toegewezen aan uw codebasis voordat ze kunnen worden toegepast en getest.

Codetoewijzing op basis van model

Copilot Chat maakt gebruik van speculatieve decodering om suggesties nauwkeurig in te voegen in bestaande bestanden, waardoor het risico op fouten wordt verminderd. In de agentmodus kan Copilot betrouwbare bewerkingen uitvoeren die ondersteuning bieden voor het bouwen, opsporen van fouten en het onafhankelijk testen van uw code.

Copilot-herinneringen

Copilot-herinneringen stellen Copilot in staat om de specifieke coderingsstandaarden en best practices van uw project te leren, waardoor het projectbewust en consistent is in sessies.

Hoe Copilot-herinneringen werken

Herinneringen gebruiken intelligente detectie om inzicht te hebben in de voorkeuren van uw team wanneer u in de chat wordt gevraagd. Wanneer u een opdracht geeft, identificeert Copilot momenten waarop u het gedrag corrigeert, een norm aangeeft of het vraagt iets te onthouden.

Wanneer dergelijke gevallen worden gedetecteerd, ziet u een bevestigingsnotificatie om de voorkeur op te slaan.

Schermopname van wanneer Copilot een voorkeur detecteert om aan herinneringen toe te voegen.

Copilot categoriseert vervolgens de voorkeur in een van de drie bestanden:

  • .editorconfig voor coderingsstandaarden
  • CONTRIBUTING.md voor beste werkwijzen, richtlijnen en architectuurstandaarden.
  • README.md voor projectinformatie op hoog niveau

Terwijl u Copilot blijft aansturen, leert u het om effectiever te reageren op uw behoeften en helpt u uw team door de beste praktijken voor ontwikkeling te documenteren, die hun toekomstige Copilot-interacties verbeteren.