llama-quantize は、llama.cpp の量子化ツールで、高精度 GGUF モデルをより小さい量子化バージョンに変換するために使用されます。
最も一般的な用途は、F32、BF16、FP16 などの高精度モデルを、ローカル操作に適した Q4_K_M、Q5_K_M、Q8_0 などの形式に変換することです。量子化後、モデルのサイズは大幅に小さくなり、通常は推論が速くなりますが、精度はある程度低下します。
基本的な使い方
一般的なプロセスでは、通常、最初に元のモデルを準備し、次にそれを GGUF に変換し、最後に定量化を実行します。
|
|
量子化が完了したら、llama-cli を直接使用して新しい GGUF ファイルをロードできます。
|
|
共通パラメータ
--allow-requantize: すでに定量化されたモデルの再定量化が可能ですが、品質が大幅に低下する可能性があるため、通常は推奨されません。--leave-output-tensor: 量子化せずに出力レイヤーを保持します。ボリュームは大きくなりますが、場合によっては品質が向上する場合があります。--pure: 混合量子化をオフにして、より多くのテンソルが同じ量子化タイプを使用できるようにします。--imatrix: 重要度マトリックスを使用して量子化効果を最適化します。通常は優先順位を付ける価値があります。--keep-split: 単一ファイルにマージするのではなく、入力モデルのシャード構造を保持します。
単に始めたい場合は、最も現実的な出発点は次のとおりです。
|
|
定量化の選び方
まず、さまざまな定量化レベルを「体積、速度、質量の間の交換」として理解することができます。
Q8_0: サイズは大きくなりますが、一般に品質がより安定しています。Q6_K/Q5_K_M: 共通のバランス型オプションQ4_K_M: 非常に一般的なデフォルト ファイル。通常、音量とエフェクトは比較的バランスが取れています。Q3/Q2: リソースが非常に不足しているが、品質の低下がより明らかになるシナリオに適しています。
与えられたデータ例から判断すると、通常、量子化レベルが低いほど、モデルは小さくなります。実際の推論では、精度が高いほど必ずしも高速であるとは限りません。そのため、通常、選択の焦点は「大きいほど良い」ではなく、「ハードウェア上で十分に安定しており、十分に経済的で、効果が許容範囲である」ことに重点を置きます。
実践的なアドバイス
Q4_K_MまたはQ5_K_Mから優先順位を付ける- 品質がより重要な場合は、
Q6_KまたはQ8_0にアップグレードしてください。 - マシン リソースが不足している場合は、
Q3またはQ2を試してください。 - 異なる量子化バージョンを比較するには、常に同じバッチのテスト問題を使用することが最善です
一文の要約: llama-quantize の中心的な価値は、単にモデルを小さくすることではなく、GGUF モデルをローカル デバイス上で実行しやすくすることです。