统一的 KV Cache 压缩方法研究平台,用于长上下文大模型推理的对比评测。
NVIDIA/kvpress
NVIDIA 开源的 Python 库,基于 transformers 压缩 LLM 推理时的 KV 缓存,内置多种可插拔压缩方法。
- Star
- 1,245
- Fork
- 194
- 未关闭 Issue
- 12
- 最近提交
- 昨天
这是什么?
长上下文 LLM 部署成本较高,因为 KV 缓存会随 token 数量线性增长。kvpress 基于 Hugging Face transformers 实现了多种 KV 缓存压缩方法(称为 press),并提供基准测试。每个 press 在预填充阶段裁剪或变换缓存内容,通过 compression_ratio 设定保留的比例。
库中注册了名为 kv-press-text-generation 的自定义文本生成 pipeline,负责处理 chat 模板和分词。压缩可以只作用于上下文,便于对同一份压缩上下文提出不同问题。实验性的 DecodingPress 封装器可在生成过程中按目标缓存大小周期性压缩缓存。此外还支持通过 transformers 的 QuantizedCache 做缓存量化。
项目内置大量 press,既有随机与 key-norm 等基线方法,也有 SnapKV、StreamingLLM、KVzip、CriticalKV 等,并提供 AdaKVPress 等可逐头压缩的包装器。仓库还包含用于长上下文基准评测的命令行工具,以及测量显存和速度收益的 notebook。
核心功能
- 01多种 KV 缓存压缩方法(press),共用统一的 compression_ratio 接口
- 02自定义 transformers pipeline,只压缩上下文并自动处理 chat 模板
- 03实验性的生成阶段压缩,按目标缓存大小进行裁剪
- 04可组合或改进其他打分方法的包装器,例如逐头压缩的 AdaKV
- 05提供长上下文基准评测命令行工具,以及显存与速度测量 notebook
适用场景
- 对同一篇长文档反复提问,避免每次重新处理上下文
- 研究或原型验证新的 KV 缓存压缩算法,并与常见基线对比
- 降低 Llama、Qwen、Mistral 等模型在长上下文推理时的显存占用
快速上手
- 1
从 PyPI 安装
pip install kvpress - 2
加载管道并用压缩器压缩上下文
使用前须知
- 需要 Hugging Face transformers 以及能通过它加载的模型,大模型通常需要 GPU。
- 多数压缩方法属于研究性质,其中 BlockPress 并非真正的分块预填充实现。
标签
常见问题
- kvpress 是什么?
- NVIDIA 开源的 Python 库,基于 transformers 压缩 LLM 推理时的 KV 缓存,内置多种可插拔压缩方法。 长上下文 LLM 部署成本较高,因为 KV 缓存会随 token 数量线性增长。kvpress 基于 Hugging Face transformers 实现了多种 KV 缓存压缩方法(称为 press),并提供基准测试。每个 press 在预填充阶段裁剪或变换缓存内容,通过 compression_ratio 设定保留的比例。
- kvpress 可以免费使用吗?用的什么许可证?
- kvpress 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- kvpress 还在维护吗?
- 活跃维护中。kvpress 最近一次提交是在 2026年11月6日。
- kvpress 适合用来做什么?
- 对同一篇长文档反复提问,避免每次重新处理上下文 研究或原型验证新的 KV 缓存压缩算法,并与常见基线对比 降低 Llama、Qwen、Mistral 等模型在长上下文推理时的显存占用
- kvpress 怎么安装和运行?
- 从 PyPI 安装: pip install kvpress 加载管道并用压缩器压缩上下文
- 在哪里获取 kvpress?
- 源代码和安装说明在 GitHub 上:https://github.com/NVIDIA/kvpress
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个可通过 pip 安装的库,利用动态稀疏注意力加速长上下文大模型的预填充阶段,精度损失很小。
StreamingLLM 研究代码,通过保留注意力汇聚(attention sink)令牌和近期窗口,让预训练大模型无需微调即可处理无限长的文本流。
面向 LLM 推理服务的 KV-cache 内存管理器,基于 CUDA 虚拟内存 API 按需分配显存,无需 PagedAttention。
面向 LLM 推理的 KV 缓存管理层,可跨推理引擎存储、共享和复用缓存,降低首 token 延迟。
亚马逊推出的预训练时间序列预测模型,支持零样本预测,包括 Chronos-2 系列。