Delen via


Chatcontext beheren met verwijzingen

Beperk uw vragen tot GitHub Copilot Chat met behulp van verwijzingen, naast de impliciete contextuele kennis, om betere antwoorden te krijgen.

In dit artikel leert u hoe u betere antwoorden krijgt door meer informatie te geven aan Copilot Chat:

  • Inzicht krijgen in de impliciete context die Copilot achter de schermen gebruikt
  • Beperk de chat tot specifieke bestanden door gebruik te maken van verwijzingen
  • Voeg afbeeldingen toe aan uw prompt om extra context te bieden en uw ideeën beter te illustreren
  • Controleer de bron die door Copilot wordt gebruikt om het antwoord te genereren
  • Gebruik verschillende threads voor elk van uw Copilot-chats om de chatgeschiedenis en verschillende context in elk te behouden

Vereiste voorwaarden

U hebt het volgende nodig om aan de slag te gaan met GitHub Copilot Chat in Visual Studio:

Impliciete context

Visual Studio biedt automatisch context aan de chatprompt op basis van uw huidige activiteit.

De volgende informatie wordt impliciet opgenomen in de chatcontext:

  • De momenteel geselecteerde tekst in de actieve editor.
  • Het huidige bestand dat actief is in de editor.

Afhankelijk van uw prompt leest Copilot de inhoud van het actieve bestand. Als u de inhoud van een ander bestand expliciet wilt opnemen in de chatcontext, selecteert u het voorgestelde bestand met behulp van de + knop in de chatweergave om bijlage toe te voegen.

Schermopname van impliciete context in Copilot Chat.

Naslaginformatie: Copilot-resultaten van bereik

U kunt uw codegerelateerde vragen in natuurlijke taal stellen en GitHub Copilot Chat beantwoordt deze in de context van de codebase die is geopend in Visual Studio. Met verwijzingen kunt u specifiekere informatie krijgen over de informatie die Copilot moet overwegen bij het beantwoorden van uw vraag.

Door een specifieke context in uw codebasis te selecteren, kunt u eenvoudig betere vragen vormen zonder lange stukjes informatie te hoeven schrijven of plakken. Als u de context opgeeft, kan Copilot u ook relevantere antwoorden geven.

Schermopname van verwijzingen in Copilot Chat.

Verwijzen naar een bestand

Als u eenvoudig wilt verwijzen naar een bestand in GitHub Copilot Chat, voegt u een # symbool toe aan het begin van de bestandsnaam. Als u bijvoorbeeld een bestand met de naam BasketService.cshebt, raadpleegt u het in de chat als #BasketService.cs.

Schermopname van bestandsreferentie in Copilot Chat.

Verwijzen naar een methode, klasse of functie

Met Visual Studio 2022 versie 17.11kunt u nu verwijzen naar een specifieke methode, klasse of functie in GitHub Copilot Chat.

Als u eenvoudig wilt verwijzen naar een methode, klasse of functie in GitHub Copilot Chat, voegt u een # symbool toe aan het begin van de methode, klasse of functienaam. Als u bijvoorbeeld een methode hebt met de naam BasketAddItem, raadpleegt u deze in de chat als #BasketAddItem.

Schermopname van verwijzingen naar methoden in GitHub Copilot Chat in Visual Studio.

Verwijzen naar de hele oplossing

Gebruik @workspace om te verwijzen naar de oplossing die in de IDE actief is voor contextuele doeleinden. Wanneer u @workspace gebruikt voor context, maakt Copilot Chat gebruik van de informatie over de bestanden, projecten en configuraties die momenteel zijn geopend en waaraan binnen uw IDE wordt gewerkt. Hierdoor kan Copilot Chat relevantere en contextbewuste suggesties en antwoorden bieden.

Schermopname van refereren naar de context van de oplossing in Copilot Chat.

Met Visual Studio 2022 versie 17.11 kunnen GitHub Copilot Enterprise-abonnees nu @github in chat gebruiken om context op te nemen vanuit hun hele opslagplaats en om op internet te zoeken (als zoekopdracht is ingeschakeld door uw beheerder). Zie @githubvoor meer informatie over de verzameling van gitHub-specifieke vaardigheden die Copilot kan gebruiken om uw vraag te beantwoorden wanneer u gebruikt.

Schermopname van het gebruik van GitHub-vaardigheden in Copilot Chat.

Naar een afbeelding verwijzen

Met vision-integratie voor Copilot Chat in Visual Studio 17.14 en hoger kunt u afbeeldingen toevoegen aan uw chatprompt, zodat Copilot extra context biedt voor verbeterde antwoorden. Gebruik afbeeldingen in combinatie met bereik en andere contextuele functies, zoals slash-opdrachten om aangepaste antwoorden te genereren.

In het volgende voorbeeld interpreteert Copilot de bijgevoegde afbeelding om een plan te genereren en code voor te stellen om een kleurrijk breakoutspel helemaal opnieuw te maken.

Schermopname van een voorbeeldscenario van het toevoegen van een afbeelding in Copilot Chat.

Uitvoervenster voor Referentie

U kunt nu het uitvoervenster gebruiken als context in chat om vragen te stellen en hulp te krijgen bij uitvoerlogboeken. Ondersteunde uitvoervensters zijn Build, Debug, Tests, Source Control, Package Manager of een ander actief uitvoervenster.

Raadpleeg de uitvoerlogboeken in chat op een van de volgende manieren:

  • Gebruik #output om er rechtstreeks in de chat naar te verwijzen.
  • Selecteer het ➕ pictogram in de chatinvoer en voeg deze toe Output logs als context.
  • Vraag Copilot bijvoorbeeld rechtstreeks naar mijn uitvoerlogboeken en help me deze fout op te lossen.
  • Klik met de rechtermuisknop in het uitvoervenster en selecteer Uitleg met Copilot om deze toe te voegen.

