동일한 9B Qwen 가중치: Aider에서는 19.1%, 소형 로컬 모델용 스캐폴드 적용 시 45.6%
Same 9B Qwen weights: 19.1% in Aider vs 45.6% with a scaffold adapted to small local models
핵심 요약
소형 모델의 코딩 성능 저하는 모델 자체의 문제보다 스캐폴드와의 부적합성 때문일 가능성이 큼.
- 성능 비교 실험 — 동일한 Qwen 9B 모델을 사용해 기본 Aider와 최적화된 little-coder 스캐폴드를 비교함.
- 스캐폴드 최적화 — 소형 모델의 추론 예산 제한과 파일 덮어쓰기 방지 등 맞춤형 설계를 통해 성능을 대폭 개선함.
- 벤치마크 재평가 — 코딩 에이전트의 성능은 모델 가중치뿐만 아니라 스캐폴드와 모델 간의 적합성에 크게 좌우됨.
- 소형 모델 가능성 — 10B 미만의 로컬 모델이 코딩 에이전트 분야에서 너무 일찍 저평가되었을 수 있음을 시사함.
지난 일주일 동안 간단한 질문을 테스트해 봤습니다.
소형 로컬 모델들은 코딩 에이전트 안에서 종종 약한 모습을 보입니다. 하지만 그게 실제로 모델의 약점 때문일까요, 아니면 스캐폴드(scaffold)가 맞지 않아서일까요?
그래서 모델은 고정해두고 스캐폴드만 바꿔봤습니다.
두 조건 모두 동일한 Qwen3.5-9B Q4 가중치를 사용했습니다.
동일한 Aider Polyglot 벤치마크를 사용했습니다.
총 225개의 연습 문제를 풀었습니다.
결과:
- vanilla Aider: 19.11%
- little-coder: 45.56% (두 번의 전체 실행에 걸친 평균 pass@2)
little-coder는 새로운 모델이 아닙니다. 약 10B 규모의 로컬 모델의 행동 프로필에 맞춰 제가 조정한 스캐폴드입니다. 제한된 추론 예산, 기존 파일을 덮어쓰지 않는 Write 가드, 명시적인 작업 공간 탐색, 그리고 거대한 정적 프리앰블 대신 턴마다 조금씩 기술을 주입하는 방식을 사용했습니다.
이건 학회 논문이 아닙니다. 제대로 된 논문이라면 당연히 포함해야 할 것들이 빠져 있습니다:
- 더 많은 복제 실험
- 구성 요소별 절제 연구(ablations)
- 더 다양한 모델 제품군
- 어쩌면 두 번째 벤치마크
하지만 효과가 충분히 컸기 때문에 지금 공유할 가치가 있다고 생각했습니다(아쉽게도 위 항목들을 수행할 시간이 없습니다).
제 결론은 꽤 좁은 범위입니다:
이 규모에서 코딩 에이전트 벤치마크 결과는 단순히 모델 가중치의 속성만이 아닙니다. 그것은 또한 스캐폴드와 모델 간의 적합성(fit)에 대한 속성이기도 합니다.
저는 10B 미만의 로컬 모델들이 코딩 에이전트 평가에서 너무 일찍 저평가되었을지도 모른다고 생각합니다.
전체 내용, 코드, 수치는 여기서 확인하세요: https://itayinbarr.substack.com/p/honey-i-shrunk-the-coding-agent
복제 시도, 실패 사례, 혹은 이것이 일반화되지 않을 것이라고 생각하는 이유에 대해 매우 관심이 많습니다.


