Skip to main content

Создание наборов навыков Copilot

Узнайте, как создать Github Copilot skillsets и интегрировать пользовательские инструменты и функции в среду Copilot.

Note

GitHub Copilot Extensions находится в public preview и подлежит изменению.

Введение

Github Copilot skillsets — это упрощенный способ расширения функциональных возможностей GitHub Copilot, определяя конечные точки API, которые Copilot могут вызываться. При создании набора навыков Copilot обрабатывает все взаимодействия СИ, а конечные точки предоставляют данные или функциональные возможности. В этом руководстве описывается настройка и развертывание набора навыков в GitHub App.

Необходимые компоненты

Прежде чем начать, убедитесь, что у вас есть следующее:

  1. Настроенный объект GitHub App: вам потребуется GitHub App в качестве контейнера для набора навыков. Если вы еще не настроили его, обратитесь к [AUTOTITLE и Настройка приложения GitHub для расширения Copilot](/copilot/building-copilot-extensions/creating-a-copilot-extension/creating-a-github-app-for-your-copilot-extension).
  2. Конечные точки API. Для каждого навыка требуется одна конечная точка. Каждая конечная точка должна:
    • Прием запросов POST с типом application/json MIME
    • Проверьте подпись запросов из GitHub для проверки подлинности источника и предотвращения несанкционированного доступа
    • Общедоступный доступ через HTTPS

Дополнительные сведения о проверке подписи см. в разделе "Проверка того, что полезные данные приходят из Github".

Требования настройки

Каждый набор навыков определяется в пределах GitHub App. Один GitHub App может содержать до пяти навыков. Каждому отдельному навыку требуется:

  • Имя: четкое и описательное имя (например, "Получить проблемы").
  • Описание вывода: подробное описание того, что делает навык и когда его использовать (например, "Поиск внешних проблем, соответствующих определенным критериям, таким как состояние и метки").
  • Конечная точка API: конечная точка POST, принимаюющая запросы JSON.
  • Схема JSON: структура данных, которые ожидает конечная точка.

Пример схемы JSON

В этом примере демонстрируется навык, требующий двух параметров: строки состояния и строки метки. Если параметры отсутствуют, пустой объект с типом "object" должен передаваться в виде текста запроса.

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

Этот формат позволяет пользователям выполнять запросы естественного языка, такие как find open security issues и Copilot структурировать соответствующий вызов API.

Использование набора навыков

Чтобы использовать набор навыков, выполните приведенные далее действия.

  1. Введите @ имя расширения.

  2. Введите запрос на естественном языке.

    Например:

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

Copilot интерпретирует запрос и вызывает соответствующий навык с правильными параметрами. Нет необходимости указывать, какой навык следует использовать: Copilot определяет это из запроса естественного языка и предоставленных описаний вывода.

Настройка набора навыков

  1. В правом верхнем углу любой страницы на GitHubщелкните фото профиля.
  2. Перейдите к настройкам учетной записи.
    • Для приложения, принадлежащих личная учетная запись, нажмите кнопку "Параметры".
    • Для приложения, принадлежащих организации:
      1. Щелкните Your organizations (Ваши организации).
      2. Справа от организации нажмите кнопку "Параметры".
  3. На левой боковой панели щелкните Параметры разработчика.
  4. На левой боковой панели щелкните GitHub Apps.
  5. В списке GitHub Appsщелкните GitHub App для набора навыков.
  6. В меню навигации слева выберите Copilot.
  7. В разделе "Тип приложения" выберите "Набор навыков" в раскрывающемся меню.
  8. При необходимости в поле URL-адреса предварительной авторизации введите URL-адрес , в котором пользователи будут перенаправлены для запуска процесса проверки подлинности. Этот шаг необходим, если API требует, чтобы пользователи подключали свою учетную запись GitHub для доступа к определенным функциям или данным.
  9. Для каждого навыка, который требуется добавить (максимум 5):
    1. Нажмите кнопку "Добавить новый навык".
    2. Введите четкое имя навыка (например, "Создать данные Lorem Ipsum").
    3. Напишите подробное описание вывода, чтобы помочь Copilot понять, когда использовать этот навык.
    4. Добавьте URL-адрес конечной точки API, который получит запросы POST.
    5. В поле "Параметр" добавьте схему JSON, определяющую ожидаемый формат запроса.
    6. Нажмите кнопку "Добавить определение", чтобы сохранить навык.
  10. Нажмите кнопку "Сохранить", чтобы сохранить набор навыков.