Skip to main content

에이전트 품질을 개선하여 AI 사용 최적화

적은 시도에서 작업을 완료하고 결과적으로 더 적은 AI credits수의 작업을 사용하는 고품질 에이전트를 빌드하기 위한 전략을 알아봅니다.

Introduction

에이전트의 범위가 잘 지정되고, 잘 지시되고, 명확한 가드레일 내에서 작동하면 토큰 효율성이 자연스럽게 향상됩니다. 고품질 에이전트는 적은 수의 시도에서 작업을 완료하고, 더 적은 재작업으로 더 명확한 워크플로를 따르고, 비용이 많이 드는 디버깅 및 수정 주기를 방지합니다.

이 문서에 설명된 전략을 따라 에이전트 품질과 AI credits 효율성을 모두 향상시킵니다.

1. 올바른 작업에 적합한 모델 선택

모델 선택은 에이전트 품질과 비용 효율성을 모두 개선하는 가장 빠른 방법 중 하나이지만 종종 간과됩니다. 일반적인 패턴은 기본적으로 모든 작업에 가장 적합한 모델로 설정되지만 결과를 개선하지 않으면서 토큰 사용량이 증가하는 경우가 많습니다. 일부 실행이 많은 시나리오에서는 모델이 작업을 과도하게 생각하거나 불필요한 변경을 도입할 수 있으므로 추론 모델을 과도하게 사용하면 품질이 저하됩니다.

관련된 작업에 따라 모델을 선택합니다.

  • 추론 모델: 아키텍처 결정, 복잡한 디버깅, 시스템 디자인 및 심층 분석이 필요한 작업에 가장 적합합니다.
  • 중간 계층 모델: 계획이 이미 명확하고 에이전트를 효율적으로 실행해야 하는 경우에 가장 적합합니다.
  • 더 가벼운 모델: 리팩터링, 서식 지정, 설명서 업데이트 및 기타 일상적인 범위가 잘 지정된 변경에 가장 적합합니다.

작업에 필요한 만큼의 기능을 사용하고 필요한 만큼 적게 사용합니다. 작업과 일치하는 기능은 결과를 향상시키고 대규모 비용을 직접 제어합니다.

모델 및 작업 유형별 분석은 다른 작업을 사용하여 AI 모델 비교을 참조하세요.

모델의 추론 수준 구성

또한 일부 모델은 모델이 응답하기 전에 모델의 이유를 제어하는 구성 가능한 추론 수준을 지원합니다. 수준이 높을수록 복잡한 문제에 대한 답변이 향상될 수 있지만 더 많은 토큰을 사용하므로 크레딧이 더 많이 사용되므로 기본적으로 일반 수준을 사용하고 더 어려운 작업에 대해서만 발생시켜야 합니다. 구성 가능한 추론은 지원되는 모델에 대해 사용할 수 있습니다 Visual Studio Code코파일럿 CLI .

GitHub Copilot에서 지원되는 AI 모델을(를) 참조하세요.

Copilot 자동 모델 선택 사용

Copilot 자동 모델 선택 는 작업의 의도에 따라 지원 모델을 선택합니다.

정보 Copilot자동 모델 선택을(를) 참조하세요.

2. 프롬프트에 명확한 지침 제공

프롬프트는 에이전트가 수행하는 모든 작업에 대한 방향을 설정합니다. 프롬프트가 모호한 경우 에이전트는 의도를 유추하고, 더 많은 컨텍스트를 탐색하고, 판단 호출을 해야 합니다. 이는 종종 재시도, 범위 드리프트 및 불필요한 토큰 사용으로 이어집니다.

잘 구성된 프롬프트에는 다음 세 가지 특성이 있습니다.

  • 명확한 작업 정의입니다. "이 문제 해결" 대신 문제가 무엇인지, 발생하는 위치 및 예상 결과가 어떻게 표시되는지 설명합니다.
  • 미리 제공된 관련 컨텍스트입니다. 어떤 파일, 서비스, 로그, 오류 또는 입력이 중요한지 이미 알고 있는 경우 이를 포함합니다. 이렇게 하면 에이전트가 불필요한 탐색을 방지할 수 있습니다.
  • 명확한 중지 조건입니다. 에이전트에게 "완료"가 무엇을 의미하는지 알려주세요. 중지 지점이 없으면 에이전트는 추가 커밋을 추가하거나 관련 없는 코드를 리팩터링하거나 범위를 확장하여 목표를 초과하여 계속할 수 있습니다.

이 추가된 지침은 토큰 사용량을 의미 있는 것으로 증가시키지는 않지만 올바른 결과에 도달하는 데 필요한 에이전트 실행 수를 크게 줄일 수 있습니다.

