À propos de GitHub Copilot Spaces
Copilot Spaces vous permet d'organiser le contexte utilisé par Copilot Chat pour répondre à vos questions. Les espaces peuvent inclure des référentiels, du code, des demandes d'extraction, des problèmes, du contenu en texte libre comme des transcriptions ou des notes, des images et des téléchargements de fichiers. Vous pouvez poser à Copilot des questions en rapport avec ce contexte ou partager cet espace avec votre équipe afin de favoriser la collaboration et le partage des connaissances. Les espaces sont également accessibles directement depuis l'IDE via le serveur GitHub MCP distant.
Traitement de l’entrée
Lorsque vous soumettez une question dans un espace, Copilot Chat augmente votre demande avec le contexte approprié à partir de cet espace. Le contexte inclus peut être :
- Fichiers et référentiels que vous avez ajoutés
- Problèmes, demandes de tirage et documentation
- Notes ou transcriptions que vous fournissez
La saisie de l'utilisateur est pré-traitée par le système Copilot Chat, combinée à des informations contextuelles supplémentaires (par exemple, la date et l'heure actuelles), puis envoyée à un modèle linguistique de grande envergure. L’entrée utilisateur peut prendre la forme d’extraits de code ou être exprimée en langage normal.
Le grand modèle linguistique prendra la requête, rassemblera des informations contextuelles supplémentaires (par exemple, les données du référentiel stockées sur GitHub ou les résultats de recherche de Bing) et fournira une réponse basée sur la requête. L’anglais est la langue préférée pour les invites envoyées.
Analyse du modèle de langage
L'invite prétraitée est ensuite transmise au modèle linguistique Copilot Chat, un réseau neuronal qui a été entraîné à partir d'un vaste ensemble de données textuelles. 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 linguistique peut recueillir des informations contextuelles supplémentaires (par exemple, des données de référentiel stockées sur GitHub ou des résultats de recherche provenant de Bing) et fournir une réponse basée sur la requête.
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 peut utiliser la coloration syntaxique, l'indentation et d'autres fonctionnalités de mise en forme pour clarifier la réponse générée. Selon le type de question posée par l’utilisateur, des liens vers le contexte utilisé par le modèle pour générer une réponse, notamment des fichiers de code source, des problèmes, des résultats de recherche Bing ou de la documentation, peuvent également être fournis.
Copilot Chat a pour objectif de 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 tenus de vérifier et de valider les réponses générées par le système afin de s'assurer qu'elles sont exactes et appropriées. De plus, dans le cadre de notre processus de développement de produits, nous mettons en place des équipes rouges afin de comprendre et d'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 Copilot Chat, consultez Amélioration des performances de Copilot Chat.
Cas d'utilisation de Spaces
Développement d’une nouvelle fonctionnalité
Les espaces vous permettent de regrouper le code pertinent, les spécifications du produit et les notes de conception afin que Copilot puisse rapidement expliquer la mise en œuvre actuelle, mettre en évidence les lacunes et rédiger un nouveau code ou les prochaines étapes. Cela vous permet de gagner du temps, de rester en phase avec les exigences et de produire des fonctionnalités de qualité supérieure.
Définir la logique d’une tâche courte et fréquente
Pour les tâches répétitives telles que l’ajout de données de télémétrie ou la gestion des événements, Spaces facilite la documentation du processus une seule fois et sa réutilisation. En mettant à la terre Copilot dans des organigrammes, des exemples ou des schémas, vous garantissez des modèles cohérents, des modèles réutilisables et une exécution efficace au sein de votre équipe.
Partage des connaissances avec son équipe
Les espaces peuvent servir de guides vivants pour les questions courantes sur les projets (par exemple, le fonctionnement de l’authentification ou de la recherche) en collectant le code et la documentation les plus récents au même endroit. Copilot utilise ensuite ce contexte pour expliquer les systèmes, répondre aux questions et intégrer rapidement des collègues avec les meilleures pratiques.
Amélioration des performances pour les espaces
Les espaces peuvent être utilisés dans une grande variété de processus de développement et de collaboration, de la génération de code au partage de connaissances au sein d'une équipe. Pour améliorer les performances et obtenir des réponses plus pertinentes, vous pouvez adopter plusieurs bonnes pratiques. Pour plus d’informations sur les contraintes système, consultez Limitations des espaces GitHub Copilot.
Être sélectif avec le contexte
L’ajout des fichiers, référentiels et notes les plus pertinents permet à Copilot de rester concentré. La surcharge d’un espace avec du contenu inutile peut diluer la qualité des réponses et rendre plus difficile l’obtention de résultats précis.
Maintenir le contexte à jour
À mesure que votre projet évolue, actualisez les fichiers, les problèmes ou la documentation dans votre espace. Un contexte obsolète peut entraîner la génération de réponses inexactes ou incomplètes par Copilot.
Utiliser des instructions avec les sources
La combinaison d’instructions en langage naturel avec des sources organisées permet à Copilot de mieux comprendre votre intention. Les instructions fournissent des conseils, tandis que les sources placent la sortie dans un contexte de projet réel.
Ancrer une conversation dans un espace
Le démarrage de vos conversations à partir d’un espace garantit la continuité et la pertinence. Cela permet aux réponses de Copilot de rester en phase avec le contexte spécifique que vous avez déjà défini, au lieu d'être réinitialisées à chaque nouvelle conversation.
Vérifier la sortie des espaces
Les espaces ancrent les réponses de Copilot dans le contexte que vous fournissez, mais le système peut tout de même commettre des erreurs. Ces erreurs peuvent être des erreurs de votre intention ou des erreurs simples dans la réponse générée. Vérifiez toujours attentivement les résultats fournis par Copilot afin de vous assurer qu'ils correspondent à vos attentes et qu'ils répondent aux normes de qualité et de sécurité de votre équipe avant de les utiliser en production.
Limites des espaces GitHub Copilot
Interprétation de l'intention de l'utilisateur
Les espaces permettent d'ancrer les réponses de Copilot Chat dans un contexte précis, mais le système peut tout de même mal interpréter votre intention. Vérifiez toujours les résultats fournis par Copilot afin de vous assurer qu'ils correspondent à vos objectifs avant de les utiliser dans votre projet.
Limites de contexte
Les espaces ont des limites de taille définies et Copilot Chat traite uniquement une partie du contenu que vous incluez. Cela signifie que tous les fichiers, documents ou notes d’un espace ne seront pas utilisés dans une réponse. La sélection de ce que vous ajoutez permet de s’assurer que Copilot fonctionne avec le contexte le plus pertinent.
Étendue limitée
Les espaces qui contiennent uniquement un référentiel ne sont actuellement pas accessibles dans l’IDE via le serveur GitHub MCP. Pour utiliser les espaces dans l'IDE, vous devrez inclure des éléments contextuels supplémentaires tels que des fichiers, des problèmes ou de la documentation.
Les espaces sont soutenus par Copilot Chat et ont donc été formés à partir d'un vaste corpus de code, mais leur champ d'application reste limité et ils peuvent ne pas être en mesure de traiter 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 référentiels publics, et il s’agit de l’un des langages les mieux pris en charge par GitHub Copilot. Les langues moins représentées dans les référentiels publics peuvent être plus difficiles à prendre en charge par Copilot Chat. En outre, Copilot Chat peut uniquement suggérer du code basé sur le contexte du code en cours d’écriture. Il se peut donc qu’il ne soit pas en mesure d’identifier des problèmes de conception ou d’architecture à une échelle plus étendue.
Réponses inexactes
Même lorsqu’elle est ancrée dans un espace, Copilot Chat peut générer des réponses inexactes, incomplètes ou obsolètes. Cela s’applique à tous les types de sorties, y compris le code, les résumés ou les brouillons d’émission. Validez toujours les résultats par rapport aux exigences de votre propre projet.
Limitations de sécurité
Copilot Chat génère du code basé sur le contexte du code en cours d’écriture, et peut donc potentiellement exposer des informations sensibles ou des vulnérabilités s’il n’est pas utilisé avec soin. Vous devez être prudent lorsque vous utilisez Copilot Chat pour générer du code pour des applications sensibles à la sécurité, et toujours soigneusement passer en revue et tester le code généré.
Considérations relatives à la conformité et aux réglementations
Les utilisateurs doivent évaluer des obligations légales et réglementaires spécifiques potentielles lors de l’utilisation de services et de solutions IA, ce qui peut ne pas convenir à une utilisation dans chaque secteur ou scénario. En outre, les services ou solutions IA ne sont pas conçus pour et peuvent ne pas être utilisés de manière interdite en termes de service applicables et codes de conduite pertinents.
Contenu choquant
Les espaces utilisent Copilot Chat, qui intègre des protections contre les contenus nuisibles, haineux ou offensants. Veuillez signaler tout contenu offensant à copilot-safety@github.com.