Schermopname van het uitvoervenster als context in Copilot Chat.

Referentie-URLs

Plak een URL in het promptvak en Copilot haalt gegevens van het web op om de lege waarden in te vullen wanneer de trainingsgegevens van Copilot geen onderwerp behandelen of wanneer u naar een specifieke resource wilt verwijzen.

U kunt copilot bijvoorbeeld vragen een readme.md-bestand te schrijven op basis van aanbevolen procedures op GitHub.

Schermopname van het verwijzen naar een URL in de chat voor context.

Copilot kan alleen verwijzen naar statische HTML-inhoud van de openbare URL die u opgeeft en heeft geen toegang tot andere koppelingen op die pagina, pagina's achter verificatie of inhoud van dynamische pagina's.

Voorbeelden van gebruik

Hier volgen enkele voorbeelden van het gebruik van verwijzingen voor contextbeheer:

Voorbeeld context die door Copilot wordt gebruikt om de vraag te vormen
Wat is het doel van #MyFile.cs: 66-72? Exacte sectie van het bestand
Waar zijn de tests in #BasketService.cs? BasketService.cs
Leg uit wat #AddItemToBasket doet in #BasketService.cs Methode AddItemToBasket in BasketService.cs
Is er een verwijdermand-methode in deze @workspace Huidige oplossing geopend in de IDE
Ik heb een testmethode met de naam #TestCalculator. Hoe kan ik ervoor zorgen dat deze correct wordt uitgevoerd? TestCalculator-methode
Kunt u de verschillen tussen klassen #BasketService en #OrderService uitleggen? BasketService-klasse en OrderService-klasse
In mijn @workspace, waar is #AddItemToBasket gebleven? Huidige oplossing geopend in de IDE
Mijn gebruikersinterface bijwerken in App.tsx zodat deze lijkt op deze afbeelding Geüploade afbeelding

Bekijk de bronnen die worden gebruikt door Copilot Chat

Copilot Chat geeft de context weer die na elk resultaat wordt gebruikt, zodat u kunt zien wat er in aanmerking is genomen bij het beantwoorden van uw vraag. Wanneer u een vraag stelt aan Copilot Chat en een antwoord krijgt in het chatvenster, verschijnt er een Verwijzingen uitklapmenu onder het antwoord. De vermeldingen in de vervolgkeuzelijst Referenties tonen u de context die Copilot Chat gebruikt om dat antwoord te genereren. Met deze informatie kunt u uw vraag aanpassen om betere en relevantere antwoorden te krijgen.

Schermopname van de vervolgkeuzelijst met gebruikte verwijzingen in Copilot Chat.

Organiseren: de context van de chatgeschiedenis beheren met threads

Terwijl u meerdere chatprompts in een chatsessie herhalen en verzenden, gebruikt Copilot de geschiedenis van chatprompts en antwoorden als context voor uw huidige chatprompt. Dit betekent dat u vervolgvragen kunt stellen of uw vorige vraag kunt verduidelijken zonder dat u de context hoeft te herhalen. U kunt bijvoorbeeld vragen 'Hoe verschilt dit van ...', 'Voeg nu een testcase toe', 'leg meer uit', en meer.

Als u opnieuw wilt beginnen met een nieuwe chatsessie en de huidige context wilt negeren, start u een nieuwe thread in de chatweergave. Dit is handig als u naar een ander onderwerp wilt gaan en de vorige context en geschiedenis wilt vermijden. Gebruik threads om gesprekken gericht te houden op de taak en de context helder te houden, zodat de antwoorden zijn gebaseerd op de relevante geschiedenis.

Nieuwe chat-thread

Selecteer Nieuwe thread maken of Ctrl+N in het chatvenster om een nieuwe thread te starten.

Schermopname van het pictogram Nieuwe thread maken in Copilot Chat.

Wissel van chatthread

U kunt kiezen tussen meerdere lopende threads om de juiste historische context voor uw vraag te bieden. U kunt Ctrl+PgDown gebruiken voor vorige thread of Ctrl+PgUp voor de volgende thread in het chatvenster. Ctrl+Shift+T breidt de vervolgkeuzelijst voor thread uit.

Schermopname van het schakelen tussen lopende threads in Copilot Chat.

Inline chat promoveren naar het chatvenster

Met Visual Studio 2022 versie 17.11kunt u nu de geschiedenis van uw inline chat behouden door deze te promoveren naar het chatvenster. Selecteer Doorgaan in het chatvenster... om een record en context van het gesprek bij te houden en door te gaan in het chatvenster.

Schermopname van het promoten van lopende thread in inlinechat naar het chatvenster.

Beste praktijken

Copilot Chat gebruikt de chatgeschiedenis om context over uw aanvraag te krijgen. Copilot alleen de relevante geschiedenis geven:

  • Gebruik threads om een nieuw gesprek te starten voor een nieuwe taak.
  • Verwijder aanvragen die niet langer relevant zijn of die u niet het gewenste resultaat gaven.

Houd het chatgesprek open en blijf Copilot opdrachten geven en vragen stellen om de voorgestelde oplossing te verbeteren. Copilot heeft zowel de context van de gegenereerde code als uw huidige gespreksgeschiedenis. Als u aanvullende vragen blijft stellen, verfijnt Copilot het antwoord verder op basis van uw vereisten. Zie Prompt engineering voor GitHub Copilot voor effectieve promptstrategieën om uw Copilot-resultaten te verbeteren.

Volgende stappen