|
免責事項
手法Llama.cpp b8288(b5fe4559a)、 結果wikitextを実行する前に、すべてが正しく動くことを確認するために、小さめの会話(32kトークン)で大量のテストを行いました。コンテキストサイズもlong wikitextと同じにしています。この時点で、Bartowskiの量子化のほうが、Qwen3.5 9Bに対してはUnslothよりも良いKLDになる、というスレッドを見たので、両方を試しました。wikitextではBartowskiの量子化だけを使用しました。サンプル数が少ないことを考えると、これらの数値をあまり重く受け止めないほうがよいでしょう。 追加の結果PPLやトークン統計を含む、llama-perplexityによる完全な結果はすべてこのリポジトリにアップロードしました。必要なら確認してみてください(なぜ±やΔpが日本語の文字に変わったのかは聞かないでください。ターミナルが勝手にそうしてしまっただけです)。 個人的な所見
[リンク] [コメント] |
複数の8〜12Bモデルに対する8種類のllama.cpp KVキャッシュ量子化のKLD測定
Reddit r/LocalLLaMA / 2026/3/24
💬 オピニオンSignals & Early TrendsIdeas & Deep AnalysisTools & Practical UsageModels & Research
要点
- 本投稿では、8つの8B〜12Bモデル(例:Qwen3.5 9B、Qwen3-VL 8B、Gemma 3 12B、Ministral 3 8B、Irix 12Bなど)におけるllama.cppのKVキャッシュ量子化設定を比較し、自己実行したKLD(相対エントロピー)測定の結果を報告する。
- 著者はf16のKVキャッシュを用いて基準となるlogitsを生成し、llama.cppで検証したKVキャッシュの量子化がKLDによって出力分布に与える影響を評価する。
- GPUのVRAMに制限があるため、著者は既に量子化されたモデル(IQ4_XS)を用いてlogitsを生成する。そのうえで、モデル重みを固定した場合でも、KLDがKV量子化によって生じる分岐(ダイバージェンス)を意味のある形で反映しうると主張している。
- 方法論は、文脈ウィンドウの一部に対して、llama-perplexity風のKLD計算を用いる(主にwikitext-2で検証し、さらに200kトークンのRPをつなぎ合わせたテストでも確認する。結果は概ねwikitext-2と一致している)。
- 量子化バリアントの一部(例:iq4_nl)はCUDA上で実行できなかったため、比較から除外している。