저사양 GPU/RAM 사용자를 위한 더 나은 코딩 모델!
A better coder for the small-GPU/small-RAM crowd!
핵심 요약
저사양 하드웨어에서도 에이전트 코딩이 가능하도록 최적화된 4B 모델 'Sharp-Spark-X2.5'가 공개되었습니다.
- 모델 최적화 — 저사양 기기용으로 imatrix 및 비표준 양자화 적용
- 에이전트 코딩 — 소형 모델임에도 자율적인 코딩 작업 수행 가능
- 하드웨어 접근성 — 스마트폰이나 구형 노트북에서도 실행 가능한 수준
- 성능 지표 — SWE-bench-Live를 활용해 실무 코드베이스 문제 해결력 검증
소형 모델로도 에이전트 코딩이나 업무를 제대로 수행할 수 있게 만드는 작업을 해왔어. 전 세계 대부분의 사람들은 3.8-27B는커녕 35B-A3B나 9B dense 모델을 돌릴 만한 사양의 하드웨어를 갖추지 못했거든. 그래서 사양이 낮은 기기를 쓰는 사람들도 로컬에서 에이전트 코딩을 할 수 있게 만들고 싶었지. 이 양자화 모델은 스마트폰이나 구형 게이밍 노트북에서도 돌아가는데, 이 체급의 모델에서는 본 적도, 측정해 본 적도 없는 수준으로 실제 코딩 문제를 알아서 척척 해결해. Spark-X2.5-4B는 이미 동급 최강 수준인데, 이번 개선으로 성능을 극한까지 끌어올렸다고 봐. 소형 모델의 성능과 속도가 조금이라도 개선돼서, AI 경쟁에서 도태될 뻔한 구형 하드웨어들이 다시 활약할 수 있게 된다면 좋겠어.
SharpSpark가 Spark-4B에 가한 변경 사항은 크게 세 가지야. 첫째, 채팅 템플릿 문제를 수정했고 시스템 프롬프트를 에이전트 코딩 동작, 토큰 사용량, 정확도를 개선하는 방향으로 싹 바꿨어. 둘째, 모델에 맞춘 커스텀 중요도 행렬(importance matrix)을 보정해서, 에이전트 코딩 작업에 중요한 텐서 부분에 비트 정밀도를 집중 배치했어. imatrix 코퍼스는 에이전트 코딩과 사이버 보안 쪽에 가중치를 엄청나게 줬는데, 이게 어려운 버그를 찾고 해결하는 데 필요한 인지 능력을 보호해 주거든.
그다음, Spark를 최적화된 비표준 양자화 전략으로 양자화했어. 표준 llama.cpp GGUF 양자화와는 다르게 텐서별로 비트를 다르게 할당했지. KL-divergence와 긴 문맥 검색 성능을 최적화하려고 텐서별 할당 방식을 테스트하는 툴을 직접 만들었는데, 결국 KL-divergence 같은 전통적인 충실도 지표보다는 SWE-bench-Live 성능을 우선시하는 쪽으로 수동 조정을 좀 했어. 특정 수준 이하의 복잡한 작업에서는 기존 지표들이 실제 성능을 제대로 반영하지 못한다는 연구 결과도 있으니까.
만약 GPU 사양이 낮거나 램이 16GB 이하라 35B-a3b MoE 모델을 부분 오프로딩으로도 못 돌리는 상황이라면, 지금 당장 긴 문맥의 에이전트 소프트웨어 개발을 위해 선택할 수 있는 최고의 옵션일 거야. SWE-bench-Live를 지표로 삼은 건 실제 코드베이스 기반의 난이도 높은 문제들을 다루기 때문이야.
난 그냥 비영리 사이드 프로젝트로 이걸 하는 자원봉사자일 뿐이니까, 벤치마크가 아주 방대하지 않더라도 너그럽게 봐줘. 다른 프로젝트들도 병행하느라 시간과 노력을 들여서 할 수 있는 만큼만 돌려본 거거든. 그래도 이 양자화 모델이 설계된 목적에 맞는 작업들에서 성능이 개선됐다는 걸 증명하기엔 충분하다고 봐.
https://huggingface.co/peculiar-ragdoll/Sharp-Spark-X2.5-4B-GGUF

