Skip to main content

Responsible use of GitHub Copilot Chat in your IDE

Learn how to use GitHub Copilot Chat responsibly by understanding its purposes, capabilities, and limitations.

Qui peut utiliser cette fonctionnalité ?

Tous les utilisateurs disposant d’un abonnement GitHub Copilot Individual peuvent accĂ©der Ă  GitHub Copilot Chat dans votre IDE.

Les propriĂ©taires d’organisations avec un abonnement Copilot Business peuvent dĂ©cider d’accorder l’accĂšs Ă  GitHub Copilot Chatdans votre IDE.

À propos de GitHub Copilot Chat

GitHub Copilot Chat est une interface de conversation qui vous permet d’interagir avec GitHub Copilot pour poser des questions relatives au codage et recevoir leurs rĂ©ponses dans GitHub.com ou des IDE pris en charge. L’interface de conversation permet d’accĂ©der aux informations sur le codage et au support sans avoir Ă  parcourir la documentation ni Ă  rechercher dans des forums en ligne. Pour plus d’informations sur GitHub Copilot, consultez « À propos de GitHub Copilot Individual », « À propos de GitHub Copilot Business » et « À propos de GitHub Copilot Enterprise .»

GitHub Copilot Chat peut rĂ©pondre Ă  un large Ă©ventail de questions relatives au codage sur des sujets comme la syntaxe, les concepts de programmation, les cas de test, le dĂ©bogage, etc. GitHub Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions portant sur autre chose que le codage ni pour fournir des informations gĂ©nĂ©rales sur des sujets autres que le codage.

La principale langue prise en charge pour GitHub Copilot Chat est l'anglais.

GitHub Copilot Chat fonctionne en utilisant une combinaison de traitement en langage naturel et de machine learning pour comprendre votre question et vous fournir une rĂ©ponse. Ce processus peut ĂȘtre divisĂ© en plusieurs Ă©tapes.

Traitement de l’entrĂ©e

L’invite d’entrĂ©e de l’utilisateur est prĂ©traitĂ©e par le systĂšme Copilot Chat, combinĂ©e Ă  des informations contextuelles (par exemple, le nom du rĂ©fĂ©rentiel que l’utilisateur consulte actuellement et les fichiers qu’il a ouverts) et envoyĂ©es Ă  un grand modĂšle de langage. L’entrĂ©e utilisateur peut prendre la forme d’extraits de code ou ĂȘtre exprimĂ©e en langage normal.

Le grand modĂšle de langage prend l’invite, collecte un contexte supplĂ©mentaire (par exemple, les donnĂ©es de rĂ©fĂ©rentiel stockĂ©es sur GitHub) et fournit une rĂ©ponse basĂ©e sur l’invite. Le systĂšme est destinĂ© seulement Ă  rĂ©pondre Ă  questions relatives au codage.

Analyse du modĂšle de langage

La demande prétraitée est ensuite transmise via le modÚle de langage Copilot Chat, un réseau neuronal qui a été entraßné sur un corps de données texte de grande taille. Le modÚle de langage analyse la demande entrée.

Génération de la réponse

Le modĂšle de langage gĂ©nĂšre une rĂ©ponse en fonction de son analyse de la demande entrĂ©e et du contexte fourni. Le modĂšle de langage peut collecter du contexte supplĂ©mentaire et fournir une rĂ©ponse basĂ©e sur l’invite. Cette rĂ©ponse peut se prĂ©senter sous forme de code gĂ©nĂ©rĂ©, de code suggĂ©rĂ© ou d’explications du code existant.

When you use the @github chat participant, Copilot Chat will be able to gather context from your code stored on GitHub.com and search results from Bing (if enabled by your administrator).

Mise en forme de la sortie

La rĂ©ponse gĂ©nĂ©rĂ©e par Copilot Chat est mise en forme et prĂ©sentĂ©e Ă  l’utilisateur. Copilot Chat peut utiliser la mise en surbrillance de la syntaxe, l’indentation et d’autres fonctionnalitĂ©s de mise en forme pour ajouter de la clartĂ© Ă  la rĂ©ponse gĂ©nĂ©rĂ©e. Selon le type de question de l’utilisateur, des liens vers le contexte utilisĂ© par le modĂšle lors de la gĂ©nĂ©ration d’une rĂ©ponse, comme les fichiers de code source ou la documentation, peuvent Ă©galement ĂȘtre fournis.

GitHub Copilot Chat est destinĂ© Ă  vous fournir la rĂ©ponse la plus pertinente Ă  votre question. Cependant, il peut ne pas toujours fournir la rĂ©ponse que vous recherchez. Les utilisateurs de Copilot Chat sont responsables de l’examen et de la validation des rĂ©ponses gĂ©nĂ©rĂ©es par le systĂšme pour vĂ©rifier qu’elles sont exactes et appropriĂ©es. En outre, dans le cadre de notre processus de dĂ©veloppement de produits, nous effectuons un Red Teaming pour comprendre et amĂ©liorer la sĂ©curitĂ© de Copilot Chat. Les invites d’entrĂ©e et les complĂ©tions de sortie sont exĂ©cutĂ©es via des filtres de contenu. Le systĂšme de filtrage de contenu dĂ©tecte et empĂȘche la sortie sur des catĂ©gories spĂ©cifiques de contenu, notamment du contenu dangereux, offensant ou hors sujet. Pour plus d’informations sur l’amĂ©lioration des performances de GitHub Copilot Chat, consultez « AmĂ©lioration des performances pour GitHub Copilot Chat ».

Tirer parti d’une recherche web pour rĂ©pondre Ă  une question

Note

Lorsque vous utilisez le participant à la conversation @github, GitHub Copilot Chat peut utiliser une recherche Bing pour vous aider à répondre à votre question si cela a été activé par votre administrateur.

Votre administrateur GitHub Enterprise peut activer Bing pour toute votre entreprise ou dĂ©lĂ©guer cette dĂ©cision Ă  l’administrateur de l’organisation. Pour plus d’informations, consultez « Application de stratĂ©gies pour GitHub Copilot dans votre entreprise ».

Lorsque vous utilisez Bing, Copilot utilise le contenu de votre invite, ainsi que le contexte disponible supplĂ©mentaire, pour gĂ©nĂ©rer une requĂȘte de recherche Bing en votre nom envoyĂ©e Ă  l’API de recherche Bing. Copilot fournit un lien vers les rĂ©sultats de la recherche avec sa rĂ©ponse. La requĂȘte de recherche envoyĂ©e Ă  Bing est rĂ©gie par la DĂ©claration de confidentialitĂ© Microsoft.

Cas d’usage pour GitHub Copilot Chat

GitHub Copilot Chat peut fournir une assistance au codage dans une variété de scénarios.

Génération de cas de test unitaire

Copilot Chat peut vous aider Ă  Ă©crire des cas de test unitaire en gĂ©nĂ©rant des extraits de code en fonction du code ouvert dans l’éditeur ou de l’extrait de code que vous mettez en Ă©vidence dans l’éditeur. Ceci peut vous aider Ă  Ă©crire des cas de test sans consacrer autant de temps Ă  des tĂąches rĂ©pĂ©titives. Par exemple, si vous Ă©crivez un cas de test pour une fonction spĂ©cifique, vous pouvez utiliser Copilot Chat pour suggĂ©rer des paramĂštres d’entrĂ©e possibles et des valeurs de sortie attendues en fonction de la signature et du corps de la fonction. Copilot Chat peut Ă©galement suggĂ©rer des assertions qui garantissent que la fonction fonctionne correctement, selon le contexte et la sĂ©mantique du code.

