How we made GitHub Copilot CLI more selective about delegation

개요

GitHub Copilot CLI는 에이전트 시스템에서 불필요한 위임으로 인한 오버헤드와 지연을 줄이기 위해 서브 에이전트 위임을 더 선별적으로 만드는 '스마트 서브 에이전트 위임' 기능을 출시했다.

주요 내용

* 문제점: 에이전트 시스템에서 과도한 서브 에이전트 위임은 단순 작업에 불필요한 단계를 추가하고, 컨텍스트 재확인, 중복 검색, 순차적 위임 및 실패 가능성이 높은 서브 에이전트 경로를 유발하여 성능 저하와 사용자 대기 시간 증가를 초래한다.
* 목표: 개발자가 서브 에이전트를 통해 실질적인 이점을 얻을 때 위임하고, 오버헤드만 발생하는 경우는 피하며, 진정으로 독립적인 실행이 가능한 작업은 병렬화하도록 하는 것을 목표로 한다.
* 개선 과정:
* 분석: LLM을 사용하여 에이전트 궤적을 분석하여 어떤 위임이 도움이 되고 어떤 것이 오버헤드를 추가하는지 식별했다. 이를 통해 메인 에이전트가 직접 처리할 수 있는 간단한 탐색 및 편집 작업은 그대로 두고, 더 광범위하거나 병렬화 가능한 작업에 서브 에이전트를 활용하도록 개선 방향을 설정했다.
* 변경: 메인 에이전트가 자체적으로 빠르게 진행할 수 있을 때는 집중하고, 전문가 서브 에이전트가 실제적인 이점을 창출할 때 위임하며, 작업이 진정으로 독립적일 때 병렬화하는 더 선별적인 오케스트레이션 정책을 적용했다. 서브 에이전트 사용 시 메인 에이전트가 결과를 기다리는 대신 독립적인 작업을 계속 진행하도록 했다.
* 검증: 자동 생성된 회귀 테스트 및 기존 벤치마크로 오프라인 검증을 수행하고, 프로덕션 A/B 테스트를 통해 신뢰성, 응답성, 서브 에이전트 작업량 및 품질을 측정했다.
* 결과: '스마트 서브 에이전트 위임' 기능 출시 후 프로덕션 A/B 테스트에서 세션당 도구 실패율 23% 감소 (검색 도구 27%, 편집 도구 18% 감소) 및 P95 사용자 총 대기 시간 5%, P75 사용자 총 대기 시간 3% 감소를 달성했으며, 품질 저하는 없었다.
* 개발자 혜택: 단순 작업은 더 빠르게 직접 처리되고, 복잡한 작업에는 가치가 더해지는 전문가 도움이 제공되며, 장기 실행 세션은 불필요한 대기 없이 더 원활하게 진행된다. 개발자 워크플로우는 동일하게 유지되지만 Copilot CLI의 작업 조정 능력이 향상된다.
* 향후 계획: Copilot CLI가 개발자의 작업 흐름 전반에 걸쳐 적절한 모델, 에이전트, 도구를 선택하는 방식을 개선하고, 작업 계획, 서브 에이전트 조정, 종단 간 결과 측정 방식을 지속적으로 개선하여 대기 시간 감소, 불필요한 실패 감소, 에이전트 세션의 더 유용한 진행을 목표로 한다.

시사점

GitHub Copilot CLI의 '스마트 서브 에이전트 위임' 개선은 더 나은 오케스트레이션을 통해 개발자 경험을 향상시킬 수 있음을 보여주며, 이는 시스템이 더 많은 옵션을 제공하는 대신 내부적으로 작업을 더 효과적으로 조정할 때 발생한다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions