Voodoo Quant, Qwen3.5 0.8B 및 2B 모델에서 Unsloth Dynamic 2.0 KLD 대비 95% 성능 향상
Voodoo Quant beats Unsloth Dynamic 2.0 KLD by 95% in Qwen3.5 0.8B and 2B
핵심 요약
새로운 양자화 기법인 Voodoo Quant를 적용한 Qwen3.5 모델의 성능 향상과 향후 확장 계획을 공유하는 글입니다.
- Voodoo Quant — 모델의 모든 텐서를 최적화하는 새로운 혼합 정밀도 기법 적용
- 성능 비교 — Unsloth 대비 Torch 환경에서 더 안정적이고 범용적인 성능 확보
- 향후 계획 — 27B 및 35B 모델 등 더 큰 모델에 대한 최적화 연구 진행 중
- 기술적 의문 — 코드와 논문 부재로 인한 평가 방식 및 재현성에 대한 커뮤니티의 회의적 시각
다들 안녕, Voodoo Quant라고 불리는 혼합 정밀도 최적화의 최신 기술을 써서 새로 만든 고성능 qwen3.5 gguf 세트 두 개를 가져왔어.
https://huggingface.co/voodooquant/Qwen3.5-0.8B-MTP-Voodoo
https://huggingface.co/voodooquant/Qwen3.5-2B-MTP-Voodoo
Voodoo Quant는 Unsloth Dynamic이랑 비슷한 원리로 작동해. 모델에서 중요한 부분에 더 높은 정밀도의 수치를 할당하는 방식이지. Voodoo의 핵심 차이점은 UD가 텐서 블록 단위로 최적화하는 것과 달리, 모델의 모든 텐서를 최적화한다는 거야. 게다가 그 최적화를 위해 새로운 방법론을 사용했지.
나머지 내용을 편하게 볼 수 있게 그래프랑 표를 정리해 뒀어:
내가 언급했던 95% KLD 개선 수치가 눈에 띄긴 할 텐데, 그래프를 자세히 보면 95%가 어떻게 가능한지 설명해 주는 더 흥미롭고 현실적인 이야기가 있어. 한번 들어봐.
각 모델마다 Torch용이랑 Llama.cpp용, 이렇게 KLD 그래프가 두 개씩 있는 걸 볼 수 있을 거야. 이 두 그래프가 다른 이유는 각 소프트웨어가 연산을 처리하는 그래프 구조가 다르기 때문인데, 보통 Torch 쪽 그래프가 더 정밀하다고 평가받거든. 여기서 주목할 점은 Voodoo는 둘 다 성능이 잘 나오는데, 기존 최강이었던 Unsloth의 양자화 모델들은 Llama에서는 잘 나오다가도 Torch에서는 성능이 팍 꺾인다는 거야.
Llama.cpp에서 성능이 잘 나오는 게 나쁜 건 아니야. 어차피 우리는 GGUF를 Llama.cpp에서 쓰니까 당연히 거기서 최적화가 잘 되는 게 중요하지. 하지만 Voodoo는 두 그래프 모두에서 경쟁력 있는 성능을 보여주는 반면, Unsloth는 Torch에서 성능이 지나치게 떨어져. 이건 Unsloth의 방법론이 Llama.cpp에만 너무 과적합(overfit)되어 있어서, 별로 바람직하지 않을 수도 있다는 뜻이야.
물론 Unsloth 양자화 모델이 Llama.cpp에서 잘 돌아가는 건 사실이고, GGUF한테는 그게 제일 중요하니까 이게 얼마나 큰 문제인지는 논란의 여지가 있겠지. 하지만 어쨌든 모델 구석구석에 거친 부분(burrs)이 있다는 뜻이고, 그게 어느 정도인지는 알기 어려워. 심지어 Llama.cpp에서도 그런 문제가 나타날 수도 있고.
이런 점들을 종합해 보면, Voodoo는 더 범용적인 기술을 사용해서 최적화했기 때문에 확장성이 훨씬 좋아. 그리고 Voodoo는 더 공격적인 양자화 수준에서 진가를 발휘하는데, "2 bit" 정도가 확실히 SOTA(최신 기술)급 성능을 보여주는 스위트 스팟인 것 같아.