Copilot Chat peut aussi vous aider Ă  Ă©crire des cas de test pour des cas limites et des conditions limites qui peuvent ĂȘtre difficiles Ă  identifier manuellement. Par exemple, Copilot Chat peut suggĂ©rer des cas de test pour la gestion des erreurs, des valeurs null ou des types d’entrĂ©e inattendus, ce qui vous permet de vĂ©rifier que votre code est robuste et rĂ©silient. Cependant, il est important de noter que les cas de test gĂ©nĂ©rĂ©s peuvent ne pas couvrir tous les scĂ©narios possibles, et que les tests manuels et la rĂ©vision du code sont toujours nĂ©cessaires pour garantir la qualitĂ© du code. Pour plus d’informations sur la gĂ©nĂ©ration de cas de test unitaire, consultez « Poser des questions Ă  GitHub Copilot Chat sur votre code ».

Explication du code et suggestions d’amĂ©liorations

Copilot Chat peut aider Ă  expliquer du code sĂ©lectionnĂ© en gĂ©nĂ©rant des descriptions en langage naturel de la fonctionnalitĂ© et de l’objectif du code. Ceci peut ĂȘtre utile si vous souhaitez comprendre le comportement du code ou pour des parties prenantes non techniques qui doivent comprendre le fonctionnement du code. Par exemple, si vous sĂ©lectionnez une fonction ou un bloc de code dans l’éditeur de code, Copilot Chat peut gĂ©nĂ©rer une description en langage naturel de ce que fait le code et de la façon dont il s’intĂšgre dans le systĂšme global. Ceci peut inclure des informations comme les paramĂštres d’entrĂ©e et de sortie de la fonction, ses dĂ©pendances et son objectif dans l’application au sens plus large.

Copilot Chat peut Ă©galement suggĂ©rer des amĂ©liorations potentielles apportĂ©es au code sĂ©lectionnĂ©, telles que l’amĂ©lioration de la gestion des erreurs et des cas de pĂ©riphĂ©rie, ou des modifications apportĂ©es au flux logique pour rendre le code plus lisible.

En gĂ©nĂ©rant des explications et en suggĂ©rant de la documentation associĂ©e, Copilot Chat peut vous aider Ă  comprendre le code sĂ©lectionnĂ©, ce qui permet une meilleure collaboration et un dĂ©veloppement logiciel plus efficace. Cependant, il est important de noter que les explications et la documentation gĂ©nĂ©rĂ©es peuvent ne pas toujours ĂȘtre exactes ou complĂštes : vous devrez donc passer en revue et parfois corriger la sortie de Copilot Chat.

Proposition de correctifs de code

Copilot Chat peut proposer un correctif pour des bogues dans votre code en suggĂ©rant des extraits de code et des solutions, en fonction du contexte de l’erreur ou du problĂšme. Ceci peut ĂȘtre utile si vous avez du mal Ă  identifier la cause racine d’un bogue ou si vous avez besoin d’aide sur la meilleure façon de le corriger. Par exemple, si votre code produit un message d’erreur ou un avertissement, Copilot Chat peut suggĂ©rer des correctifs possibles en fonction du message d’erreur, de la syntaxe du code et du code environnant.

Copilot Chat peut suggĂ©rer des modifications apportĂ©es Ă  des variables, des structures de contrĂŽle ou des appels de fonction qui peuvent rĂ©soudre le problĂšme, et gĂ©nĂ©rer des extraits de code qui peuvent ĂȘtre incorporĂ©s dans le codebase. Cependant, il est important de noter que les correctifs suggĂ©rĂ©s peuvent ne pas toujours ĂȘtre optimaux ou complets : vous devez donc passer en revue et tester les suggestions.

Answering coding questions

You can ask Copilot Chat for help or clarification on specific coding problems and receive responses in natural language format or in code snippet format.

The response generated by Copilot Chat will use the model's training data set to answer your questions.

When you use the @github chat participant, the response generated may additionally use search results from Bing, code in your repositories, and Markdown documentation in your knowledge bases.

This can be a useful tool for programmers, as it can provide guidance and support for common coding tasks and challenges.

Amélioration des performances pour GitHub Copilot Chat

Copilot Chat peut prendre en charge un large Ă©ventail d’applications pratiques, comme la gĂ©nĂ©ration de code, l’analyse de code et les correctifs de code, chacune avec des mĂ©triques de performance et des stratĂ©gies d’attĂ©nuation diffĂ©rentes. Pour amĂ©liorer les performances et s’affranchir de certaines des limitations de Copilot Chat, vous pouvez adopter diffĂ©rentes mesures. Pour plus d’informations sur les limitations de Copilot Chat, consultez « Limitations de GitHub Copilot Chat ».

Limitez vos demandes au sujet concerné

Copilot Chat est destiné à répondre exclusivement à des demandes relatives au codage. Par conséquent, limiter la demande à des questions ou des tùches de codage peut améliorer la qualité de la sortie du modÚle.

Utiliser Copilot Chat comme un outil et non pas comme un substitut

Bien que Copilot Chat puisse ĂȘtre un outil puissant pour gĂ©nĂ©rer du code, il est important de l’utiliser comme un outil et non pas comme un substitut Ă  la programmation humaine. Vous devez toujours passer en revue et tester le code gĂ©nĂ©rĂ© par Copilot Chat pour vĂ©rifier qu’il rĂ©pond Ă  vos besoins, et qu’il est exempt d’erreurs ou de problĂšmes de sĂ©curitĂ©.

Utiliser des pratiques de codage sécurisé et de révision du code

Bien que Copilot Chat puisse gĂ©nĂ©rer du code correct sur le plan syntaxique, il peut ne pas toujours ĂȘtre sĂ©curisĂ©. Vous devez toujours suivre les bonnes pratiques pour obtenir un codage sĂ©curisĂ©, comme Ă©viter les mots de passe codĂ©s en dur ou les vulnĂ©rabilitĂ©s liĂ©es Ă  l’injection de SQL ainsi que les bonnes pratiques de rĂ©vision du code pour vous affranchir des limitations de Copilot Chat.

Fournir des commentaires

Si vous rencontrez des problĂšmes ou des limitations avec Copilot Chat, nous vous recommandons de fournir un feedback via le lien Partager un feedback dans l’interface Copilot Chat de votre IDE. Cela peut aider les dĂ©veloppeurs Ă  amĂ©liorer l’outil, et Ă  rĂ©soudre les problĂšmes ou les limitations.

Rester informé

Copilot Chat est une nouvelle technologie qui est susceptible d’évoluer au fil du temps. Il est recommandĂ© de se tenir informĂ© des mises Ă  jour ou des modifications apportĂ©es Ă  l’outil ainsi que des nouveaux risques ou des bonnes pratiques en matiĂšre de sĂ©curitĂ© qui peuvent apparaĂźtre. Les mises Ă  jour automatisĂ©es des extensions sont activĂ©es par dĂ©faut dans Visual Studio Code, Visual Studio et la suite d’IDE JetBrains. Pour GitHub Copilot Chat in GitHub.com, vous aurez toujours accĂšs Ă  la derniĂšre expĂ©rience de produit. Si vous avez activĂ© les mises Ă  jour automatiques, Copilot Chat est mis Ă  jour automatiquement vers la derniĂšre version quand vous ouvrez votre IDE. Pour plus d’informations sur les mises Ă  jour automatiques dans votre IDE, consultez la documentation Visual Studio Code, la documentation Visual Studio et la documentation pour votre IDE JetBrains.

