【Q4_K_M】量子化の読み方【Q5_K_L】

LLM(大規模言語モデル)でよく見るQ4_K_MやQ5_K_Lなどの量子化表記は 重みを何ビットで、どんな単位・方式で量子化しているか を表している。
Q4 _K _M
│ │ └─ 混ぜ方のバリアント(S / M / L)
│ └──── K-quant(ブロック単位の改良量子化)
└──────── 1重みあたりのビット数
結論から書くと、迷ったらQ4_K_Mを選べば間違いない。
- Q4_K_M → 「4bitだが軽くて賢い」
- Q5_K_M → 「実用上ほぼ無劣化」
Q4, Q5, Q6の意味
それぞれの数字はビット数を表している。
| 表記 | 意味 | 特徴 |
|---|---|---|
| Q4 | 4bit量子化、24 = 16段階 | 軽い・速い・VRAM節約 |
| Q5 | 5bit量子化、25 = 32段階 | Q4より精度が上がりサイズも増す |
| Q6 | 6bit量子化、26 = 64段階 | ほぼFP16に近い |
| Q8 | 8bit量子化、28 = 256段階 | 高精度・サイズ大 |
1bitごとに品質は緩やかに上がるが、サイズは確実に増える。
ちなみにLLMの学習で基準品質となっているFP16 は「16-bit Floating Point(16ビット浮動小数点)」の略。
Q8とFP16の品質差はほぼ測れないので、8bitが実用上の上限になっている。
_Kの意味
K = K-quantization(改良型ブロック量子化)
従来(Q4_0、Q4_1など):
- 32個の重みをひとつのブロックにして、ブロックごとにFP16のスケールをひとつ持つ
- ブロックの中はどの重みも同じ精度で、精度劣化がでやすい
K-quant:
- 256個の重みのスーパーブロックの中に、16〜32個のサブブロックを置く二重構造
- サブブロックごとのスケールと最小値を6bitに詰めて持つので、精度を上げつつメタデータを節約できる
現在では_Kが標準で、Q4_0〜Q5_1は旧式。ただしQ8_0だけは別で、8bitの標準形式として今も使われている(Q8_Kというファイル形式は無い)。
最近はさらに、同じビット数でも品質を上げたI-quant(IQ4_XSなど)や、どの重みが効くかを事前に測って量子化するimatrix(重要度行列)付きの配布も増えている。同じQ4_K_Mでもimatrix版のほうが品質は良い。
_Mの意味
_S, _M, _LはSmall, Medium, Largeの略。ビット数ではなく、テンソルごとの混ぜ方を表している。
| バリアント | 中身 | 傾向 |
|---|---|---|
| _S | 全テンソルを同じ型で量子化 | 速度・軽さ優先 |
| _M | attentionのVやFFNのdown投影など効きの大きい一部のテンソルだけ上位ビット(Q4_K_MならQ6_K)にする | 品質と速度のバランス |
| _L | _Mよりさらに多くのテンソルを上位ビットにする | 品質寄り |
ただしllama.cppの公式表記で_Lが付くのはQ3_K_Lだけである。Hugging Faceで見かけるQ4_K_L / Q5_K_L / Q6_K_Lは、bartowski氏が配布している独自の命名で、埋め込み層と出力層だけQ8_0に上げた変種。方向としては「品質寄り」で合っているが、公式のS / M / Lとは別系統の記法である。
量子化とサイズ
FP16は8bitの2倍のデータ量。といっても量子化でスケールなどのメタデータも追加されるのできっちり理論通りにはならない。Q4_K_Mは額面4bitだが実効は約4.85bit/重みになる。
| 形式 | 実効ビット | サイズ(FP16比) |
|---|---|---|
| FP16 | 16 | 1.00 |
| Q8_0 | 8.5 | 約 0.53 |
| Q6_K | 6.6 | 約 0.41 |
| Q5_K_M | 5.7 | 約 0.36 |
| Q4_K_M | 4.85 | 約 0.30 |
具体例(7Bモデル)
| 形式 | サイズ |
|---|---|
| FP16 | 約 14GB |
| Q8_0 | 約 7GB |
| Q6_K | 約 5.5GB |
| Q5_K_M | 約 5GB |
| Q4_K_M | 約 4GB |
※Q4_K_Mなら、B数の6〜7割がGB、と覚えると楽です。Gemma 3 12Bが8.15GB、Qwen3-VL 30Bが19.64GB、Qwen3-Next 80Bが48.4GB。小さいモデルほど埋め込み層の比率が大きいので、上振れする。
VRAM別のおすすめライン
| VRAM | 量子化モデル |
|---|---|
| 12GB | 7B Q8 |
| 16GB | 13B Q5 / Q6 |
| 24GB | 13B Q8 / 30B Q4 |
| 48GB | 70B Q4 |