Obtenir de meilleures réponses en définissant le contexte pour GitHub Copilot Chat dans Visual Studio
Vous pouvez utiliser GitHub Copilot Chat dans Visual Studio pour obtenir des informations et un support à la programmation, telles que la syntaxe, les concepts de programmation, une aide au code propre au contexte, des cas de test, un débogage et bien plus encore, sans quitter l’IDE. Copilot Chat est intégré à Visual Studio, ce qui signifie qu’il peut comprendre sur quoi vous travaillez en collectant des indices utiles à partir de ce que vous avez dans l’IDE.
En plus de votre invite, Copilot utilise un contexte supplémentaire, comme le code de votre fichier actuel et l'historique du chat, pour générer une réponse. Dans cet article, vous apprendrez comment obtenir de meilleures réponses en fournissant plus d'informations à Copilot Chat, notamment :
- Utiliser des commandes à barre oblique pour spécifier rapidement des tâches courantes telles que
/explain
afin d’obtenir des explications sur le code. - Limiter la conversation à des fichiers spécifiques au moyen de références.
- Passer en revue la source utilisée par Copilot pour générer la réponse.
- Utiliser différents threads pour chacune de vos conversations Copilot afin de pouvoir gérer différents contextes dans chacune d’elles.
En savoir plus sur le développement assisté par l’IA dans Visual Studio et sur l’utilisation de Copilot Chat dans Visual Studio.
Prérequis
Pour commencer à utiliser GitHub Copilot Chat dans Visual Studio, vous avez besoin des éléments suivants :
- Visual Studio 2022 version 17.8 ou ultérieure
- Abonnement actif à GitHub Copilot pour les particuliers ou à GitHub Copilot pour les entreprises.
- GitHub Copilot dans Visual Studio
- GitHub Copilot Chat dans Visual Studio
- Connectez-vous à Visual Studio avec le compte GitHub disposant d’un abonnement GitHub Copilot actif.
La prise en charge de GitHub Copilot Chat sera fournie par GitHub et sera accessible sur https://support.github.com.
Utiliser des commandes à barre oblique dans Copilot Chat pour les tâches courantes
Les commandes à barre oblique dans Copilot Chat vous aident à définir rapidement l’intention pour les tâches de développement courantes. En utilisant des commandes à barre oblique spécifiques pour former votre question, vous pouvez obtenir de meilleures réponses sans avoir à écrire de longues questions.
Vous pouvez utiliser des commandes à barre oblique dans une fenêtre de conversation, ou directement incluses dans le code que vous cherchez à modifier, à l’aide de l’assistance de code inclus. Les commandes qui aident à modifier ou à ajouter au fichier de code que vous avez ouvert dans l’éditeur fonctionnent à la fois dans l’assistant de code inclus et dans les fenêtres de conversation, tandis que les commandes pour des questions de programmation plus générales fonctionnent uniquement dans le volet de conversation.
Commande | Utilisation | Fenêtre de conversation | Conversation incluse |
---|---|---|---|
/doc | Ajoutez des commentaires pour le code spécifié ou sélectionné. Exemples : - /doc DeleteBasketAsync method in BasketService.cs – sélectionnez le code souhaité et entrez /doc |
Oui | Oui |
/explain | Obtenez des explications de code. Exemples : - /explain the AddItemToBasket method in BasketService.cs – sélectionnez le code souhaité et entrez /explain |
Oui | Oui |
/fix | Proposez un correctif pour des problèmes dans le code sélectionné. Exemples : - /fix the SetQuantities method in BasketService.cs – sélectionnez le code souhaité et entrez /fix |
Oui | Oui |
/generate | Générez du code pour répondre à la question spécifiée. Exemple : /generate code to add two numbers in Calculator.cs |
Oui | Oui |
/help | Obtenez de l’aide sur Copilot Chat. Exemple : /help |
Oui | Oui |
/optimize | Analysez et améliorez le temps d’exécution du code sélectionné. Exemples : - /optimize the AddItemToBasket method in BasketService.cs – sélectionnez le code souhaité et entrez /optimize |
Oui | Oui |
/tests | Créez des tests unitaires pour le code sélectionné. Exemple : sélectionnez le code souhaité et entrez /tests using XUnit Framework |
Oui | Oui |
Référence : Limiter la portée des résultats de Copilot à un fichier particulier ou à l’ensemble de la solution.
Vous pouvez poser vos questions sur la programmation en langage naturel, et GitHub Copilot Chat répond à celles-ci dans le contexte du codebase ouvert dans Visual Studio. Avec des références, vous pouvez préciser quelles informations Copilot doit prendre en compte lors de la réponse à votre question.
En sélectionnant un contexte spécifique dans votre codebase, vous pouvez former de meilleures questions facilement sans avoir à rédiger ou à coller de longues informations. La spécification du contexte permet également à Copilot de vous fournir des réponses plus pertinentes.
Référencer un fichier
Pour référencer facilement un fichier dans GitHub Copilot Chat, ajoutez simplement un symbole # au début du nom du fichier en question. Par exemple, si vous avez un fichier nommé BasketService.cs, faites-y référence dans la conversation en tant que #BasketService.cs.
Référencer une méthode, une classe ou une fonction
Avec Visual Studio 2022 version 17.11, vous pouvez désormais référencer une méthode, une classe ou une fonction spécifique dans GitHub Copilot Chat.
Pour référencer facilement une méthode, une classe ou une fonction dans GitHub Copilot Chat, ajoutez simplement un symbole # au début du nom de la méthode, de la classe ou de la fonction en question. Par exemple, si votre méthode est nommée BasketAddItem, utilisez #BasketAddItem pour vous y référer dans la conversation.
Référencer l’ensemble de la solution
Utilisez @workspace pour vous référer à la solution active dans l’IDE pour le contexte. Lorsque vous utilisez @workspace pour le contexte, Copilot Chat tire parti des informations sur les fichiers, les projets et les configurations actuellement ouverts et utilisés dans votre IDE. Copilot Chat est ainsi en mesure de fournir des suggestions et des réponses plus pertinentes et contextuelles.
Avec Visual Studio 2022 version 17.11, les abonnés de GitHub Copilot Enterprise peuvent désormais utiliser @github
dans le chat pour inclure le contexte de l'ensemble de leur référentiel et pour effectuer une recherche sur le Web (si la recherche est activée par votre administrateur). Pour en savoir plus sur la collection de compétences spécifiques à GitHub que Copilot peut utiliser pour répondre à votre question lorsque vous utilisez @github
, voir Utiliser les compétences GitHub pour Copilot.
Exemples d'utilisation
Voici quelques exemples d’utilisation de références pour le contrôle du contexte :
Exemple | Contexte utilisé par Copilot pour former la question |
---|---|
Quel est l’objectif de #MyFile.cs : 66-72 ? | Section exacte du fichier |
Où sont les tests dans #BasketService.cs ? | BasketService.cs |
/explain the #AddItemToBasket in #BasketService.cs | Méthode AddItemToBasket dans BasketService.cs |
Y a-t-il une méthode de corbeille de suppression dans ce @workspace | Solution actuelle ouverte dans l’IDE |
J’ai une méthode de test nommée #TestCalculator. Comment puis-je m’assurer qu’elle s'exécute correctement ? | Méthode TestCalculator |
Pourriez-vous expliquer les différences entre les classes #BasketService et #OrderService ? | Classe BasketService et classe OrderService |
Dans mon @workspace, où se trouve #AddItemToBasket ? | Solution actuelle ouverte dans l’IDE |
Passer en revue les sources utilisées par Copilot Chat
Copilot Chat affiche le contexte utilisé après chaque résultat, afin que vous puissiez savoir ce qui a été pris en compte pour répondre à votre question. Lorsque vous posez une question à Copilot Chat et que vous recevez une réponse dans la fenêtre de conversation, une liste déroulante Références apparaît sous la réponse. Les entrées de la liste déroulante Références montrent le contexte référencé par Copilot Chat pour générer cette réponse. Ces informations peuvent vous aider à modifier votre question pour obtenir des réponses plus pertinentes.
Organiser : isoler les conversations avec Copilot en threads
Si vous utilisez très souvent Copilot Chat pour poser des questions à mesure que vous codez, vous pouvez organiser vos conversations afin qu’elles restent en rapport avec la rubrique en question. Copilot Chat pour Visual Studio offre désormais un moyen simple de démarrer de nouvelles conversations (threads) afin qu’elles portent sur la tâche à la main, et de veiller à ce que le contexte soit clair afin que les réponses soient basées sur l’historique pertinent.
Nouveau fil de conversation
Vous pouvez démarrer un nouveau thread en sélectionnant Créer un thread dans la fenêtre de conversation.
Changer de fil de conversation
Vous pouvez sélectionner parmi plusieurs threads en cours afin de fournir le contexte historique approprié pour votre question.
Faire passer une conversation intégrée dans la fenêtre de conversation
Avec Visual Studio 2022 version 17.11, vous pouvez désormais conserver l’historique de votre conversation intégrée en la faisant passer dans la fenêtre de conversation. Sélectionnez Continuer dans la fenêtre de conversation... pour conserver un enregistrement et le contexte de la conversation, puis poursuivre dans la fenêtre de conversation.
Bonnes pratiques
Copilot Chat utilise l'historique du chat pour obtenir le contexte de votre requête. Pour ne donner à Copilot que l'historique pertinent :
- Utilisez les threads pour démarrer une nouvelle conversation pour une nouvelle tâche.
- Supprimez les requêtes qui ne sont plus pertinentes ou qui ne vous ont pas donné le résultat escompté.
Gardez la conversation ouverte et continuez à itérer et à solliciter Copilot pour améliorer la solution proposée. Copilot dispose à la fois du contexte du code généré et de l'historique de votre conversation en cours. Au fur et à mesure que vous posez des questions supplémentaires, Copilot affine la réponse en fonction de vos besoins. Voir Ingénierie des requêtes pour Github Copilot pour des stratégies sur les requêtes efficaces afin d'améliorer les résultats de votre Copilot.
Étapes suivantes
- Expérience GitHub Copilot pour Visual Studio
- GitHub Copilot Chat pour Visual Studio
- Centre de gestion de la confidentialité GitHub Copilot
- Envoyez-nous vos suggestions, commentaires et problèmes
- Prise en charge de GitHub Copilot Chat
- Comment utiliser GitHub Copilot : Requêtes, conseils et cas d'utilisation