Qwen3-Coder 양자화 테스트 결과: UD-Q5_K_M이 압도적임
I ran a quantization shootout on Qwen3-Coder and the results are... interesting
핵심 요약
Qwen3-Coder 모델의 양자화 포맷을 테스트한 결과, UD-Q5_K_M이 속도 저하를 최소화하면서도 가장 뛰어난 품질을 보여줌.
- 양자화 테스트 — Qwen3-Coder 모델을 대상으로 여러 양자화 포맷의 성능과 품질을 비교함.
- UD-Q5_K_M 우세 — MXFP4 대비 파일 크기는 약간 크지만, 모든 품질 지표에서 압도적인 성능을 보임.
- 토큰 정확도 — 양자화로 인한 미세한 오차가 누적되어 긴 문맥에서 환각 현상을 유발할 수 있음.
- 실사용 체감 — 코딩 작업 시 속도 저하는 미미하며, 품질 향상이 훨씬 더 큰 이득을 가져옴.
호기심에 Qwen3-Coder-Next로 양자화 테스트를 돌려봤음. 그동안 시스템에서 속도가 워낙 빨라서 unsloth의 MXFP4_MOE를 계속 써왔는데, 정밀도가 궁금해졌거든. 양자화가 모델 성능을 깎아먹는다는 건 알았지만, 직접 테스트해보기 전까진 이 정도로 심한 줄은 몰랐음.
Hardware: 3× R9700 PRO (96 GB VRAM)
Backend: llama.cpp Vulkan
Eval: wikitext-2 (583 chunks, ctx 512)
Formats tested: MXFP4_MOE Q4_K_M Q5_K_M UD-Q5_K_M
TLDR: UD-Q5_K_M이 대박임! 절반 크기인 포맷들보다 품질이 좋으면서 속도 저하는 거의 없음. Unsloth의 동적 정밀도 방식이 진짜 괜찮음. 이제 더 낮은 양자화 버전도 테스트해봐야 할 듯.
The Numbers
(Claude한테 복붙용 표 만들어달라고 했음)
|Metric|MXFP4|Q4_K_M|Q5_K_M|UD-Q5_K_M|
|:-|:-|:-|:-|:-|
|Same top-1|89.4%|89.6%|93.0%|94.0%|
|Mean KL divergence|0.0746|0.0685|0.0308|0.0217|
|Max KL (worst token)|13.04|5.93|8.19|4.75|
|File size|44.7 GB|45.2 GB|52.9 GB|55.2 GB|
UD-Q5_K_M은 모든 품질 지표에서 승리함. MXFP4보다 고작 10GB 정도 더 클 뿐인데 말이지.
아무도 말하지 않는 사실이 하나 있는데, 토큰 정확도는 지수적으로 누적된다는 거임.
토큰당 일치율에서 5% 차이가 나면, 100번째 토큰에서는 500배 차이가 됨. 모든 LLM은 자기회귀(auto-regressive) 방식이니까. Yann LeCun이 항상 LLM은 지수적으로 발산하는 오류 확률 때문에 고통받는다고 말하는 게 바로 이거임. 환각 현상이 발생하는 지점이 바로 여기라고.
MXFP4 (89.4%) > 100 토큰 출력: 완벽하게 일치할 확률 0.0014%
UD-Q5_K_M (94%) > 100 토큰 출력: 완벽하게 일치할 확률 0.21%
숫자만 보면 별거 아닌 것 같지만, 긴 리팩토링 작업이나 다단계 추론을 할 때는 체감이 확 됨. MXFP4는 훨씬 자주 '궤도를 이탈'함.
물론 이 모든 것에는 속도라는 트레이드오프가 존재함.
Prefill (batch 512): MXFP4가 여전히 가장 빠름 (하드웨어 커널)
Prefill (batch 4096): MXFP4가 다시 승리
Decode: Q4_K_M이 UD-Q5보다 약간 앞서지만, UD-Q5도 22% 더 큰 크기임에도 9% 이내의 차이밖에 안 남.
대화형 코딩(어차피 디코드 중심 작업)에서는 속도 저하가 거의 무시할 수준임.

