要点

対象:GGUFのどの形式を選ぶか迷う人

  1. 迷ったらQ4_K_M、余裕があればQ6_KかQ8_0
  2. Q4_K_Mは約8.1%で1位の候補が違う
  3. 日本語は人手評価で16.0%下がった例

この記事は、ローカルAIの講座「1からの道のり」の5回目です。量子化は、モデルの重み(学習で決まった数値)をビット数を減らして表し、ファイルを小さくすることです。

この記事の目次(5節)
  1. GGUFのファイル名の読み方
  2. 小さくすると何が落ちるか
  3. 4ビットがよく選ばれる理由
  4. つまずきやすいところ
  5. 次に読む回

GGUF(ローカルLLMのモデルを1つにまとめたファイルの形式)でどのファイルにするか迷ったら、まずQ4_K_Mを選び、メモリに余裕があればQ6_KかQ8_0にするのがよいと考えています。

小さくするほど、次のトークン(AIが文章を区切って扱う単位)の予測が、元のモデル(量子化する前の16ビット、F16)の予測からずれていきます。ずれの大きさは、llama.cpp(ローカルLLMを動かすソフト)が計測して公開しています。2

GGUFのファイル名の読み方

名前の読み方 Q 4 _K _M 01 02 03 04 量子化の形式 基本のビット数 形式の新旧 大きさの区分 IQ なら、imatrix で 値を決める形式 丸め方の情報の分、 平均はもっと多い K は新しい形式 (k-quants) _0・_1 は古い形式 S → M → L の順に、 多くのビットを使う 重みが増える 例: Llama 3.1 8B の平均ビット数(重み1つあたり) Q4_K_S(全部を Q4_K) 4.67ビット Q4_K_M(一部を 6ビット) 4.89ビット llama.cpp の表から
Q4_K_Mは、量子化の形式・基本のビット数・形式の新旧・大きさの区分の4つに分けて読みます

量子化では、重みの数値を粗く丸めて、少ないビット数で保存します。4

名前の部分意味例
先頭のQ基本の量子化の形式Q4_K_M・Q8_0
先頭のIQ効く重みを見本の文章で測ってから丸める形式(i-quants)IQ4_XS・IQ2_M
Qの後ろの数字基本のビット数。丸め方の情報も一緒に保存するので、重み1つあたりの実際の平均はこれより多いQ4・Q8
_0・_1古い形式(レガシー)Q8_0・Q4_0
_K新しい形式(k-quants)Q4_K・Q6_K
末尾の_S・_M・_L大きさの区分。S・M・Lの順に大きいQ3_K_S・Q3_K_M・Q3_K_L
F16・BF16量子化していない16ビットF16

Q4_K_SとQ4_K_Mのように数字が同じなら、末尾の文字が大きさの違いです。Sは全部の重みを4ビットの形式にし、Mは一部の重みを6ビットにします。3

形式ごとの大きさ(Llama 3.1 8B)

下の表は、llama.cppのREADMEにある、MetaのLlama 3.1 8Bの結果から抜き出しました。大きさはGiB(2の30乗バイト)で、1GiBは約1.07GBです。1

形式重み1つあたりの平均ビット数ファイルの大きさ
F1616.014.96GiB
Q8_08.507.95GiB
Q6_K6.566.14GiB
Q4_K_M4.894.58GiB
Q4_K_S4.674.36GiB
IQ4_XS4.464.17GiB
Q3_K_M4.003.74GiB
Q2_K3.162.95GiB
IQ1_S2.001.87GiB

Q3_K_Mの平均は、名前の3より1ビット多い4.00ビットです。名前の数字ではなく、ファイルの大きさで比べてください。1

重要度行列(imatrix)を使ったファイルの見分け方

重要度行列(imatrix)は、見本の文章をモデルに読ませ、どの重みが計算に強く効くかを測ったものです。量子化のときに使うと、強く効く重みほどずれが小さくなるように丸めます。5

