开发者生态
morning
Show HN:KVBoost – HuggingFace 的块级 KV 缓存重用,TTFT 速度提高 5-48 倍
2026-05-22
1 阅读
pythongiant
pip install kvboost KVBoost 更快的 LLM 推理。显存较少。没有型号变化。块级 KV 缓存重用 · FlashAttention-2 · AWQ 层流 · CPU 分页解码 ⚡ 问题 LLM 推理默认被破坏。 ? VRAM 墙 像 Qwen2.5-32B 这样的现代法学硕士需要 60+ GB 的全精度 VRAM,这对于大多数团队来说是遥不可及的。 ? 缓慢预填充 重复的系统提示会根据每个请求从头开始重新计算 — 不断浪费 GPU 周期。 ? HF Bottlenecks HuggingFace 的默认推理循环没有 KV 缓存重用,没有分块注意力,也没有内存高效解码。解决方案 KVBoost:直接插入,无需重写。 Python from kvboost import KVBoost engine = KVBoost .from_pretrained( "Qwen/Qwen2.5-3B" ) # 预热共享前缀一次 engine . Warm("你是一个有用的助手...") # 所有后续调用都重用缓存 result = engine . generate (prompt) print (result.kv_reuse_ratio ) # ✓ 80%+ ⚡ KV 缓存重用 块级缓存重用消除了共享提示的冗余预填充。 ? FlashAttention-2 内存效率高的注意力,与普通 HuggingFace 相比,TTFT 加速为 3-5 倍。 ? AWQ 层流通过固定主机权重流在 8 GB VRAM 上运行 32B+ 模型。 ?️ CPU 分页解码将 KV 缓存溢出到 CPU RAM — 处理长上下文而不会出现 OOM 错误。性能 实数。真正的硬件。与 HF 基线相比,TTFT 加速比为 3–5 倍 80%+ KV 缓存命中率 多轮 8 GB VRAM,适用于 32B 型号 AWQ 流式处理 ~10K 行代码 43 个 Python 模块 首次令牌时间 (ms) — 越低越好 HF 基线 850ms 前缀重用 320ms 块重用 210ms 多轮缓存命中率 (%) 轮 1 0% 转向 2 45% 转向 3 68% 转向 4 78% 转向 5+ 85% 工作原理 四层优化。 01 哈希块 传入的提示被分成块。每个块都经过哈希处理以查找先前缓存的 K/V 对。 02 重用缓存匹配块完全跳过注意力。只有新颖的令牌才会通过变压器转发。 03 Flash Attention 新代币运行 FlashAttention-2 — 具有 O(√N) 内存的平铺 CUDA 内核。无需自定义模型代码。 04 页面卸载 长上下文 KV 块通过异步 DMA 逐出到 CPU RAM — 支持 GPU VRAM 之外的上下文。 AWQ 层流在游戏 GPU 上运行 32B 模型。终端 $ python -m kvboost.streaming.demo_partial_8b --model Qwen/Qwen2.5-32B-Instruct-AWQ 信息:替换投影:56 个驻留在 8 层,392 个跨 56 层流式加载时间:10.7 秒 Peak_vram_after_load:5.65 GB avg_tok_per_s:0.11 Peak_vram_during_decode:加载 32B 模型后的 6.13 GB 5.65 GB 峰值 VRAM — 适合单个 8 GB 游戏 GPU。解码期间 6.13 GB 峰值 VRAM — 安全地保持在 8 GB 限制以下。 0.11 tok/s PCIe 绑定吞吐量 — 旨在节省 VRAM,而不是原始速度。用例 谁需要 KVBoost? ? AI 编码助手系统提示在数百个请求中重复使用。缓存上下文一次,将每个响应速度提高 3-5 倍。 ? RAG Pipelines 文档块出现在许多查询中。块级重用使多文档 QA 的速度显着加快。 ⚙️ 边缘/预算基础设施 AWQ 流式处理让团队可以在消费级 GPU 上部署 30B+ 模型 - 无需 1 万美元的 A100。 ? 多轮聊天机器人对话历史记录每轮都会增长。 CPU 分页解码可处理长上下文,而不会导致 OOM 崩溃。麻省理工学院许可 · 直接使用 HuggingFace Transformers · 无需微调,无需更改架构 技术建立在坚实的基础之上。 ✓ FlashAttention-2 Tiled CUDA 内核,用于 O(√N) 内存关注 ✓ AWQ (AutoQuant) 仅权重 4 位量化,保持精度 ✓ HuggingFace Transformers 直接兼容性 — 无需更改模型 ✓ CUDA DMA 流 用于逐层权重流的异步 PCIe 传输 ✓ 块散列 用于缓存查找的确定性令牌级散列 ✓ CPU 分页内存页表 KV 卸载 —将冷块移出到 RAM ✓ PyPI 软件包 pip install kvboost — 2 分钟内准备就绪 ✓ MIT 许可证 完全开源,可用于任何生产 路线图 接下来是什么。现在 ✅ ✓ 块级 KV 重用 ✓ FlashAttention-2 集成 ✓ AWQ 层流 ✓ CPU 分页解码 下一步 ? ◦ 多 GPU 张量并行 ◦ 推测性解码 ◦ LoRA 适配器热插拔 ◦ 连续批处理 未来 ? ◦ GGUF / GGML 支持 ◦ Triton 自定义内核 ◦ 分布式 KV 缓存 ◦ 云托管缓存层 开始更快构建。 KVBoost 是开源且可投入生产的。立即将其放入任何 HuggingFace 项目中。 GitHub github.com/pythongiant/kvboost PyPI pypi.org/project/kvboost/ 文档 kvboost.readthedocs.io $ pip install kvboost MIT 许可证 · 由 @pythongiant 构建 ← 1 / 10