GitHub Copilot Chat
GitHub Copilot Chat is een geavanceerde functie van het GitHub Copilot-ecosysteem, ontworpen om ontwikkelaars rechtstreeks in hun ontwikkelomgeving een interactieve, conversationele AI-assistent te bieden. Hiermee kunnen ontwikkelaars in natuurlijke taal gesprekken voeren over hun code, vragen stellen en intelligente antwoorden en suggesties in realtime ontvangen. In deze module behandelen we:
- Code genereren met GitHub Copilot Chat.
- Foutopsporing met GitHub Copilot Chat.
- Hoe u code-uitleg krijgt met behulp van GitHub Copilot Chat.
- Slash-opdrachten gebruiken om acties uit te voeren met GitHub Copilot.
- Aangepaste GitHub Copilot-agents gebruiken om prompts te verbeteren.
Als u Copilot wilt openen in uw IDE (Integrated Development Environment), klikt u op het chatpictogram op de linkernavigatiebalk.
GitHub Copilot Chat is nuttig in bepaalde scenario's:
Complexe codegeneratie Wanneer u complexe algoritmen, gegevensstructuren moet implementeren of standaardcode moet genereren voor specifieke ontwerppatronen, kan Copilot Chat helpen het proces te stroomlijnen. Het kan helpen bij het maken van ingewikkelde reguliere expressies, het opstellen van gedetailleerde SQL-query's of het ontwikkelen van geavanceerde gegevensstructuren, zoals een Bubble sort in Python.
Hulp bij foutopsporing Als u fouten in uw code tegenkomt, kan Copilot Chat waardevol zijn bij het analyseren van foutberichten en het voorstellen van mogelijke oplossingen. Het kan helpen bij het identificeren van logische fouten en stapsgewijze uitleg over problematische codesecties. Een manier om dit resultaat te bereiken, is door Copilot inline-chat te gebruiken door het stukje code met de fout te markeren, met de rechtermuisknop te klikken en Copilot te selecteren en vervolgens inline-chat te selecteren.
U kunt bijvoorbeeld vragen: 'Ik krijg een
NullReferenceExceptionin deze methode. Kunt u me helpen fouten op te sporen?"
Code-uitleg Copilot Chat kan ook worden gebruikt om complexe codefragmenten beter te begrijpen. Het kan code opsplitsen in eenvoudigere termen, het doel en de functionaliteit van onbekende code uitleggen en inzicht bieden in best practices en mogelijke optimalisaties. U kunt bijvoorbeeld vragen: - 'Kunt u uitleggen hoe deze asynchrone/wachtcode werkt in Python?'
GitHub Copilot Chat-antwoorden verbeteren
U kunt de kwaliteit en relevantie van de reacties van GitHub Copilot Chat aanzienlijk verbeteren met bepaalde belangrijke functies. Laten we er eens in duiken.
Bereik waarnaar wordt verwezen
Om de nauwkeurigheid en relevantie van de antwoorden van GitHub Copilot Chat te verbeteren, is het belangrijk om uw vragen op de juiste manier te bepalen met behulp van verwijzingen. U kunt dat als volgt doen:
Bestandsverwijzingen: U kunt een bepaald bestand in uw vraag opgeven door een
#file:voor de bestandsnaam toe te voegen.Als u bijvoorbeeld met een bestand met de naam
controller.jswerkt, kunt u de opdracht #file gebruiken om deze te selecteren en rechtstreeks in uw vraag te verwijzen als#file:controller.js. Deze functie vertelt Copilot Chat om zich te concentreren op de inhoud van dat bestand bij het genereren van een antwoord.Omgevingsverwijzingen: u kunt verwijzen naar de hele oplossing of werkruimte met behulp van
@workspace. Met deze functie kan Copilot Chat rekening houden met de bredere context van de projecten en configuraties die momenteel zijn geopend in uw Visual Studio IDE. Vraag bijvoorbeeld "@workspace waar is de functie 'calculate'?" Dit vraagt Copilot om de hele oplossing te bekijken om de meest relevante informatie te vinden.
Slash-opdrachten
Met Slash-opdrachten in GitHub Copilot Chat kunt u snel de intentie van uw query opgeven. Dit kan de kwaliteit van de antwoorden die u ontvangt aanzienlijk verbeteren door uw aanvragen gerichter te maken. Hier volgen enkele veelgebruikte slash-opdrachten:
/doc: opmerkingen toevoegen aan de opgegeven of geselecteerde code. U kunt bijvoorbeeld typen
/docgevolgd door de code die u wilt documenteren en Copilot genereert de juiste opmerkingen./explain: Biedt uitleg voor geselecteerde code. Deze opdracht is handig als u wilt weten wat een bepaald stukje code doet. Geeft
/explain the #file:controller.jsu bijvoorbeeld een gedetailleerde uitleg van dat bestand./fix: Stelt oplossingen voor problemen in de geselecteerde code. Als u problemen ondervindt, kunt u de sectie Met problemen markeren en suggesties
/fixontvangen voor het oplossen van het probleem./generate: helpt bij het genereren van nieuwe code op basis van uw vereisten. Bijvoorbeeld,
/generate code to find the root of a number in client.jsmaakt een functie om de taak uit te voeren./optimize: analyseert en stelt verbeteringen voor de uitvoeringstijd of efficiƫntie van de geselecteerde code voor. Berekeningen
/optimize thezijn bijvoorbeeldmethod in controller.jsgericht op het verbeteren van de prestaties van die specifieke methode./tests: maakt automatisch eenheidstests voor de geselecteerde code. U kunt gewoon de code markeren en gebruiken
/tests using Mochaom tests te genereren.
Modelselectie en Premium-functies
GitHub Copilot Chat biedt verschillende AI-modellen om uw ontwikkelwerkstroom te optimaliseren. Sommige omgevingen bieden modelselectieopties waarmee u kunt kiezen tussen verschillende mogelijkheidsniveaus op basis van uw specifieke behoeften:
Standaardmodellen (GPT-4o):
- Snelle, betrouwbare antwoorden bieden voor de meeste ontwikkeltaken
- Verbruik 1 PRU per aanvraag
- Ideaal voor routinecoderingshulp, code-uitleg en eenvoudige foutopsporing
- Voorbeelden: Eenvoudige functiegeneratie, syntaxishulp, eenvoudige herstructureringssuggesties
Premium-modellen (o1-preview, o1-mini):
- Verbeterde redeneringsmogelijkheden bieden voor complexe problemen
- Verbruik 2 PRU's per verzoek (tweemaal het standaardtarief)
- Beter geschikt voor geavanceerde analyse, complexe algoritmen en beslissingen over architectuur
- Voorbeelden: Geavanceerde foutopsporing van code met meerdere threads, complex algoritmeontwerp, beveiligingsanalyse
Wanneer u aan uitdagende problemen werkt waarvoor grondige redenering is vereist, kunnen Premium-modellen uitgebreidere analyses en uitgebreidere oplossingen bieden. Houd echter rekening met uw PRU-gebruik bij het selecteren van modellen voor verschillende typen taken.
Opmerking
Het gebruik van Premium-modellen (o1-preview, o1-mini) verbruikt 2 RU's in plaats van 1 voor dezelfde aanvraag. Bewaak uw maandelijkse vergoedingen en kies het juiste model op basis van taakcomplexiteit. Raadpleeg de aanvragen in de GitHub Copilot-documentatie voor actuele informatie over PRU-verbruik en -limieten.
Copilot-agents
GitHub Copilot-agents zijn aangepaste hulpprogramma's die u kunt bouwen en integreren met GitHub Copilot Chat om extra functies te bieden die zijn afgestemd op uw specifieke behoeften. Naast slash-opdrachten kunt u specifieke agents in Copilot Chat in uw IDE gebruiken om verschillende taken af te handelen:
@workspace: Met deze agent kunt u de context uitbreiden van de vragen die u Copilot stelt voor het hele project. Het is handig om code op te halen die direct in uw project past, met behulp van informatie van uw hele project. Het kan ook worden gebruikt voor het verkrijgen van antwoorden over uw hele codebasis.
U kunt ook de slimme actie '@workspace /new' gebruiken, waarmee u een volledig nieuw project kunt genereren op basis van uw vereisten. Bijvoorbeeld '@workspace /new genereer nieuwe html-bestandspagina's en JavaScript voor geavanceerde berekeningen'.
Klik op Werkruimte maken om door te gaan met het genereren van code en net zoals u uw nieuwe project hebt met de code die u hebt aangevraagd.
@terminal: deze agent is handig voor opdrachtregelvragen. U kunt het bijvoorbeeld vragen om het grootste bestand in een map te vinden of de laatste opdracht uit te leggen die u hebt uitgevoerd.
@vscode: Gebruik deze agent om vragen te stellen met betrekking tot Visual Studio Code, zoals het opsporen of wijzigen van instellingen in de IDE.
Door deze hulpprogramma's en technieken effectief te gebruiken, kunt u de kwaliteit van reacties die u ontvangt van GitHub Copilot Chat aanzienlijk verbeteren, waardoor uw coderingservaring efficiƫnter en productiever wordt.
Opmerking
Geavanceerde agents, zoals @workspace en complexe bewerkingen, kunnen meer Premium-aanvraageenheden (RU's) verbruiken. Eenvoudige query's gebruiken doorgaans 1 PRU, terwijl complexe werkruimteanalyse of projectgeneratie 2-5 RU's kan gebruiken. Raadpleeg de aanvragen in de GitHub Copilot-documentatie voor actuele informatie over pru-verbruik, maandelijkse vergoedingen en frequentielimieten.
Feedback delen op GitHub Copilot Chat
De meeste IDE's met Copilot Chat-integratie hebben ingebouwde feedbackmechanismen. In Visual Studio Code kunt u bijvoorbeeld feedbackopties vinden aan het begin van de suggesties van GitHub Copilot Chat. Beweeg de muisaanwijzer over een suggestie en u ziet de knoppen 'duim omhoog' en 'duim omlaag'.
Klik op de duimen om een suggestie te beoordelen als nuttig.
Klik op duimen omlaag om een niet-helpende toets te beoordelen.