IQで始まる形式は、これを使って作ります。使ったファイルには、メタデータ(ファイルの情報)に quantize.imatrix.file が入ります。412

Hugging Faceでは、モデルのページかファイルの一覧のページで、GGUFのファイルのメタデータの一覧を開いて見られます。4

小さくすると何が落ちるか

確率1位の候補が元のモデルと一致した割合

llama.cppは、Llama 3 8B(上の表のLlama 3.1 8Bの1つ前の版)で、元のモデルとの違いを測っています。文章はWikitext-2(英語の文章を集めたもの)で、GPUはRTX 4090を1枚使っています。2

確率1位の候補が元のモデル(F16)と違った割合(Llama 3 8B) Q8_0(7.96GiB) Q6_K(6.14GiB) Q4_K_M(4.58GiB) Q2_K(2.96GiB) 約2.3% 約4.0% 約8.1% 約28.9% llama.cpp の計測(Wikitext-2・RTX 4090)の「Same top p」を100%から引いた値です。
ファイルを小さくするほど、確率1位の候補が元のモデル(F16)と違う割合が増えます。Q2_Kでは4回に1回を超えます

次のトークンとして確率がいちばん高い候補が元のモデルと一致した割合は、Q8_0で約97.7%、Q6_Kで約96.0%でした。Q4_K_Mは約91.9%で、残りの約8.1%では違う候補でした。Q2_Kでは約71.1%まで下がりました。2

元のモデルとのずれを表すKLダイバージェンス(KLD。0なら同じ)でも、Q8_0とKの形式では、ファイルが小さいほどずれが大きくなりました。同じ4ビットでは、Q4_K_MのほうがQ4_K_Sよりずれが小さく、重要度行列を使うとさらに小さくなりました。2

まれに、確率が大きく下がるトークンがある

正解のトークン(文章で実際に次に来るトークン)の確率で比べると、Q4_K_Mでも、1,000トークンに1つほどは確率が56%分以上下がっていました。70%だった確率が14%以下になるような下がり方です。2

Llama 3 8Bは、Llama 2 7Bより影響が大きく出た

同じQ4_K_Mで比べると、KLDはLlama 2 7Bが0.0127、Llama 3 8Bが0.0313でした。2 Llama 3だけを調べた別の研究も、量子化で無視できない低下があり、ごく少ないビット数では特に大きいと報告しています。7

日本語の答えは、人手評価で大きく落ちた

多言語のモデルを4ビットにして、自動評価(機械の採点)と人手評価(人が読んで決める評価)で比べた研究があります。量子化の方法はGPTQで、GGUFとは違います。8

Command R+(103B)では、日本語の自動評価は1.7%下がりましたが、実際の使い方に近い質問の人手評価では16.0%下がりました。自動評価では、算数の文章題(MGSM)が特に大きく落ちました。8

Llama 3もCommand R+も、Qwen3-8Bで測った結果ではありません。Qwen3-8Bを選ぶなら、下の「日本語で試す」の比べ方で確かめられます。

4ビットがよく選ばれる理由

30Bのモデルを8ビットにしたものと、60Bのモデルを4ビットにしたものは、ファイルの大きさがほぼ同じです。2022年までのモデルで調べた研究では、このように大きさをそろえて比べると、ほとんどの場合4ビットがいちばん正確でした。6

配布元の既定の形式

Ollama(手元でLLMを動かすアプリ)で qwen3:8b をダウンロードすると、既定(デフォルト)ではQ4_K_Mの5.2GBのファイルが入ります。同じモデルのQ8_0は qwen3:8b-q8_0 で、8.9GBです。9

Qwenが公式に配っているQwen3-8BのGGUFは、Q4_K_Mがいちばん小さく、ほかにQ5_0・Q5_K_M・Q6_K・Q8_0があります。10

選び方の目安

手元の状況選ぶ形式の目安
まず試すQ4_K_M
同じ形式に、重要度行列を使った版がある使った版
Q8_0のファイルとKVキャッシュの分が、メモリに収まるQ6_KかQ8_0
Q4_K_Mだとメモリにわずかに収まらないIQ4_XS
3ビット以下でないと収まらない1つ小さいモデル(14Bなら8B)のQ4_K_Mと比べてから決める