Limitations de GitHub Copilot Chat

En fonction de facteurs comme votre codebase et vos donnĂ©es en entrĂ©e, vous pouvez rencontrer diffĂ©rents niveaux de performances lors de l’utilisation de Copilot Chat. Les informations suivantes sont conçues pour vous aider Ă  comprendre les limitations du systĂšme et les concepts clĂ©s des performances tels qu’ils s’appliquent Ă  Copilot Chat.

Étendue limitĂ©e

Copilot Chat a Ă©tĂ© entraĂźnĂ© sur un corpus de code de grande taille, mais il a nĂ©anmoins toujours une Ă©tendue limitĂ©e et peut ne pas ĂȘtre en mesure de gĂ©rer des structures de code plus complexes ou des langages de programmation obscurs. Pour chaque langage, la qualitĂ© des suggestions que vous recevez peut dĂ©pendre du volume et de la diversitĂ© des donnĂ©es d’entraĂźnement pour ce langage. Par exemple, JavaScript est bien reprĂ©sentĂ© dans les dĂ©pĂŽts publics et est l’un des langages les mieux pris en charge par GitHub Copilot. Les langages avec moins de prĂ©sence dans les dĂ©pĂŽts publics peuvent ĂȘtre plus problĂ©matiques pour Copilot Chat quant Ă  l’assistance qu’il vous fournit. En outre, Copilot Chat ne peut suggĂ©rer du code qu’en fonction du contexte du code en cours d’écriture, de sorte qu’il peut ne pas ĂȘtre en mesure d’identifier des problĂšmes de conception ou d’architecture plus vastes.

Biais potentiels

Les donnĂ©es d’entraĂźnement de Copilot sont extraites de dĂ©pĂŽts de code existants, qui peuvent contenir des biais et des erreurs qui peuvent ĂȘtre perpĂ©tuĂ©s par l’outil. En outre, Copilot Chat peut ĂȘtre biaisĂ© en faveur de certains langages de programmation ou styles de codage, ce qui peut conduire Ă  des suggestions de code non optimales ou incomplĂštes.

Risques liés à la sécurité

Copilot Chat gĂ©nĂšre du code en fonction du contexte du code en cours d’écriture, ce qui peut potentiellement exposer des informations sensibles ou des vulnĂ©rabilitĂ©s si ce code n’est pas utilisĂ© avec attention. Vous devez ĂȘtre prudent quand vous utilisez Copilot Chat pour gĂ©nĂ©rer du code pour des applications sensibles Ă  la sĂ©curitĂ©, et toujours passer en revue et tester le code gĂ©nĂ©rĂ© de façon approfondie.

Correspondances avec du code public

Copilot Chat est capable de gĂ©nĂ©rer du nouveau code, ce qu’il fait de façon probabiliste. Bien que la probabilitĂ© qu’il puisse produire du code qui correspond Ă  du code faisant partie du jeu d’entraĂźnement soit faible, une suggestion de Copilot Chat peut contenir des extraits de code qui correspondent Ă  du code prĂ©sent dans le jeu d’entraĂźnement. Copilot Chat utilise des filtres qui bloquent les correspondances avec le code public prĂ©sent sur des dĂ©pĂŽts GitHub, mais vous devez toujours prendre les mĂȘmes prĂ©cautions que vous prendriez avec du code que vous Ă©crivez et qui utilise des Ă©lĂ©ments que vous n’avez pas produit de façon indĂ©pendante, y compris les prĂ©cautions nĂ©cessaires pour garantir son adĂ©quation. Ceci inclut des tests rigoureux, l’analyse des adresses IP et la recherche des vulnĂ©rabilitĂ©s de sĂ©curitĂ©. Vous devez vĂ©rifier que votre IDE ou votre Ă©diteur ne compile pas ou n’exĂ©cute pas automatiquement du code gĂ©nĂ©rĂ© avant de le rĂ©viser.

Code erroné

Une des limitations de Copilot Chat est qu’il peut gĂ©nĂ©rer du code qui semble valide, mais qui peut ne pas ĂȘtre sĂ©mantiquement ou syntaxiquement correct, ou qui ne reflĂšte pas correctement l’intention du dĂ©veloppeur. Pour attĂ©nuer le risque d’avoir du code erronĂ©, vous devez rĂ©viser et tester soigneusement le code gĂ©nĂ©rĂ©, en particulier quand vous travaillez sur des applications critiques ou sensibles. Vous devez aussi vĂ©rifier que le code gĂ©nĂ©rĂ© respecte les bonnes pratiques et les modĂšles de conception, et qu’il s’intĂšgre dans l’architecture globale et le style du codebase.

Réponses erronées sur des sujets autres que le codage

Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions autres que celles portant sur le codage et par consĂ©quent, ses rĂ©ponses peuvent ne pas toujours ĂȘtre exactes ou utiles dans ces contextes. Si un utilisateur demande Ă  Copilot Chat une question sans rapport avec le codage, il peut gĂ©nĂ©rer une rĂ©ponse non pertinente ou absurde, ou simplement indiquer qu’il n’est pas en mesure de fournir une rĂ©ponse utile.

Étapes suivantes

Pour plus d’informations sur l’utilisation des donnĂ©es GitHub Copilot Chat, consultez :

Pour aller plus loin

À propos de GitHub Copilot Chat

GitHub Copilot Chat est une interface de conversation qui vous permet d’interagir avec GitHub Copilot pour poser des questions relatives au codage et recevoir leurs rĂ©ponses dans GitHub.com ou des IDE pris en charge. L’interface de conversation permet d’accĂ©der aux informations sur le codage et au support sans avoir Ă  parcourir la documentation ni Ă  rechercher dans des forums en ligne. Pour plus d’informations sur GitHub Copilot, consultez « À propos de GitHub Copilot Individual », « À propos de GitHub Copilot Business » et « À propos de GitHub Copilot Enterprise .»

GitHub Copilot Chat peut rĂ©pondre Ă  un large Ă©ventail de questions relatives au codage sur des sujets comme la syntaxe, les concepts de programmation, les cas de test, le dĂ©bogage, etc. GitHub Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions portant sur autre chose que le codage ni pour fournir des informations gĂ©nĂ©rales sur des sujets autres que le codage.

La principale langue prise en charge pour GitHub Copilot Chat est l'anglais.

GitHub Copilot Chat fonctionne en utilisant une combinaison de traitement en langage naturel et de machine learning pour comprendre votre question et vous fournir une rĂ©ponse. Ce processus peut ĂȘtre divisĂ© en plusieurs Ă©tapes.

Traitement de l’entrĂ©e

