AI VIDEO BRIEFING

VS Code Copilot 커스텀 인스트럭션·프롬프트 파일·커스텀 에이전트 차이와 AI 워크플로우

VS Code Copilot의 커스텀 인스트럭션·프롬프트 파일·커스텀 에이전트가 시스템 프롬프트의 어디에 삽입되는지와, 셋을 조합해 AI 코딩 워크플로우를 구성하는 방법을 정리했다.

VS Code의 커스텀 인스트럭션·프롬프트 파일·커스텀 에이전트, 무엇이 어떻게 다른가 영상 대표 이미지

핵심 메시지

  • VS Code Copilot은 시스템 프롬프트(핵심 정체성→일반 지침→도구 사용→출력 형식)와 여러 사용자 프롬프트(환경·워크스페이스·컨텍스트 정보, 첨부 파일)를 쌓아 컨텍스트 윈도를 구성한다.
  • 커스텀 인스트럭션은 프로젝트의 고수준 정보를 담아 시스템 프롬프트 끝에 추가되며, copilot-instructions 파일이 항상 가장 마지막에 온다.
  • 프롬프트 파일은 재사용 가능한 프롬프트로, 시스템 프롬프트가 아니라 사용자 프롬프트 영역에 들어가고 사용할 모델까지 지정할 수 있다.
  • 커스텀 에이전트(옛 ‘커스텀 모드’)는 에이전트의 정체성과 워크플로우를 정의해 시스템 프롬프트 끝(커스텀 인스트럭션 뒤)에 추가된다.
  • 컨텍스트가 길어질수록 정확도가 떨어지는 ‘컨텍스트 로트’가 실재하므로, 삽입 위치보다 워크플로우 구성에 집중하고 필요할 때 새 채팅으로 컨텍스트를 비우는 편이 낫다.

쉽게 이해하기

영상은 VS Code에서 커스텀 인스트럭션, 프롬프트 파일, 커스텀 에이전트가 무엇이 다른지를 푼다. 그 전에 발표자는 Copilot이 프롬프트를 어떻게 구성하는지 설명한다. 시스템 프롬프트는 일반적인 정체성과 전역 규칙으로 시작해, 모델별 특성을 반영한 일반 지침, 내장 도구 사용법, 출력 형식 지침 순으로 쌓인다. 이어 사용자의 OS 같은 환경 정보, 프로젝트 구조 같은 워크스페이스 정보, 현재 날짜·열린 터미널·첨부 파일 같은 컨텍스트 정보가 사용자 프롬프트로 더해진 뒤 실제 메시지가 전송된다.

커스텀 인스트럭션은 프로젝트의 아키텍처나 패턴 같은 고수준 정보를 담아 모델이 더 나은 답을 내도록 돕는다. VS Code의 톱니바퀴 메뉴로 자동 생성할 수 있고, 발표자는 모든 프로젝트에 권장한다. 이 내용은 시스템 프롬프트의 가장 끝에 삽입되며, 여러 개를 만들 수 있되 copilot-instructions 파일은 언제나 마지막에 온다. 커뮤니티가 기여한 인스트럭션·프롬프트 파일·에이전트를 모아둔 ‘Awesome Copilot’ 저장소에서 골라 설치할 수도 있다.

프롬프트 파일은 채팅에서 슬래시로 불러 쓰는 재사용 프롬프트다. 프런트매터에서 설명은 물론 사용할 모델까지 지정할 수 있어, 호출 시 자동으로 해당 모델로 전환된다. 예컨대 작은 모델을 지정해 두면 프리미엄 요청을 아낄 수 있다. 프롬프트 파일의 내용은 시스템 프롬프트가 아니라 사용자 프롬프트 영역의 맨 위에 추가되고, 메시지에서는 특수 구문으로 그 내용을 가리킨다.

발표자는 삽입 위치가 정확도에 영향을 주는지는 단정할 수 없다면서도 ‘컨텍스트 로트(context rot)’는 실재한다고 강조한다. 컨텍스트 윈도가 길어질수록 모델 성능이 떨어지며, 그는 32,000 토큰 구간에서 Claude 3.5 Sonnet의 정확도가 88%에서 30%로 급락한 인용 사례를 든다. 그래서 삽입 위치를 고민하기보다 도구를 설계된 용도대로 써서 워크플로우를 구성하라고 권한다.

마지막은 커스텀 에이전트다. 정보를 ‘제공’하는 커스텀 인스트럭션과 달리, 에이전트에게 정체성과 워크플로우를 부여하는 에이전트 시스템 프롬프트에 가깝고 시스템 프롬프트 끝(커스텀 인스트럭션 뒤)에 추가된다. 발표자는 셋을 조합한 자신의 워크플로우를 보여준다. 계획용 프롬프트 파일로 큰 모델이 분기 단위 계획을 세우게 한 뒤, 새 채팅에서 큰 모델로 모든 코드를 마크다운 구현 문서에 작성하게 하고, 다시 새 채팅에서 작은 모델로 그 문서를 단계별로 그대로 구현시킨다. 각 단계는 작은 커밋이 되어 하나의 PR로 쌓인다.

주요 인사이트

  • 커스텀 인스트럭션·프롬프트 파일의 정확한 삽입 위치가 성능에 주는 영향은 단정하기 어렵지만, 컨텍스트가 길어질수록 정확도가 떨어지는 ‘컨텍스트 로트’는 실제 현상이다.
  • 프롬프트 파일에 모델을 지정하면 사용할 때 자동으로 그 모델로 전환돼, 값비싼 프리미엄 모델의 낭비를 줄일 수 있다.
  • 큰 모델로 모든 코드를 마크다운 구현 문서에 한 번에 써두고 작은(무료) 모델로 그대로 구현하면, 프리미엄 사용량을 아끼면서 반복 작업할 수 있다.
  • 각 단계를 작고 테스트 가능한 커밋으로 두고 누적해 하나의 PR을 완성하는 방식으로 워크플로우를 구성한다.
  • 단계마다 새 채팅으로 컨텍스트를 비워 컨텍스트 로트를 피한다.

자주 묻는 질문

커스텀 인스트럭션과 커스텀 에이전트의 근본 차이는?

커스텀 인스트럭션은 프로젝트 정보를 ‘제공’하는 것이고, 커스텀 에이전트는 에이전트에게 정체성과 워크플로우를 부여하는 에이전트 시스템 프롬프트에 가깝다.

프롬프트 파일은 시스템 프롬프트에 들어가나?

아니다. 프롬프트 파일의 내용은 사용자 프롬프트 영역의 맨 위(컨텍스트 정보보다 앞)에 추가되고, 메시지에서는 특수 구문으로 그 내용을 가리킨다.

‘컨텍스트 로트’란 무엇인가?

컨텍스트 윈도가 길어질수록 모델의 성능·정확도가 떨어지는 현상이다. 영상에서는 32,000 토큰 프롬프트에서 Claude 3.5 Sonnet의 정확도가 88%에서 30%로 떨어진 예가 인용됐다.

발표자가 프리미엄 모델 사용량을 아끼는 방법은?

큰 모델로 구현 코드를 마크다운 문서에 한 번에 작성하게 한 뒤, 작은 모델로 그 문서를 그대로 구현시켜 비용을 절감한다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식