KVキャッシュ(入力の計算結果を保存する領域)の分は、前の回の計算で見積もれます。

日本語で試す

Ollamaなら、qwen3:8b と qwen3:8b-q8_0 の両方をダウンロードし、ふだん日本語で頼む質問を同じ文で聞いて、答えを並べて読むのがよいと考えています。違いが気にならなければ、小さいQ4_K_Mで足ります。

つまずきやすいところ

画像や音声を読むmmproj

mmprojは、画像や音声を読む部品のファイルで、llama.cppでは本体のファイルとは別に指定します。mmprojはふつう本体よりずっと小さいので、mmprojを小さくしても、全体の速さやメモリの使用量はほとんど変わりません。1

一方で、mmprojを小さくすると答えの質に響くことがあるので、BF16かQ8_0の版がふつうです。1 配布ページでmmprojの形式を選べるなら、BF16かQ8_0の版を選べば足ります。

UD-で始まるファイル(Unsloth)

量子化したモデルを配っているUnslothの「UD-Q2_K_XL」のようなファイルは、層ごとに形式を変えた独自の組み合わせです。Unslothは、同じ大きさのほかの配布元より元のモデルに近いという自社の計測を公開しています。11

自社の計測なので、選ぶなら同じモデルのQ4_K_Mと同じ質問で比べるのがよいと考えています。この記事の表の数字は、そのまま当てはまりません。

次に読む回

前の回は「ローカルLLMのスペックは何GB必要か」で、Q4_K_Mの平均ビット数からメモリを見積もりました。用語は「ローカルLLMの用語の回」にまとめています。

次の回は、速さを決めるもの(メモリの帯域・演算の性能・プロンプトの処理と生成の違い)を扱います。機材ごとの速さの目安は、llmspeedでローカルLLMの速さを見る記事にあります。

気になるモデルの配布ページを開き、ファイル名の末尾の記号と大きさを、この記事の表と並べてみてください。

出典

  1. ggml-org「llama.cpp」tools/quantize の README(meta-llama/Llama-3.1-8B の形式ごとの表)(参照 2026-11-01)
  2. ggml-org「llama.cpp」tools/perplexity の README(LLaMA 3 8b Scoreboard・LLaMA 2 vs. LLaMA 3 の表)(参照 2026-11-01)
  3. ikawrakow「k-quants」(llama.cpp の pull request(参照 2026-11-01)
  4. Hugging Face「GGUF」(Hub のドキュメント。Quantization Types の表)(参照 2026-11-01)
  5. ikawrakow「Importance Matrix calculation」(llama.cpp の pull request(参照 2026-11-01)
  6. Dettmers・Zettlemoyer「The case for 4-bit precision: k-bit Inference Scaling Laws」(arXiv:2212.09720、2022年12月)(参照 2026-11-01)
  7. Huang ほか「An empirical study of LLaMA3 quantization: from LLMs to MLLMs」(arXiv:2404.14047、2024年4月)(参照 2026-11-01)
  8. Marchisio ほか「How Does Quantization Affect Multilingual LLMs?」(arXiv:2407.03211、2024年7月)(参照 2026-11-01)
  9. Ollama「qwen3」のタグの一覧(qwen3:8b・qwen3:8b-q8_0・qwen3:8b-fp16)(参照 2026-11-01)
  10. Qwen「Qwen3-8B-GGUF」のモデルカードとファイルの一覧(Hugging Face)(参照 2026-11-01)
  11. Unsloth「Unsloth Dynamic GGUFs」(Unsloth のドキュメント。Dynamic 2.0 の節)(参照 2026-11-01)
  12. ggml-org「llama.cpp」tools/quantize/quantize.cpp(重要度行列を使ったときに書き込むメタデータ quantize.imatrix.file)(参照 2026-11-01)