L’invite d’entrĂ©e de l’utilisateur est prĂ©traitĂ©e par le systĂšme Copilot Chat, combinĂ©e Ă  des informations contextuelles (par exemple, le nom du rĂ©fĂ©rentiel que l’utilisateur consulte actuellement et les fichiers qu’il a ouverts) et envoyĂ©es Ă  un grand modĂšle de langage. L’entrĂ©e utilisateur peut prendre la forme d’extraits de code ou ĂȘtre exprimĂ©e en langage normal.

Le grand modĂšle de langage prend l’invite, collecte un contexte supplĂ©mentaire (par exemple, les donnĂ©es de rĂ©fĂ©rentiel stockĂ©es sur GitHub) et fournit une rĂ©ponse basĂ©e sur l’invite. Le systĂšme est destinĂ© seulement Ă  rĂ©pondre Ă  questions relatives au codage.

Analyse du modĂšle de langage

La demande prétraitée est ensuite transmise via le modÚle de langage Copilot Chat, un réseau neuronal qui a été entraßné sur un corps de données texte de grande taille. Le modÚle de langage analyse la demande entrée.

Génération de la réponse

Le modĂšle de langage gĂ©nĂšre une rĂ©ponse en fonction de son analyse de la demande entrĂ©e et du contexte fourni. Le modĂšle de langage peut collecter du contexte supplĂ©mentaire et fournir une rĂ©ponse basĂ©e sur l’invite. Cette rĂ©ponse peut se prĂ©senter sous forme de code gĂ©nĂ©rĂ©, de code suggĂ©rĂ© ou d’explications du code existant.

When you use the @github chat participant, Copilot Chat will be able to gather context from your code stored on GitHub.com and search results from Bing (if enabled by your administrator).

Mise en forme de la sortie

La rĂ©ponse gĂ©nĂ©rĂ©e par Copilot Chat est mise en forme et prĂ©sentĂ©e Ă  l’utilisateur. Copilot Chat peut utiliser la mise en surbrillance de la syntaxe, l’indentation et d’autres fonctionnalitĂ©s de mise en forme pour ajouter de la clartĂ© Ă  la rĂ©ponse gĂ©nĂ©rĂ©e. Selon le type de question de l’utilisateur, des liens vers le contexte utilisĂ© par le modĂšle lors de la gĂ©nĂ©ration d’une rĂ©ponse, comme les fichiers de code source ou la documentation, peuvent Ă©galement ĂȘtre fournis.

GitHub Copilot Chat est destinĂ© Ă  vous fournir la rĂ©ponse la plus pertinente Ă  votre question. Cependant, il peut ne pas toujours fournir la rĂ©ponse que vous recherchez. Les utilisateurs de Copilot Chat sont responsables de l’examen et de la validation des rĂ©ponses gĂ©nĂ©rĂ©es par le systĂšme pour vĂ©rifier qu’elles sont exactes et appropriĂ©es. En outre, dans le cadre de notre processus de dĂ©veloppement de produits, nous effectuons un Red Teaming pour comprendre et amĂ©liorer la sĂ©curitĂ© de Copilot Chat. Les invites d’entrĂ©e et les complĂ©tions de sortie sont exĂ©cutĂ©es via des filtres de contenu. Le systĂšme de filtrage de contenu dĂ©tecte et empĂȘche la sortie sur des catĂ©gories spĂ©cifiques de contenu, notamment du contenu dangereux, offensant ou hors sujet. Pour plus d’informations sur l’amĂ©lioration des performances de GitHub Copilot Chat, consultez « AmĂ©lioration des performances pour GitHub Copilot Chat ».

Tirer parti d’une recherche web pour rĂ©pondre Ă  une question

Note

Lorsque vous utilisez le participant à la conversation @github, GitHub Copilot Chat peut utiliser une recherche Bing pour vous aider à répondre à votre question si cela a été activé par votre administrateur.

Votre administrateur GitHub Enterprise peut activer Bing pour toute votre entreprise ou dĂ©lĂ©guer cette dĂ©cision Ă  l’administrateur de l’organisation. Pour plus d’informations, consultez « Application de stratĂ©gies pour GitHub Copilot dans votre entreprise ».

Lorsque vous utilisez Bing, Copilot utilise le contenu de votre invite, ainsi que le contexte disponible supplĂ©mentaire, pour gĂ©nĂ©rer une requĂȘte de recherche Bing en votre nom envoyĂ©e Ă  l’API de recherche Bing. Copilot fournit un lien vers les rĂ©sultats de la recherche avec sa rĂ©ponse. La requĂȘte de recherche envoyĂ©e Ă  Bing est rĂ©gie par la DĂ©claration de confidentialitĂ© Microsoft.

Cas d’usage pour GitHub Copilot Chat

GitHub Copilot Chat peut fournir une assistance au codage dans une variété de scénarios.

Génération de cas de test unitaire

Copilot Chat peut vous aider Ă  Ă©crire des cas de test unitaire en gĂ©nĂ©rant des extraits de code en fonction du code ouvert dans l’éditeur ou de l’extrait de code que vous mettez en Ă©vidence dans l’éditeur. Ceci peut vous aider Ă  Ă©crire des cas de test sans consacrer autant de temps Ă  des tĂąches rĂ©pĂ©titives. Par exemple, si vous Ă©crivez un cas de test pour une fonction spĂ©cifique, vous pouvez utiliser Copilot Chat pour suggĂ©rer des paramĂštres d’entrĂ©e possibles et des valeurs de sortie attendues en fonction de la signature et du corps de la fonction. Copilot Chat peut Ă©galement suggĂ©rer des assertions qui garantissent que la fonction fonctionne correctement, selon le contexte et la sĂ©mantique du code.

Copilot Chat peut aussi vous aider Ă  Ă©crire des cas de test pour des cas limites et des conditions limites qui peuvent ĂȘtre difficiles Ă  identifier manuellement. Par exemple, Copilot Chat peut suggĂ©rer des cas de test pour la gestion des erreurs, des valeurs null ou des types d’entrĂ©e inattendus, ce qui vous permet de vĂ©rifier que votre code est robuste et rĂ©silient. Cependant, il est important de noter que les cas de test gĂ©nĂ©rĂ©s peuvent ne pas couvrir tous les scĂ©narios possibles, et que les tests manuels et la rĂ©vision du code sont toujours nĂ©cessaires pour garantir la qualitĂ© du code. Pour plus d’informations sur la gĂ©nĂ©ration de cas de test unitaire, consultez « Poser des questions Ă  GitHub Copilot Chat sur votre code ».

Explication du code et suggestions d’amĂ©liorations

Copilot Chat peut aider Ă  expliquer du code sĂ©lectionnĂ© en gĂ©nĂ©rant des descriptions en langage naturel de la fonctionnalitĂ© et de l’objectif du code. Ceci peut ĂȘtre utile si vous souhaitez comprendre le comportement du code ou pour des parties prenantes non techniques qui doivent comprendre le fonctionnement du code. Par exemple, si vous sĂ©lectionnez une fonction ou un bloc de code dans l’éditeur de code, Copilot Chat peut gĂ©nĂ©rer une description en langage naturel de ce que fait le code et de la façon dont il s’intĂšgre dans le systĂšme global. Ceci peut inclure des informations comme les paramĂštres d’entrĂ©e et de sortie de la fonction, ses dĂ©pendances et son objectif dans l’application au sens plus large.

