TurboQuant+: LLM 向け 6.4 倍 KV キャッシュ圧縮
TurboQuant+: 6.4 倍 KV キャッシュ圧縮で LLM 推論を革新
ローカル LLM 推論が劇的に効率化されました。TurboQuant+ は、ICLR 2026 の TurboQuant 論文を実装し、本番環境対応の llama.cpp 統合により、4.6-6.4 倍の KV キャッシュ圧縮 を実現し、q8_0 に近い品質と速度を維持します。
🚀 主なブレークスルー
1. マルチビットフォーマットファミリー
| フォーマット | ビット/値 | 圧縮率 | q8_0 比 PPL | ユースケース |
|---|---|---|---|---|
| turbo4 | 4.25 | 3.8 倍 | +0.23% | 最高品質/速度 |
| turbo3 | 3.5 | 4.6 倍 | +1.06% | 最大圧縮 |
| turbo2 | 2.5 | 6.4 倍 | +6.48% | 極端なメモリ負荷 |
turbo4 は q4_0 を品質(q8_0 に近い)と圧縮率の両方で上回ります。
2. Sparse V: 注意ゲート付きデコーディング
キラー機能:低注意 V 位置のデ量子化をスキップ。
- 32K コンテキストで +22.8% デコード速度
- PPL 劣化ゼロ(wikitext-103 で 50 チャンク検証、CI ±0.021)
- 全フォーマット対応(q8_0、q4_0、turbo3/4)
- NIAH 改善:turbo4 = 31/33 vs q8_0 の 30/33
「長コンテキストではほとんどの注意重みが無視可能。スキップせよ。」– 核心的洞察
3. 速度パリティ達成
M5 Max、Qwen 3.5 35B-A3B:
Prefill (32K コンテキスト):turbo3 = q8_0 の 1.10 倍 (1204 vs 1098 tok/s) Decode:turbo4 = Sparse V で q8_0 の 0.93 倍
実世界 24K PDF:turbo4 デコード = 63.7 tok/s (q8_0 の 0.93 倍)
🔥 始め方 (5 分)
Python プロトタイプ
git clone https://github.com/TheTom/turboquant_plus.git
cd turboquant_plus
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
python3 -m pytest tests/ -v # 141 テスト通過
python3 benchmarks/demo.py # クイックデモ
llama.cpp 本番環境
git clone https://github.com/TheTom/llama-cpp-turboquant.git
cd llama-cpp-turboquant
git checkout feature/turboquant-kv-cache
cmake -B build -DGGML_METAL=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
# turbo キャッシュで実行
./build/bin/llama-server -m your-model.gguf --cache-type-k turbo3 --cache-type-v turbo3 -c 262144
📊 戦闘テスト済み検証
✅ 511+ Python テスト、100% カバレッジ ✅ M5 Max 上の Qwen 3.5 35B-A3B (MoE) ✅ Sparse V で NIAH シングルニードル 9/9 (ベースライン 7/9 対) ✅ 32K 通過で 100% マルチキー検索 ✅ コミュニティテスト済み:M1-M5 Mac、RTX 3090/4090/5090、AMD 6800XT
🎯 これが重要な理由
メモリ:6.4 倍小さい KV キャッシュ = 大型モデルを長コンテキストで実行 速度:q8_0 prefill と同等、32K で 0.9 倍デコード 品質:turbo4 は q4_0 を上回り、q8_0 比 +0.23% PPL
🚀 未来: TurboQuant+
- レイヤーごとの適応ビット割り当て
- 時間減衰圧縮 (30-34% メモリ節約)
- MoE 対応圧縮
- CUDA バックエンド (NVIDIA 対応)
ステータス:v1 完了、本番準備完了。llama.cpp 上流への PR 後拡張予定。
⭐ リポジトリにスター を付け、次の長コンテキスト実行で turbo3 を試してください。RAM(と電気代)が感謝します。