TurboQuant+:LLM 的 6.4 倍 KV 缓存压缩

TurboQuant+:通过 6.4 倍 KV 缓存压缩革新 LLM 推理

本地 LLM 推理效率大幅提升。TurboQuant+ 实现了 ICLR 2026 TurboQuant 论文的生产就绪 llama.cpp 集成,在保持接近 q8_0 质量和速度的同时,实现 4.6-6.4 倍 KV 缓存压缩

🚀 关键突破

1. 多位格式家族

格式 位/值 压缩比 PPL vs q8_0 使用场景
turbo4 4.25 3.8 倍 +0.23% 最佳质量/速度
turbo3 3.5 4.6 倍 +1.06% 最大压缩
turbo2 2.5 6.4 倍 +6.48% 极端内存压力

turbo4 在质量(更接近 q8_0)和压缩比上均超越 q4_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

预填充(32K 上下文):turbo3 = 1.10 倍 q8_0(1204 vs 1098 tok/s) 解码:turbo4 + Sparse V = 0.93 倍 q8_0

真实世界 24K PDF:turbo4 解码 = 63.7 tok/s(0.93 倍 q8_0)

🔥 快速上手(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% 覆盖率Qwen 3.5 35B-A3B (MoE) 在 M5 Max 上9/9 NIAH 单针 使用 Sparse V(vs 基线 7/9) ✅ 32K 下 100% 多键检索社区测试:M1-M5 Mac、RTX 3090/4090/5090、AMD 6800XT

🎯 为什么重要

内存:6.4 倍更小的 KV 缓存 = 运行更大模型更长上下文 速度:匹配 q8_0 预填充,32K 下 0.9 倍解码 质量:turbo4 超越 q4_0,仅 +0.23% PPL vs q8_0

🚀 未来:TurboQuant+

  • 每层自适应位分配
  • 时序衰减压缩(30-34% 内存节省)
  • MoE 感知压缩
  • CUDA 后端(NVIDIA 支持)

状态:v1 完成并生产就绪。扩展功能将在上游 llama.cpp PR 后推出。


给仓库点星,在下次长上下文运行中试试 turbo3。你的 RAM(和电费账单)会感谢你。

GitHub: turboquant_plus

原创文章: 查看原文

分享本文