Copilot Chat peut Ă©galement suggĂ©rer des amĂ©liorations potentielles apportĂ©es au code sĂ©lectionnĂ©, telles que l’amĂ©lioration de la gestion des erreurs et des cas de pĂ©riphĂ©rie, ou des modifications apportĂ©es au flux logique pour rendre le code plus lisible.

En gĂ©nĂ©rant des explications et en suggĂ©rant de la documentation associĂ©e, Copilot Chat peut vous aider Ă  comprendre le code sĂ©lectionnĂ©, ce qui permet une meilleure collaboration et un dĂ©veloppement logiciel plus efficace. Cependant, il est important de noter que les explications et la documentation gĂ©nĂ©rĂ©es peuvent ne pas toujours ĂȘtre exactes ou complĂštes : vous devrez donc passer en revue et parfois corriger la sortie de Copilot Chat.

Proposition de correctifs de code

Copilot Chat peut proposer un correctif pour des bogues dans votre code en suggĂ©rant des extraits de code et des solutions, en fonction du contexte de l’erreur ou du problĂšme. Ceci peut ĂȘtre utile si vous avez du mal Ă  identifier la cause racine d’un bogue ou si vous avez besoin d’aide sur la meilleure façon de le corriger. Par exemple, si votre code produit un message d’erreur ou un avertissement, Copilot Chat peut suggĂ©rer des correctifs possibles en fonction du message d’erreur, de la syntaxe du code et du code environnant.

Copilot Chat peut suggĂ©rer des modifications apportĂ©es Ă  des variables, des structures de contrĂŽle ou des appels de fonction qui peuvent rĂ©soudre le problĂšme, et gĂ©nĂ©rer des extraits de code qui peuvent ĂȘtre incorporĂ©s dans le codebase. Cependant, il est important de noter que les correctifs suggĂ©rĂ©s peuvent ne pas toujours ĂȘtre optimaux ou complets : vous devez donc passer en revue et tester les suggestions.

Answering coding questions

You can ask Copilot Chat for help or clarification on specific coding problems and receive responses in natural language format or in code snippet format.

The response generated by Copilot Chat will use the model's training data set to answer your questions.

This can be a useful tool for programmers, as it can provide guidance and support for common coding tasks and challenges.

Amélioration des performances pour GitHub Copilot Chat

Copilot Chat peut prendre en charge un large Ă©ventail d’applications pratiques, comme la gĂ©nĂ©ration de code, l’analyse de code et les correctifs de code, chacune avec des mĂ©triques de performance et des stratĂ©gies d’attĂ©nuation diffĂ©rentes. Pour amĂ©liorer les performances et s’affranchir de certaines des limitations de Copilot Chat, vous pouvez adopter diffĂ©rentes mesures. Pour plus d’informations sur les limitations de Copilot Chat, consultez « Limitations de GitHub Copilot Chat ».

Limitez vos demandes au sujet concerné

Copilot Chat est destiné à répondre exclusivement à des demandes relatives au codage. Par conséquent, limiter la demande à des questions ou des tùches de codage peut améliorer la qualité de la sortie du modÚle.

Utiliser Copilot Chat comme un outil et non pas comme un substitut

Bien que Copilot Chat puisse ĂȘtre un outil puissant pour gĂ©nĂ©rer du code, il est important de l’utiliser comme un outil et non pas comme un substitut Ă  la programmation humaine. Vous devez toujours passer en revue et tester le code gĂ©nĂ©rĂ© par Copilot Chat pour vĂ©rifier qu’il rĂ©pond Ă  vos besoins, et qu’il est exempt d’erreurs ou de problĂšmes de sĂ©curitĂ©.

Utiliser des pratiques de codage sécurisé et de révision du code

Bien que Copilot Chat puisse gĂ©nĂ©rer du code correct sur le plan syntaxique, il peut ne pas toujours ĂȘtre sĂ©curisĂ©. Vous devez toujours suivre les bonnes pratiques pour obtenir un codage sĂ©curisĂ©, comme Ă©viter les mots de passe codĂ©s en dur ou les vulnĂ©rabilitĂ©s liĂ©es Ă  l’injection de SQL ainsi que les bonnes pratiques de rĂ©vision du code pour vous affranchir des limitations de Copilot Chat.

Fournir des commentaires

Si vous rencontrez des problĂšmes ou des limitations avec Copilot Chat, nous vous recommandons de fournir un feedback via le lien Partager un feedback dans l’interface Copilot Chat de votre IDE. Cela peut aider les dĂ©veloppeurs Ă  amĂ©liorer l’outil, et Ă  rĂ©soudre les problĂšmes ou les limitations.

Rester informé

Copilot Chat est une nouvelle technologie qui est susceptible d’évoluer au fil du temps. Il est recommandĂ© de se tenir informĂ© des mises Ă  jour ou des modifications apportĂ©es Ă  l’outil ainsi que des nouveaux risques ou des bonnes pratiques en matiĂšre de sĂ©curitĂ© qui peuvent apparaĂźtre. Les mises Ă  jour automatisĂ©es des extensions sont activĂ©es par dĂ©faut dans Visual Studio Code, Visual Studio et la suite d’IDE JetBrains. Pour GitHub Copilot Chat in GitHub.com, vous aurez toujours accĂšs Ă  la derniĂšre expĂ©rience de produit. Si vous avez activĂ© les mises Ă  jour automatiques, Copilot Chat est mis Ă  jour automatiquement vers la derniĂšre version quand vous ouvrez votre IDE. Pour plus d’informations sur les mises Ă  jour automatiques dans votre IDE, consultez la documentation Visual Studio Code, la documentation Visual Studio et la documentation pour votre IDE JetBrains.

Limitations de GitHub Copilot Chat

En fonction de facteurs comme votre codebase et vos donnĂ©es en entrĂ©e, vous pouvez rencontrer diffĂ©rents niveaux de performances lors de l’utilisation de Copilot Chat. Les informations suivantes sont conçues pour vous aider Ă  comprendre les limitations du systĂšme et les concepts clĂ©s des performances tels qu’ils s’appliquent Ă  Copilot Chat.

Étendue limitĂ©e

Copilot Chat a Ă©tĂ© entraĂźnĂ© sur un corpus de code de grande taille, mais il a nĂ©anmoins toujours une Ă©tendue limitĂ©e et peut ne pas ĂȘtre en mesure de gĂ©rer des structures de code plus complexes ou des langages de programmation obscurs. Pour chaque langage, la qualitĂ© des suggestions que vous recevez peut dĂ©pendre du volume et de la diversitĂ© des donnĂ©es d’entraĂźnement pour ce langage. Par exemple, JavaScript est bien reprĂ©sentĂ© dans les dĂ©pĂŽts publics et est l’un des langages les mieux pris en charge par GitHub Copilot. Les langages avec moins de prĂ©sence dans les dĂ©pĂŽts publics peuvent ĂȘtre plus problĂ©matiques pour Copilot Chat quant Ă  l’assistance qu’il vous fournit. En outre, Copilot Chat ne peut suggĂ©rer du code qu’en fonction du contexte du code en cours d’écriture, de sorte qu’il peut ne pas ĂȘtre en mesure d’identifier des problĂšmes de conception ou d’architecture plus vastes.

Biais potentiels

