4B 파라미터 모델로 벤치마크 87%를 달성한 코딩 에이전트 SmallCode 개발기
요약
SmallCode는 Gemma 4와 같은 4B 규모의 작은 로컬 모델에서도 높은 성능을 발휘하도록 설계된 코딩 에이전트입니다. 복합 도구 제공, 자동 개선 루프, 실패 시 코드 분해 기술을 통해 모델의 크기 한계를 극복하고 벤치마크 87%의 성과를 달성했습니다.
핵심 포인트
- 복합 도구(Compound tools)를 통해 연속적인 도구 호출 시 발생하는 일관성 상실 문제를 해결하고 실패율을 절반으로 감소시킴
- 컴파일 및 린트 에러를 모델에 즉시 피드백하는 개선 루프를 통해 모델의 수정 능력을 극대화함
- 작업 실패 시 관련 코드만을 선별하여 반환하는 분해(Decomposition) 기술 적용
- LM Studio, Ollama 등 다양한 OpenAI 호환 엔드포인트를 지원하여 로컬 모델 활용성 증대
모든 코딩 에이전트(OpenCode, Cursor, Claude Code)가 사용자가 GPT-5.4나 Claude Opus를 실행하고 있다고 가정하는 것에 좌절감을 느꼈습니다. Gemma나 Qwen 같은 로컬 모델(Local Model)로 이들을 사용하려고 하면 제대로 작동하지 않습니다. 도구 호출(Tool calls)이 실패하거나, 컨텍스트(Context)가 넘치고, 다단계 작업(Multi-step tasks)이 무너지는 현상을 자주 발견했습니다.
그래서 저는 SmallCode를 만들었습니다. 이는 작은 로컬 모델들을 위해 처음부터 설계되었습니다.
결과: 토큰당 4B 파라미터만을 활성화하는 Gemma 4 모델로 벤치마크 작업의 87/100을 통과했습니다. OpenCode는 14B 모델로 약 75%의 점수를 기록합니다. 모델의 크기가 아니라 하네스(Harness)가 핵심적인 역할을 수행합니다.
작동 원리 (작은 모델을 신뢰할 수 있게 만드는 기술들):
- 복합 도구 (Compound tools): 모델이 4개의 도구 호출을 체인처럼 연결하게 만드는 대신(파일 찾기 → 파일 읽기 → 파일 수정 → 검증), SmallCode는 이 4가지를 모두 수행하는 하나의 도구를 제공합니다. 작은 모델들은 3회 이상의 연속적인 호출 이후에는 일관성(Coherence)을 잃습니다. 이 방식은 실패율을 절반으로 줄여줍니다.
- 개선 루프 (Improvement loop): 모델이 코드를 작성할 때마다 SmallCode는 즉시 컴파일/린트(Compile/Lint)를 수행합니다. 실패할 경우 에러를 자동으로 다시 입력(Feed back)합니다. 모델이 첫 시도에 바로 맞출 만큼 똑똑할 필요는 없습니다. 에러를 보여주었을 때 그것을 수정할 수만 있으면 됩니다.
- 실패 시 분해 (Decompose on failure): 모델이 동일한 작업에 두 번 실패하면
"인증(auth)이 어떻게 작동하나요?"라고 물으면, 모델은 그래프를 탐색하여 15개의 무작위 파일 조각이 아닌, 관련된 연결된 코드만을 반환합니다.
외형 및 기능:
전체 화면 터미널 UI (OpenCode/vim과 유사), 스크롤 가능한 채팅, /를 사용하는 커맨드 팔레트 (Command Palette), 플러그인 시스템, 세션 간 지속되는 메모리 (Persistent memory).
제한 사항:
- LSP (Language Server Protocol) 통합 미지원 (현재 기준)
- 멀티 세션 미지원 (현재 기준)
- 데스크톱 앱 미지원
- 프런티어 모델 (Frontier model) 사용자들을 대상으로 하는 Claude Code와 경쟁하지 않음
설치 방법:
npm install -g smallcode
cd your-project
smallcode
LM Studio, Ollama, 또는 모든 OpenAI 호환 엔드포인트 (OpenAI-compatible endpoint)를 연결하여 사용할 수 있습니다.
MIT 라이선스이며, 모든 내용은 GitHub에서 확인할 수 있습니다: https://github.com/Doorman11991/smallcode
아키텍처 (Architecture)나 벤치마크 방법론 (Benchmark methodology)에 관한 질문은 언제든 환영합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Reddit AI Engineering의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기