프롬프트 엔지니어링 모범 사례는 GitHub Copilot 채팅에 대한 프롬프트 엔지니어링을 참조하세요.

3. 컨텍스트를 간결하게 유지하세요

Copilot 는 입력 토큰으로 액세스할 수 있는 컨텍스트를 보내고, 해당 컨텍스트가 추가됩니다. 즉, 편집기 탭 열기, 첨부된 파일 및 긴 대화의 전체 앞뒤로 모두 컨텍스트로 계산됩니다.

컨텍스트를 제어하려면 다음을 수행하는 것이 좋습니다.

문제를 전환할 때 새 대화 시작

긴 스레드는 새로운 요청이 있을 때마다 전체 대화 이력을 함께 가져갑니다. 관련 없는 작업으로 이동하면 새 대화를 시작합니다. 다음은 그 예입니다.

  • 코파일럿 CLI에서는 /new(또는 /clear)을(를) 사용하세요.
  • 에서 공동 파일럿 채팅새 채팅 세션을 시작합니다.

계속할 긴 코파일럿 CLI 세션 압축하기

스레드를 계속 진행해야 하지만 크기가 커지면 실행 /compact코파일럿 CLI 하여 기록을 요약하고 컨텍스트 창을 축소하고 필요에 따라 요약에 초점을 맞춥니다(예 /compact focus on the auth module: ).

또한 언제든지 현재 사용량을 확인하는 데 사용할 /context 수 있습니다.

GitHub Copilot 명령 줄 인터페이스 (CLI)에서 컨텍스트 관리을(를) 참조하세요.

프로젝트의 지도 제공 Copilot

잘 관리되는 사용자 지정 지침 파일(예: AGENTS.md 또는 .github/copilot-instructions.md 파일)은 에이전트에게 리포지토리의 구조를 개괄적으로 보여 주므로, 전체 구조를 파악하기 위해 많은 파일을 일일이 읽지 않아도 됩니다. 다양한 유형의 사용자 지정 지침 지원을(를) 참조하세요.

필요한 도구만 가져오기

대규모 도구 집합(예: 전체 MCP 서버의 도구 가치)은 모든 요청의 컨텍스트에 추가됩니다. 워크플로에 맞는 경우 작업과 관련된 도구 집합만 사용하도록 설정합니다.

GitHub MCP 서버에 대한 도구 집합 구성을(를) 참조하세요.

컨텍스트 캐싱 활용

Copilot 는 캐싱을 통해 이미 전송한 컨텍스트를 재사용하여 후속 턴의 비용을 낮춥니다. 그러나 캐시된 컨텍스트는 비활성 기간 후에 만료되며 세션 중간에 모델을 전환할 때 다시 사용되지 않습니다. 두 경우 모두 컨텍스트가 다시 전송되고 새 입력 토큰으로 다시 청구됩니다. 캐싱을 최대한 활용하려면 하나의 연속 세션에서 관련 작업을 유지하고 부분적으로 모델을 전환하지 않도록 합니다.

4. copilot-instructions.md 파일을 사용하여 반복되는 오류 줄이기

영구 지침은 에이전트 상호 작용 간에 일관성을 향상하지만 해당 값은 전적으로 작성 방법에 따라 달라집니다. copilot-instructions.md 리포지토리 수준의 파일은 이 지침을 인코딩하는 가장 직접적인 방법입니다. 개인 및 조직 수준 지침은 더 광범위한 일관성을 위해 위에 계층화할 수 있습니다.

가장 좋은 지침은 짧고 구체적이며 실제 관찰된 에이전트 동작에 근거합니다. 좋은 소리는 들지만 시스템에 적용되지 않는 일반적인 모범 사례는 아닙니다.

포함할 내용:

  • 필수 프레임워크, 라이브러리 또는 디자인 패턴
  • 에이전트가 반복하는 것으로 알려진 실수
  • '간결하게' 또는 '코드만 출력'과 같은 출력 요구사항
  • 에이전트가 따라야 하는 팀별 규칙
  • 빌드, 테스트 및 린트 명령

피해야 할 사항:

  • 긴 일반 설명서
  • 실제 시스템을 반영하지 않는 AI 생성 지침
  • 일회성 기본 설정 또는 거의 사용되지 않는 세부 정보
  • 컨텍스트를 시끄럽게 만드는 오버로드된 명령

코드베이스, 아키텍처, 표준 및 워크플로가 진화함에 따라 지침을 업데이트된 상태로 유지합니다. 이러한 지침은 모든 실행 시 에이전트의 컨텍스트에 포함되기 때문에 작은 개선 사항조차도 반복되는 오류를 줄이고 시간이 지남에 따라 낭비되는 토큰 사용량을 줄일 수 있습니다.