Les donnĂ©es d’entraĂźnement de Copilot sont extraites de dĂ©pĂŽts de code existants, qui peuvent contenir des biais et des erreurs qui peuvent ĂȘtre perpĂ©tuĂ©s par l’outil. En outre, Copilot Chat peut ĂȘtre biaisĂ© en faveur de certains langages de programmation ou styles de codage, ce qui peut conduire Ă  des suggestions de code non optimales ou incomplĂštes.

Risques liés à la sécurité

Copilot Chat gĂ©nĂšre du code en fonction du contexte du code en cours d’écriture, ce qui peut potentiellement exposer des informations sensibles ou des vulnĂ©rabilitĂ©s si ce code n’est pas utilisĂ© avec attention. Vous devez ĂȘtre prudent quand vous utilisez Copilot Chat pour gĂ©nĂ©rer du code pour des applications sensibles Ă  la sĂ©curitĂ©, et toujours passer en revue et tester le code gĂ©nĂ©rĂ© de façon approfondie.

Correspondances avec du code public

Copilot Chat est capable de gĂ©nĂ©rer du nouveau code, ce qu’il fait de façon probabiliste. Bien que la probabilitĂ© qu’il puisse produire du code qui correspond Ă  du code faisant partie du jeu d’entraĂźnement soit faible, une suggestion de Copilot Chat peut contenir des extraits de code qui correspondent Ă  du code prĂ©sent dans le jeu d’entraĂźnement. Copilot Chat utilise des filtres qui bloquent les correspondances avec le code public prĂ©sent sur des dĂ©pĂŽts GitHub, mais vous devez toujours prendre les mĂȘmes prĂ©cautions que vous prendriez avec du code que vous Ă©crivez et qui utilise des Ă©lĂ©ments que vous n’avez pas produit de façon indĂ©pendante, y compris les prĂ©cautions nĂ©cessaires pour garantir son adĂ©quation. Ceci inclut des tests rigoureux, l’analyse des adresses IP et la recherche des vulnĂ©rabilitĂ©s de sĂ©curitĂ©. Vous devez vĂ©rifier que votre IDE ou votre Ă©diteur ne compile pas ou n’exĂ©cute pas automatiquement du code gĂ©nĂ©rĂ© avant de le rĂ©viser.

Code erroné

Une des limitations de Copilot Chat est qu’il peut gĂ©nĂ©rer du code qui semble valide, mais qui peut ne pas ĂȘtre sĂ©mantiquement ou syntaxiquement correct, ou qui ne reflĂšte pas correctement l’intention du dĂ©veloppeur. Pour attĂ©nuer le risque d’avoir du code erronĂ©, vous devez rĂ©viser et tester soigneusement le code gĂ©nĂ©rĂ©, en particulier quand vous travaillez sur des applications critiques ou sensibles. Vous devez aussi vĂ©rifier que le code gĂ©nĂ©rĂ© respecte les bonnes pratiques et les modĂšles de conception, et qu’il s’intĂšgre dans l’architecture globale et le style du codebase.

Réponses erronées sur des sujets autres que le codage

Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions autres que celles portant sur le codage et par consĂ©quent, ses rĂ©ponses peuvent ne pas toujours ĂȘtre exactes ou utiles dans ces contextes. Si un utilisateur demande Ă  Copilot Chat une question sans rapport avec le codage, il peut gĂ©nĂ©rer une rĂ©ponse non pertinente ou absurde, ou simplement indiquer qu’il n’est pas en mesure de fournir une rĂ©ponse utile.

Étapes suivantes

Pour plus d’informations sur l’utilisation des donnĂ©es GitHub Copilot Chat, consultez :

Pour aller plus loin

À propos de GitHub Copilot Chat

GitHub Copilot Chat est une interface de conversation qui vous permet d’interagir avec GitHub Copilot pour poser des questions relatives au codage et recevoir leurs rĂ©ponses dans GitHub.com ou des IDE pris en charge. L’interface de conversation permet d’accĂ©der aux informations sur le codage et au support sans avoir Ă  parcourir la documentation ni Ă  rechercher dans des forums en ligne. Pour plus d’informations sur GitHub Copilot, consultez « À propos de GitHub Copilot Individual », « À propos de GitHub Copilot Business » et « À propos de GitHub Copilot Enterprise .»

GitHub Copilot Chat peut rĂ©pondre Ă  un large Ă©ventail de questions relatives au codage sur des sujets comme la syntaxe, les concepts de programmation, les cas de test, le dĂ©bogage, etc. GitHub Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions portant sur autre chose que le codage ni pour fournir des informations gĂ©nĂ©rales sur des sujets autres que le codage.

La principale langue prise en charge pour GitHub Copilot Chat est l'anglais.

GitHub Copilot Chat fonctionne en utilisant une combinaison de traitement en langage naturel et de machine learning pour comprendre votre question et vous fournir une rĂ©ponse. Ce processus peut ĂȘtre divisĂ© en plusieurs Ă©tapes.

Traitement de l’entrĂ©e

L’invite d’entrĂ©e de l’utilisateur est prĂ©traitĂ©e par le systĂšme Copilot Chat, combinĂ©e Ă  des informations contextuelles (par exemple, le nom du rĂ©fĂ©rentiel que l’utilisateur consulte actuellement et les fichiers qu’il a ouverts) et envoyĂ©es Ă  un grand modĂšle de langage. L’entrĂ©e utilisateur peut prendre la forme d’extraits de code ou ĂȘtre exprimĂ©e en langage normal.

Le grand modĂšle de langage prend l’invite, collecte un contexte supplĂ©mentaire (par exemple, les donnĂ©es de rĂ©fĂ©rentiel stockĂ©es sur GitHub) et fournit une rĂ©ponse basĂ©e sur l’invite. Le systĂšme est destinĂ© seulement Ă  rĂ©pondre Ă  questions relatives au codage.

Analyse du modĂšle de langage

La demande prétraitée est ensuite transmise via le modÚle de langage Copilot Chat, un réseau neuronal qui a été entraßné sur un corps de données texte de grande taille. Le modÚle de langage analyse la demande entrée.

Génération de la réponse

Le modĂšle de langage gĂ©nĂšre une rĂ©ponse en fonction de son analyse de la demande entrĂ©e et du contexte fourni. Le modĂšle de langage peut collecter du contexte supplĂ©mentaire et fournir une rĂ©ponse basĂ©e sur l’invite. Cette rĂ©ponse peut se prĂ©senter sous forme de code gĂ©nĂ©rĂ©, de code suggĂ©rĂ© ou d’explications du code existant.

Mise en forme de la sortie

La rĂ©ponse gĂ©nĂ©rĂ©e par Copilot Chat est mise en forme et prĂ©sentĂ©e Ă  l’utilisateur. Copilot Chat peut utiliser la mise en surbrillance de la syntaxe, l’indentation et d’autres fonctionnalitĂ©s de mise en forme pour ajouter de la clartĂ© Ă  la rĂ©ponse gĂ©nĂ©rĂ©e. Selon le type de question de l’utilisateur, des liens vers le contexte utilisĂ© par le modĂšle lors de la gĂ©nĂ©ration d’une rĂ©ponse, comme les fichiers de code source ou la documentation, peuvent Ă©galement ĂȘtre fournis.

