Note
GitHub Copilot Extensions은(는) 공개 미리 보기 버전이며 변경될 수 있습니다.
GitHub Copilot 내의 기술은 모델에서 사용자 쿼리에 대한 응답으로 특정 작업을 수행하기 위해 호출하는 도구입니다. 기술 세트는 이러한 기술 모음입니다(기술 세트당 최대 5개). Github Copilot skillsets는 Copilot의 기능을 확장하여 작성자가 외부 서비스나 사용자 지정 API 엔드포인트를 Copilot 워크플로에 통합할 수 있는 간소화된 방법을 제공합니다. 기술 세트를 사용하면 작성기에서 복잡한 워크플로나 아키텍처를 관리할 필요 없이 Copilot에서 데이터 검색 또는 타사 서비스에서 작업 실행과 같은 작업을 수행할 수 있습니다.
기술 세트의 빠른 시작 예제는 skillset-example 리포지토리를 참조하세요. 기술 세트를 빌드하는 방법에 대한 자세한 내용은 Copilot 기술 세트 빌드을(를) 참조하세요.
기술 세트와 에이전트의 차이점
기술 세트와 에이전트는 Copilot Extensibility Platform를 통해 Copilot의 기능과 컨텍스트를 확장하는 두 가지 방법입니다. 외부 서비스와 API를 Copilot Chat에 통합할 수 있지만 각각 다른 사용 사례를 제공하고 다양한 수준의 제어와 복잡성을 제공합니다.
- 기술 세트는 Copilot가 최소한의 설정으로 특정 작업(예: 데이터 검색이나 간단한 작업)을 수행해야 하는 개발자를 위해 가볍고 간소화되었습니다. 라우팅, 프롬프트 작성, 함수 평가, 응답 생성을 자동으로 처리하므로 빠르고 간단한 통합에 적합합니다.
- 에이전트는 요청이 처리되고 응답이 생성되는 방식을 완전히 제어해야 하는 복잡한 통합을 위한 것입니다. 사용자 지정 논리를 구현하고, 다른 LLM 및/또는 Copilot API와 통합하고, 대화 컨텍스트를 관리하고, 사용자 상호 작용의 모든 측면을 처리할 수 있습니다. 에이전트는 더 많은 엔지니어링과 유지 관리가 필요하지만, 정교한 워크플로를 위한 최대 유연성을 제공합니다. 에이전트에 대한 자세한 내용은 “Copilot 에이전트 정보” 항목을 참조하세요.
확장성 플랫폼
기술 세트와 에이전트는 모두 사용자 요청과 함수 평가의 흐름을 관리하는 GitHub Copilot Extensibility Platform에서 작동합니다. Copilot skillsets를 사용하여 플랫폼은 라우팅, 프롬프트 작성, 함수 호출, 프롬프트 생성을 처리합니다.
워크플로 개요
확장성 플랫폼은 구조화된 워크플로를 따라 사용자 요청을 처리하고 응답을 생성합니다.
-
사용자 요청
사용자가 Copilot Chat 인터페이스에서 데이터 요청이나 특정 작업 실행과 같은 요청을 실행합니다. -
라우팅
요청은 적절한 확장으로 라우팅됩니다. 즉, 기술 세트의 경우 플랫폼 에이전트는 사용자의 의도에 따라 해당 기술 세트를 식별하고 호출합니다. 각 기술의 유추 설명은 플랫폼에서 호출할 기술을 결정하는 데 도움이 됩니다. -
동적 프롬프트 작성
GitHub Copilot은 다음을 사용하여 프롬프트를 생성합니다.- 사용자의 쿼리입니다.
- 관련 스레드 기록입니다.
- 기술 세트 내에서 사용 가능한 함수입니다.
- 이전 함수 호출의 결과입니다.
-
LLM 완료
LLM(언어 모델)은 프롬프트를 처리하고 다음을 결정합니다.- 사용자의 의도가 기술 세트 함수와 일치하는지 여부입니다.
- 어떤 함수를 어떤 인수를 사용하여 호출할지 결정합니다.
- 필요한 경우 LLM은 더 많은 컨텍스트를 수집하기 위해 추가 함수 호출을 보낼 수 있습니다.
-
함수 평가
확장은 다음을 포함할 수 있는 선택한 함수를 호출합니다.- Copilot skillsets 리포지토리 또는 사용자 메타데이터와 같은 관련 컨텍스트를 수집합니다.
- 외부 서비스에 대한 API 호출을 수행하여 데이터를 검색하거나 작업을 실행합니다.
-
응답 생성 플랫폼은 필요에 따라 프롬프트 작성, LLM 완성, 함수 평가를 통해 반복하여 출력을 구체화합니다. 프로세스가 완료되면 Copilot는 채팅 인터페이스에서 사용자에게 최종 응답을 다시 스트리밍합니다.