Note
GitHub Copilot Extensions은(는) 공개 미리 보기 버전이며 변경될 수 있습니다.
소개
Github Copilot skillsets는 Copilot에서 호출할 수 있는 API 엔드포인트를 정의하여 GitHub Copilot의 기능을 확장할 수 있는 간소화된 방법입니다. 기술 세트를 만들 때 Copilot는 엔드포인트에서 데이터 또는 기능을 제공하는 동안 모든 AI 상호 작용을 처리합니다. 이 가이드에서는 GitHub App에서 기술 세트를 구성하고 배포하는 방법을 안내합니다.
필수 조건
시작하기 전에 다음을 확인합니다.
- 구성된 GitHub App: 기술 세트의 컨테이너 역할을 하려면 GitHub App이 필요합니다. 아직 설정하지 않은 경우 Copilot 확장용 GitHub 앱 만들기 및 Copilot 확장에 대한 GitHub 앱 구성을(를) 참조하세요.
- API 엔드포인트: 기술당 하나의 엔드포인트가 필요합니다. 각 엔드포인트는 다음을 수행해야 합니다.
application/json
MIME 형식으로 POST 요청 수락- GitHub에서 요청 서명을 확인하여 원본을 인증하고 무단 액세스를 방지할 수 있어야 합니다.
- HTTPS를 통해 퍼블릭으로 액세스할 수 있음
서명 확인에 대한 자세한 내용은 Github에서 페이로드가 들어오는지 확인을 참조하세요.
구성 요구 사항
각 기술 세트는 GitHub App에 정의됩니다. 단일 GitHub App에는 최대 5개의 기술이 포함될 수 있습니다. 개별 기술에는 다음이 필요합니다.
- 이름: 명확하고 설명적인 이름입니다(예: “문제 가져오기”).
- 유추 설명: 기술이 수행하는 작업과 사용 시기에 대한 자세한 설명입니다(예: “상태 및 레이블과 같은 특정 조건과 일치하는 외부 문제 검색”).
- API 엔드포인트: JSON 요청을 수락하는 POST 엔드포인트입니다.
- 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 호출을 구성합니다.
기술 세트 사용
기술 세트를 사용하려면 다음을 수행합니다.
-
@
뒤에 확장 이름을 입력합니다. -
자연어로 프롬프트를 입력합니다.
예시:
@skillset-example generate a lorem ipsum
@skillset-example give me sample data with 100 words
Copilot은 요청을 해석하고 적절한 매개 변수를 사용하여 적절한 기술을 호출합니다. 사용할 기술을 지정할 필요가 없습니다. Copilot는 자연어 요청과 제공된 유추 설명에서 이를 결정합니다.
기술 세트 설정
- GitHub Enterprise Cloud의 페이지 오른쪽 위 모서리에서 프로필 사진을 클릭합니다.
- 계정 설정으로 이동합니다.
- 개인 계정 소유한 앱의 경우 설정을 클릭합니다.
- 조직이 소유한 앱의 경우:
- 사용자의 조직을 클릭합니다.
- 조직 오른쪽에서 설정을 클릭합니다.
- 왼쪽 사이드바에서 개발자 설정을 클릭합니다.
- 왼쪽 사이드바에서 GitHub Apps 을 클릭합니다.
- GitHub Apps의 목록에서 기술 세트에 대해 구성하려는 GitHub App을 클릭합니다.
- 왼쪽의 탐색 메뉴에서 Copilot 를 선택합니다.
- 앱 유형 아래의 드롭다운 메뉴에서 기술 세트를 선택합니다.
- 필요에 따라 사전 권한 부여 URL 필드에 인증 프로세스를 시작하기 위해 사용자를 리디렉션할 URL을 입력합니다. API에서 사용자가 특정 기능이나 데이터에 액세스하기 위해 GitHub 계정을 연결하도록 요구하는 경우 이 단계가 필요합니다.
- 추가하려는 각 기술에 대해(최대 5개):
- 새 기술 추가를 클릭합니다.
- 기술에 대한 명확한 이름(예: “Lorem Ipsum 데이터 생성”)을 입력합니다.
- Copilot에서 이 기술을 사용해야 하는 시기를 이해하는 데 도움이 되는 자세한 유추 설명을 작성합니다.
- POST 요청을 받을 API 엔드포인트 URL을 추가합니다.
- 매개 변수 필드에서 예상된 요청 형식을 정의하는 JSON 스키마를 추가합니다.
- 정의 추가를 클릭하여 기술을 저장합니다.
- 저장을 클릭하여 기술 세트를 저장합니다.