I Put My Agent's Model Routing Policy in Git. The Bill Dropped Before the Code Did.

개요

코딩 에이전트가 발생하는 비용 문제를 해결하기 위해, 모델 라우팅 정책을 Git과 같은 버전 관리 시스템에 파일로 관리하는 접근 방식이 제시된다.

주요 내용

* 모델 라우팅 정책의 버전 관리: 에이전트가 사용하는 모델을 결정하는 라우팅 규칙을 코드 내부에 숨기는 대신, JSON 형식의 정책 파일로 관리하여 diff, 리뷰, 롤백이 가능하도록 한다.
* 정책 파일의 구성:
* tiers: 무료(gratis), 표준(standard), 고비용(heavy) 등 모델 티어를 정의하고, 각 티어가 수락할 수 있는 작업 유형(accept_when)을 명시한다.
* escalation: 각 티어별 재시도 횟수 제한 및 재시도 실패 시 처리 방식(예: 이슈 생성)을 설정한다.
* gate: 작업이 에이전트 외부에서 실행되기 전에 통과해야 하는 검증 단계(예: make verify)와 타임아웃을 설정한다.
* 안전 설계 원칙:
* 기계적 게이트: 모든 패치는 실제 테스트 스위트, 린터, 타입체커를 통과해야 하며, 모델이 다른 모델의 출력을 평가하지 않는다.
* 에스컬레이션 상한선: 재시도 횟수에 제한을 두어 무한 루프를 방지한다.
* 기본 방향은 하향: 불확실한 작업은 낮은 티어에서 시작하여 실패하면 상위 티어로 이동하도록 한다.
* 섀도우 모드를 통한 검증: 실제 모델 라우팅 전에 정책을 섀도우 모드로 실행하여, 무료 티어의 오탐지 비율, 무료 티어로 라벨링된 작업의 재작업 빈도, 예상 지출과 실제 지출 등을 분석하여 정책의 신뢰성을 검증한다.
* 경제적 이점: 최저 티어를 무료로 제공함으로써, 대부분의 간단한 작업은 무료로 처리되어 전체 시스템의 예상 비용이 강력한 모델이 필요한 소수의 작업으로 수렴된다.
* 한계점: 약한 테스트 스위트, 불안정한 분류기(classifier), 상호작용 지연, 안전이 중요한 코드 등에서는 이 방식이 효과적이지 않을 수 있다.

시사점

모델 라우팅 정책을 Git에 통합하여 관리하는 것은 코딩 에이전트의 비용을 효과적으로 제어하고, 작업의 안전성과 신뢰성을 높이는 실용적인 방법이다.

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

댓글

GitHub Discussions