Skip to main content

Ensembles de compétences Copilot

Découvrez les étapes permettant de générer Github Copilot skillsets et d’intégrer des outils et fonctions personnalisés dans votre environnement Copilot.

Introduction

Les Github Copilot skillsets sont un moyen simplifié d'étendre les fonctionnalités de GitHub Copilot en définissant des points d'extrémité d'API que Copilot peut appeler. Lorsque vous créez un ensemble de compétences, Copilot gère toutes les interactions IA pendant que vos points de terminaison fournissent les données ou les fonctionnalités. Ce guide vous guide tout au long de la configuration et du déploiement d’un ensemble de compétences dans vos GitHub App.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  1. Une configuration GitHub App: Vous aurez besoin d'une GitHub App pour servir de conteneur à votre ensemble de compétences. Si vous n’en avez pas encore configuré, reportez-vous à Création d’une application GitHub pour votre extension Copilot et Configuration de votre application GitHub pour votre agent Copilot.
  2. Points de terminaison d’API: vous avez besoin d’un point de terminaison par compétence. Chaque point de terminaison doit :
    • Accepter les requêtes POST avec le type MIME application/json
    • Être en mesure de vérifier la signature des demandes de GitHub pour authentifier leur origine et empêcher l’accès non autorisé
    • Être accessible au public via HTTPS

Pour plus d’informations sur la vérification de signature, consultez Vérifier que les charges utiles proviennent de GitHub.

Exigences de configuration

Chaque ensemble de compétences est défini dans un GitHub App. Un seul GitHub App peut contenir jusqu’à cinq compétences. Chaque compétence individuelle a besoin :

  • Nom: nom clair et descriptif (par exemple, « Obtenir des problèmes »).
  • description de l’inférence: explication détaillée de ce que fait la compétence et quand l’utiliser (par exemple, « Recherche des problèmes externes correspondant à des critères spécifiques tels que l’état et les étiquettes »).
  • Point de terminaison de l'API: Un point de terminaison POST qui accepte les requêtes JSON.
  • Schéma JSON: La structure des données attendues par votre point d'accès.

Exemple de schéma JSON

Cet exemple montre une compétence qui nécessite deux paramètres : une chaîne d'état et une chaîne d'étiquette. Si aucun paramètre n’est fourni, un objet vide avec le type 'object' doit être transmis en tant que corps de la requête.

{
 "type": "object",
 "properties": {
   "status": {
     "type": "string",
     "description": "filter issues by status (open, closed)",
     "enum": ["open", "closed"]
   },
   "label": {
     "type": "string",
     "description": "filter issues by label"
   }
 }
}

Ce format permet aux utilisateurs d’effectuer des requêtes en langage naturel comme find open security issues et Copilot structure l’appel d’API approprié.

Développez votre ensemble de compétences

Pour utiliser vos compétences :

  1. Tapez @ suivi du nom de votre extension.

  2. Tapez votre invite en langage naturel.

    Par exemple :

    • @skillset-example generate a lorem ipsum
    • @skillset-example give me sample data with 100 words

Copilot interprète votre requête et appelle la compétence appropriée avec les paramètres appropriés. Il n'est pas nécessaire de préciser quelle compétence utiliser - Copilot le détermine à partir de votre demande en langage naturel et des descriptions d'inférence fournies.

Mise en place d'un ensemble de compétences

  1. Dans le coin supérieur droit de n’importe quelle page sur GitHub, cliquez sur votre photo de profil.
  2. Accédez aux paramètres de votre compte.
    • Pour une application appartenant à un compte personnel, cliquez sur Paramètres.
    • Pour une application appartenant à une organisation :
      1. Cliquez sur Vos organisations.
      2. À droite de l’organisation, cliquez sur Paramètres.
  3. Dans la barre latérale gauche, cliquez sur Paramètres de développeur.
  4. Dans la barre latérale à gauche, cliquez sur GitHub Apps .
  5. Dans la liste des GitHub Apps, cliquez sur la GitHub App que vous souhaitez configurer pour votre ensemble de compétences.
  6. Dans le menu de navigation à gauche, sélectionnez data variables.product.prodname_copilot_short %}.
  7. Sous type d’application, sélectionnez ensemble de compétences dans le menu déroulant.
  8. Si vous le souhaitez, dans le champ URL de pré-autorisation , entrez l’URL dans laquelle les utilisateurs seront redirigés pour démarrer le processus d’authentification. Cette étape est nécessaire si votre API exige que les utilisateurs connectent leur compte GitHub pour accéder à certaines fonctionnalités ou données.
  9. Pour chaque compétence que vous souhaitez ajouter (maximum 5) :
    1. Cliquez sur + Ajouter une nouvelle compétence.
    2. Entrez un **nom ** clair pour la compétence (par exemple, « Générer des données Ipsum Lorem »).
    3. Écrivez une description détaillée de l’inférence pour aider Copilot à comprendre quand utiliser cette compétence.
    4. Ajoutez votre **URL de point de terminaison d’API ** qui recevra les requêtes POST.
    5. Dans le champ Paramètre , ajoutez le schéma JSON définissant le format de requête attendu.
    6. Cliquez sur Ajouter une définition pour enregistrer votre compétence.
  10. Cliquez sur Enregistrer pour enregistrer vos paramètres.