자세한 내용은 GitHub Copilot 대한 리포지토리 사용자 지정 지침 추가을(를) 참조하세요.

5. 연구, 계획, 구현

에이전트를 효과적으로 작업하는 가장 큰 변화 중 하나는 단일 세션에서 모든 작업을 수행하는 것에서 벗어나는 것입니다. 연구, 계획 및 구현이 모두 함께 수행되면 컨텍스트가 빠르게 증가하고 관련없는 정보가 누적되고 에이전트 품질이 시간이 지남에 따라 저하됩니다.

작업을 명확한 단계로 나누기:

  • 연구: 에이전트를 사용하여 코드베이스를 탐색하고, 관련 파일을 식별하고, 종속성을 이해합니다.
  • 계획: 변경하기 전에 상세하고 구조화된 계획 또는 사양을 만듭니다. 여기서 추론 모델이 가장 중요합니다.
    • 코파일럿 CLI에서 /plan를 사용합니다.
    • 공동 파일럿 채팅의 Visual Studio Code에서 에이전트 드롭다운에서 "Plan"을 선택하거나 컨텍스트 창에 plan을 입력합니다.
  • 구현: 포커스가 있는 컨텍스트 및 실행에 적합한 모델을 사용하여 계획에 대해 실행합니다.

단계 간에 새 세션을 시작하면 불필요한 컨텍스트를 전달할 수 없습니다. 이전 단계에서 컨텍스트를 전달하면 토큰 사용량이 증가하고 바이어스가 도입되며 에이전트의 명확성이 감소할 수 있습니다. 각 단계는 필요한 것만 사용하여 작동해야 합니다. 세션 범위를 효과적으로 지정하는 방법에 대한 지침은 GitHub Copilot 사용하여 작업에 대한 모범 사례을 참조하세요.

6. 결정적 가드레일 추가

에이전트는 비결정적이며, 특히 다단계 워크플로에서 매번 올바르지 않습니다. 가드레일이 없으면 작은 오류가 빠르게 복잡해질 수 있습니다. 에이전트는 잘못된 출력을 기반으로 빌드하고, 목표에서 더 멀리 표류하며, 디버깅을 더 비싸고 시간이 많이 걸립니다.

결정적 컨트롤은 명확한 통과/실패 신호를 도입합니다.

  • 단위 테스트는 에이전트의 변경 내용이 예상된 동작을 생성했는지 확인합니다.
  • Linter는 구조와 일관성을 적용하여 서식 문제, 스타일 드리프트 및 피할 수 있는 정리 작업을 방지합니다.
  • 보안 스캔은 되돌리기 더 어려워지기 전에 위험한 패턴을 초기에 탐지합니다.

이러한 컨트롤은 함께 긴밀한 피드백 루프를 만듭니다. 에이전트는 변경, 테스트, 규칙 또는 검사를 수행하며 에이전트는 계속 진행하기 전에 조정합니다. 이렇게 하면 토큰 낭비의 가장 큰 동인 중 하나인 잘못된 변경의 긴 체인을 방지할 수 있습니다.

이러한 가드레일에 투자하는 팀은 재시도 횟수가 줄어들고, 작업 완료 속도가 빨라지고, 에이전트 동작이 더 예측 가능합니다. 개별 단계에서 약간 더 많은 토큰을 미리 사용하는 경우에도 총 토큰 사용량을 줄이는 경우가 많습니다.

다음 단계

에이전트 효율성을 개선하는 것 외에도 지출을 모니터링하고 관리하여 AI credits을(를) 최대한 활용할 수 있습니다:

  • 대시보드 및 예산 컨트롤을 사용합니다. 아래의 "AI 사용량" 페이지는 https://github.com/settings/billing모든 기능과 모델에서 사용량을 세분화하므로 크레딧이 실제로 어디로 가는지 확인하고 그에 따라 조정할 수 있습니다.
  • 비용이 누적되기 전에 비용이 많이 드는 패턴을 파악하세요. 코파일럿 CLI 세션 내에서 작업하는 동안 세션 수준 메트릭을 확인하고 비용이 큰 패턴을 파악하려면 /usage을(를) 사용합니다. 또한 /chronicle tips 최근 세션 기록을 분석하고 보다 효율적으로 사용할 Copilot 수 있는 기회를 제공합니다.
  • 더 큰 허용량을 위해 업그레이드합니다. 월별 한도에 정기적으로 접근하는 경우 더 높은 플랜은 더 많은 수당을 가지기 때문에 추가 사용량에 대해 지불하는 것보다 더 AI credit 경제적일 수 있습니다. 개별 GitHub Copilot 플랜 및 혜택 정보GitHub Copilot 플랜 보기 및 변경을(를) 참조하세요.