Obtenez 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 de codage et une prise en charge, telles que la syntaxe, les concepts de programmation, l’aide du code spécifique au contexte, les cas de test, le débogage et bien plus encore, sans quitter l’IDE. Copilot Chat est intégré à Visual Studio, ce qui signifie qu’il peut comprendre ce que 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 des conversations, pour générer une réponse. Dans cet article, vous allez apprendre à obtenir de meilleures réponses en fournissant plus d’informations à Copilot Chat, notamment :
- Utilisez les commandes slash pour spécifier rapidement des tâches courantes comme
/explain
pour obtenir des explications de code. - Utilisez l'expérience de chat guidée et les instructions personnalisées pour affiner le contexte dans Visual Studio 17.12 ou une version ultérieure.
- Limitez la conversation à des fichiers spécifiques à l’aide 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.
Conditions préalables
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
- Se connecter à Visual Studio en utilisant un compte GitHub avec accès à Copilot
** Vous pouvez utiliser GitHub Copilot gratuitement. Inscrivez-vous et tirez parti de l’IA pour coder plus rapidement et plus efficacement. - GitHub Copilot dans Visual Studio
- GitHub Copilot Chat dans Visual Studio
La prise en charge de GitHub Copilot Chat sera fournie par GitHub et peut être accessible à https://support.github.com.
Guide de prompting
L’expérience de conversation guidée dans Visual Studio 17.12 et les versions ultérieures aide à affiner vos invites pour clarifier le contexte pour obtenir de meilleures réponses. GitHub Copilot Chat vous guide maintenant avec des questions de clarification lorsque le contexte n’est pas clair.
Activer des instructions personnalisées
La fonctionnalité d’instructions personnalisées vous permet d’ajouter automatiquement des détails contextuels pré-spécifiés à vos questions de conversation. Copilot Chat utilise ces instructions adaptées à votre contexte spécifique, telles que la façon dont votre équipe fonctionne, les outils que vous utilisez ou les spécificités de votre projet, lors de la génération de réponses.
Pour configurer des instructions personnalisées :
- Créer/ajouter un fichier d’instructions personnalisé
.github/copilot-instruction.md
à la racine de votre référentiel. - Activez la fonctionnalité dans Visual Studio via Tools>Options>GitHub>Copilot> sélectionnez (préversion) Activez les instructions personnalisées à charger à partir de fichiers .github/copilot-instructions.md et ajoutés aux requêtes..
Les instructions personnalisées ne sont pas visibles dans l’affichage Conversation ou dans la conversation inline. Toutefois, lorsqu’il est utilisé par Copilot, le fichier.github/copilot-instructions.md
est répertorié dans la liste Références d’une réponse.
Utiliser des commandes à barre oblique dans Copilot Chat pour les tâches courantes
Les commandes slash dans Copilot Chat vous aident à définir rapidement l’intention pour les tâches courantes de développement. En utilisant des commandes de 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 inline et dans les fenêtres de conversation, tandis que les commandes pour des questions de codage plus générales fonctionnent uniquement dans le volet de conversation.
Commande | Utilisation | Fenêtre de conversation | Chat intégré |
---|---|---|---|
/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 |
/expliquer | 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 les 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 |
/générer | 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 |
/Aide | Obtenez de l’aide sur l’utilisation de 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 : étendue des résultats Copilot à un fichier ou à une solution entière
Vous pouvez poser vos questions relatives au codage en langage naturel et GitHub Copilot Chat répond à ces questions dans le contexte de codebase ouvert dans Visual Studio. Avec des références, vous pouvez obtenir plus d’informations sur les informations que 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 à écrire 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 de fichier. Par exemple, si vous avez un fichier nommé BasketService.cs, reportez-vous à celui-ci 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 de la méthode, de la classe ou du nom de la fonction. Par exemple, si vous avez une méthode nommée BasketAddItem, mentionnez-la dans la conversation sous #BasketAddItem.
Référencer l’ensemble de la solution
Utilisez @workspace pour faire référence à 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, projets et configurations actuellement ouverts et en cours de travail dans votre IDE. Cela permet à Copilot Chat de fournir des suggestions et des réponses plus pertinentes et contextuelles.
Avec Visual Studio 2022 version 17.11, les abonnés GitHub Copilot Enterprise peuvent désormais utiliser des @github
dans la conversation pour inclure le contexte à partir de leur référentiel entier et rechercher 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 lors de l’utilisation de @github
, consultez Utilisation des compétences GitHub pour Copilot.
Exemples d’utilisation
Voici quelques exemples d’utilisation de références pour le contrôle de contexte :
exemple | Context 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 |
/expliquer la fonctionnalité #AddItemToBasket dans #BasketService.cs | Méthode AddItemToBasket dans BasketService.cs |
Existe-t-il une méthode de suppression de panier dans cette @workspace | Solution actuelle ouverte dans l’IDE |
J’ai une méthode de test nommée #TestCalculator. Comment puis-je m’assurer qu’elle est exécutée correctement ? | Méthode TestCalculator |
Pouvez-vous expliquer les différences entre les classes #BasketService et les #OrderService ? | Classe BasketService et classe OrderService |
Où est #AddItemToBasket dans mon @workspace ? | 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 lors de la réponse à votre question. Lorsque vous posez une question à Copilot Chat et 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 affichent 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 de meilleures réponses et plus pertinentes.
Organiser : isoler les conversations avec Copilot en threads
Si vous utilisez Copilot Chat de manière intensive pour poser des questions pendant que vous codez, vous pouvez organiser vos conversations de manière à rester sur le sujet. Copilot Chat pour Visual Studio offre désormais un moyen simple de démarrer de nouvelles conversations (threads) afin de les concentrer sur la tâche à la main et de garder le contexte 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 le Créer un thread dans la fenêtre de conversation.
Changer de thread de conversation
Vous pouvez sélectionner entre plusieurs threads en cours pour fournir le contexte historique approprié pour votre question.
Promouvoir la conversation inline vers la fenêtre de conversation
Avec Visual Studio 2022 version 17.11, vous pouvez maintenant conserver l'historique de votre conversation inline en l'envoyant vers la fenêtre de conversation . Sélectionnez continuer dans la fenêtre de conversation... pour conserver un enregistrement et un contexte de la conversation, puis continuer dans la fenêtre de conversation.
Meilleures pratiques
Copilot Chat utilise l’historique des conversations pour obtenir le contexte de votre demande. Pour donner à Copilot uniquement l’historique pertinent :
- Utilisez des threads pour démarrer une nouvelle conversation pour une nouvelle tâche.
- Supprimez les demandes qui ne sont plus pertinentes ou qui ne vous ont pas donné le résultat souhaité.
Maintenez la conversation en cours ouverte et continuez à itérer et à inciter Copilot à améliorer la solution suggérée. Copilot a à la fois le contexte du code généré et votre historique de conversation actuel. Lorsque vous continuez à poser des questions supplémentaires, Copilot affine davantage la réponse en fonction de vos besoins. Consultez Ingénierie des invites pour GitHub Copilot pour des stratégies de prompting efficaces afin d'améliorer vos résultats avec Copilot.