GitHub Copilot Chat est destinĂ© Ă  vous fournir la rĂ©ponse la plus pertinente Ă  votre question. Cependant, il peut ne pas toujours fournir la rĂ©ponse que vous recherchez. Les utilisateurs de Copilot Chat sont responsables de l’examen et de la validation des rĂ©ponses gĂ©nĂ©rĂ©es par le systĂšme pour vĂ©rifier qu’elles sont exactes et appropriĂ©es. En outre, dans le cadre de notre processus de dĂ©veloppement de produits, nous effectuons un Red Teaming pour comprendre et amĂ©liorer la sĂ©curitĂ© de Copilot Chat. Les invites d’entrĂ©e et les complĂ©tions de sortie sont exĂ©cutĂ©es via des filtres de contenu. Le systĂšme de filtrage de contenu dĂ©tecte et empĂȘche la sortie sur des catĂ©gories spĂ©cifiques de contenu, notamment du contenu dangereux, offensant ou hors sujet. Pour plus d’informations sur l’amĂ©lioration des performances de GitHub Copilot Chat, consultez « AmĂ©lioration des performances pour GitHub Copilot Chat ».

Cas d’usage pour GitHub Copilot Chat

GitHub Copilot Chat peut fournir une assistance au codage dans une variété de scénarios.

Génération de cas de test unitaire

Copilot Chat peut vous aider Ă  Ă©crire des cas de test unitaire en gĂ©nĂ©rant des extraits de code en fonction du code ouvert dans l’éditeur ou de l’extrait de code que vous mettez en Ă©vidence dans l’éditeur. Ceci peut vous aider Ă  Ă©crire des cas de test sans consacrer autant de temps Ă  des tĂąches rĂ©pĂ©titives. Par exemple, si vous Ă©crivez un cas de test pour une fonction spĂ©cifique, vous pouvez utiliser Copilot Chat pour suggĂ©rer des paramĂštres d’entrĂ©e possibles et des valeurs de sortie attendues en fonction de la signature et du corps de la fonction. Copilot Chat peut Ă©galement suggĂ©rer des assertions qui garantissent que la fonction fonctionne correctement, selon le contexte et la sĂ©mantique du code.

Copilot Chat peut aussi vous aider Ă  Ă©crire des cas de test pour des cas limites et des conditions limites qui peuvent ĂȘtre difficiles Ă  identifier manuellement. Par exemple, Copilot Chat peut suggĂ©rer des cas de test pour la gestion des erreurs, des valeurs null ou des types d’entrĂ©e inattendus, ce qui vous permet de vĂ©rifier que votre code est robuste et rĂ©silient. Cependant, il est important de noter que les cas de test gĂ©nĂ©rĂ©s peuvent ne pas couvrir tous les scĂ©narios possibles, et que les tests manuels et la rĂ©vision du code sont toujours nĂ©cessaires pour garantir la qualitĂ© du code. Pour plus d’informations sur la gĂ©nĂ©ration de cas de test unitaire, consultez « Poser des questions Ă  GitHub Copilot Chat sur votre code ».

Explication du code et suggestions d’amĂ©liorations

Copilot Chat peut aider Ă  expliquer du code sĂ©lectionnĂ© en gĂ©nĂ©rant des descriptions en langage naturel de la fonctionnalitĂ© et de l’objectif du code. Ceci peut ĂȘtre utile si vous souhaitez comprendre le comportement du code ou pour des parties prenantes non techniques qui doivent comprendre le fonctionnement du code. Par exemple, si vous sĂ©lectionnez une fonction ou un bloc de code dans l’éditeur de code, Copilot Chat peut gĂ©nĂ©rer une description en langage naturel de ce que fait le code et de la façon dont il s’intĂšgre dans le systĂšme global. Ceci peut inclure des informations comme les paramĂštres d’entrĂ©e et de sortie de la fonction, ses dĂ©pendances et son objectif dans l’application au sens plus large.

Copilot Chat peut Ă©galement suggĂ©rer des amĂ©liorations potentielles apportĂ©es au code sĂ©lectionnĂ©, telles que l’amĂ©lioration de la gestion des erreurs et des cas de pĂ©riphĂ©rie, ou des modifications apportĂ©es au flux logique pour rendre le code plus lisible.

En gĂ©nĂ©rant des explications et en suggĂ©rant de la documentation associĂ©e, Copilot Chat peut vous aider Ă  comprendre le code sĂ©lectionnĂ©, ce qui permet une meilleure collaboration et un dĂ©veloppement logiciel plus efficace. Cependant, il est important de noter que les explications et la documentation gĂ©nĂ©rĂ©es peuvent ne pas toujours ĂȘtre exactes ou complĂštes : vous devrez donc passer en revue et parfois corriger la sortie de Copilot Chat.

Proposition de correctifs de code

Copilot Chat peut proposer un correctif pour des bogues dans votre code en suggĂ©rant des extraits de code et des solutions, en fonction du contexte de l’erreur ou du problĂšme. Ceci peut ĂȘtre utile si vous avez du mal Ă  identifier la cause racine d’un bogue ou si vous avez besoin d’aide sur la meilleure façon de le corriger. Par exemple, si votre code produit un message d’erreur ou un avertissement, Copilot Chat peut suggĂ©rer des correctifs possibles en fonction du message d’erreur, de la syntaxe du code et du code environnant.

Copilot Chat peut suggĂ©rer des modifications apportĂ©es Ă  des variables, des structures de contrĂŽle ou des appels de fonction qui peuvent rĂ©soudre le problĂšme, et gĂ©nĂ©rer des extraits de code qui peuvent ĂȘtre incorporĂ©s dans le codebase. Cependant, il est important de noter que les correctifs suggĂ©rĂ©s peuvent ne pas toujours ĂȘtre optimaux ou complets : vous devez donc passer en revue et tester les suggestions.

Answering coding questions

You can ask Copilot Chat for help or clarification on specific coding problems and receive responses in natural language format or in code snippet format.

The response generated by Copilot Chat will use the model's training data set to answer your questions.

This can be a useful tool for programmers, as it can provide guidance and support for common coding tasks and challenges.

Amélioration des performances pour GitHub Copilot Chat

Copilot Chat peut prendre en charge un large Ă©ventail d’applications pratiques, comme la gĂ©nĂ©ration de code, l’analyse de code et les correctifs de code, chacune avec des mĂ©triques de performance et des stratĂ©gies d’attĂ©nuation diffĂ©rentes. Pour amĂ©liorer les performances et s’affranchir de certaines des limitations de Copilot Chat, vous pouvez adopter diffĂ©rentes mesures. Pour plus d’informations sur les limitations de Copilot Chat, consultez « Limitations de GitHub Copilot Chat ».

Limitez vos demandes au sujet concerné

Copilot Chat est destiné à répondre exclusivement à des demandes relatives au codage. Par conséquent, limiter la demande à des questions ou des tùches de codage peut améliorer la qualité de la sortie du modÚle.

Utiliser Copilot Chat comme un outil et non pas comme un substitut

Bien que Copilot Chat puisse ĂȘtre un outil puissant pour gĂ©nĂ©rer du code, il est important de l’utiliser comme un outil et non pas comme un substitut Ă  la programmation humaine. Vous devez toujours passer en revue et tester le code gĂ©nĂ©rĂ© par Copilot Chat pour vĂ©rifier qu’il rĂ©pond Ă  vos besoins, et qu’il est exempt d’erreurs ou de problĂšmes de sĂ©curitĂ©.

Utiliser des pratiques de codage sécurisé et de révision du code

Bien que Copilot Chat puisse gĂ©nĂ©rer du code correct sur le plan syntaxique, il peut ne pas toujours ĂȘtre sĂ©curisĂ©. Vous devez toujours suivre les bonnes pratiques pour obtenir un codage sĂ©curisĂ©, comme Ă©viter les mots de passe codĂ©s en dur ou les vulnĂ©rabilitĂ©s liĂ©es Ă  l’injection de SQL ainsi que les bonnes pratiques de rĂ©vision du code pour vous affranchir des limitations de Copilot Chat.

Fournir des commentaires

Si vous rencontrez des problĂšmes ou des limitations avec Copilot Chat, nous vous recommandons de fournir un feedback via le lien Partager un feedback dans l’interface Copilot Chat de votre IDE. Cela peut aider les dĂ©veloppeurs Ă  amĂ©liorer l’outil, et Ă  rĂ©soudre les problĂšmes ou les limitations.

Rester informé

Copilot Chat est une nouvelle technologie qui est susceptible d’évoluer au fil du temps. Il est recommandĂ© de se tenir informĂ© des mises Ă  jour ou des modifications apportĂ©es Ă  l’outil ainsi que des nouveaux risques ou des bonnes pratiques en matiĂšre de sĂ©curitĂ© qui peuvent apparaĂźtre. Les mises Ă  jour automatisĂ©es des extensions sont activĂ©es par dĂ©faut dans Visual Studio Code, Visual Studio et la suite d’IDE JetBrains. Pour GitHub Copilot Chat in GitHub.com, vous aurez toujours accĂšs Ă  la derniĂšre expĂ©rience de produit. Si vous avez activĂ© les mises Ă  jour automatiques, Copilot Chat est mis Ă  jour automatiquement vers la derniĂšre version quand vous ouvrez votre IDE. Pour plus d’informations sur les mises Ă  jour automatiques dans votre IDE, consultez la documentation Visual Studio Code, la documentation Visual Studio et la documentation pour votre IDE JetBrains.

Limitations de GitHub Copilot Chat

En fonction de facteurs comme votre codebase et vos donnĂ©es en entrĂ©e, vous pouvez rencontrer diffĂ©rents niveaux de performances lors de l’utilisation de Copilot Chat. Les informations suivantes sont conçues pour vous aider Ă  comprendre les limitations du systĂšme et les concepts clĂ©s des performances tels qu’ils s’appliquent Ă  Copilot Chat.

Étendue limitĂ©e

Copilot Chat a Ă©tĂ© entraĂźnĂ© sur un corpus de code de grande taille, mais il a nĂ©anmoins toujours une Ă©tendue limitĂ©e et peut ne pas ĂȘtre en mesure de gĂ©rer des structures de code plus complexes ou des langages de programmation obscurs. Pour chaque langage, la qualitĂ© des suggestions que vous recevez peut dĂ©pendre du volume et de la diversitĂ© des donnĂ©es d’entraĂźnement pour ce langage. Par exemple, JavaScript est bien reprĂ©sentĂ© dans les dĂ©pĂŽts publics et est l’un des langages les mieux pris en charge par GitHub Copilot. Les langages avec moins de prĂ©sence dans les dĂ©pĂŽts publics peuvent ĂȘtre plus problĂ©matiques pour Copilot Chat quant Ă  l’assistance qu’il vous fournit. En outre, Copilot Chat ne peut suggĂ©rer du code qu’en fonction du contexte du code en cours d’écriture, de sorte qu’il peut ne pas ĂȘtre en mesure d’identifier des problĂšmes de conception ou d’architecture plus vastes.

Biais potentiels

Les donnĂ©es d’entraĂźnement de Copilot sont extraites de dĂ©pĂŽts de code existants, qui peuvent contenir des biais et des erreurs qui peuvent ĂȘtre perpĂ©tuĂ©s par l’outil. En outre, Copilot Chat peut ĂȘtre biaisĂ© en faveur de certains langages de programmation ou styles de codage, ce qui peut conduire Ă  des suggestions de code non optimales ou incomplĂštes.

Risques liés à la sécurité

Copilot Chat gĂ©nĂšre du code en fonction du contexte du code en cours d’écriture, ce qui peut potentiellement exposer des informations sensibles ou des vulnĂ©rabilitĂ©s si ce code n’est pas utilisĂ© avec attention. Vous devez ĂȘtre prudent quand vous utilisez Copilot Chat pour gĂ©nĂ©rer du code pour des applications sensibles Ă  la sĂ©curitĂ©, et toujours passer en revue et tester le code gĂ©nĂ©rĂ© de façon approfondie.

Correspondances avec du code public

Copilot Chat est capable de gĂ©nĂ©rer du nouveau code, ce qu’il fait de façon probabiliste. Bien que la probabilitĂ© qu’il puisse produire du code qui correspond Ă  du code faisant partie du jeu d’entraĂźnement soit faible, une suggestion de Copilot Chat peut contenir des extraits de code qui correspondent Ă  du code prĂ©sent dans le jeu d’entraĂźnement. Copilot Chat utilise des filtres qui bloquent les correspondances avec le code public prĂ©sent sur des dĂ©pĂŽts GitHub, mais vous devez toujours prendre les mĂȘmes prĂ©cautions que vous prendriez avec du code que vous Ă©crivez et qui utilise des Ă©lĂ©ments que vous n’avez pas produit de façon indĂ©pendante, y compris les prĂ©cautions nĂ©cessaires pour garantir son adĂ©quation. Ceci inclut des tests rigoureux, l’analyse des adresses IP et la recherche des vulnĂ©rabilitĂ©s de sĂ©curitĂ©. Vous devez vĂ©rifier que votre IDE ou votre Ă©diteur ne compile pas ou n’exĂ©cute pas automatiquement du code gĂ©nĂ©rĂ© avant de le rĂ©viser.

Code erroné

Une des limitations de Copilot Chat est qu’il peut gĂ©nĂ©rer du code qui semble valide, mais qui peut ne pas ĂȘtre sĂ©mantiquement ou syntaxiquement correct, ou qui ne reflĂšte pas correctement l’intention du dĂ©veloppeur. Pour attĂ©nuer le risque d’avoir du code erronĂ©, vous devez rĂ©viser et tester soigneusement le code gĂ©nĂ©rĂ©, en particulier quand vous travaillez sur des applications critiques ou sensibles. Vous devez aussi vĂ©rifier que le code gĂ©nĂ©rĂ© respecte les bonnes pratiques et les modĂšles de conception, et qu’il s’intĂšgre dans l’architecture globale et le style du codebase.

Réponses erronées sur des sujets autres que le codage

Copilot Chat n’est pas conçu pour rĂ©pondre Ă  des questions autres que celles portant sur le codage et par consĂ©quent, ses rĂ©ponses peuvent ne pas toujours ĂȘtre exactes ou utiles dans ces contextes. Si un utilisateur demande Ă  Copilot Chat une question sans rapport avec le codage, il peut gĂ©nĂ©rer une rĂ©ponse non pertinente ou absurde, ou simplement indiquer qu’il n’est pas en mesure de fournir une rĂ©ponse utile.

Étapes suivantes

Pour plus d’informations sur l’utilisation des donnĂ©es GitHub Copilot Chat, consultez :

Pour aller plus loin