KV-Cache
Transformer 推理时缓存历史 token 的 Key/Value 向量,避免每生成一个新 token 都重新计算所有历史 token,是 LLM 自回归推理的显存大头。
显存占用
KV-Cache 显存量 = 层数 × 2(K+V)× 头数 × 头维度 × 序列长度 × 精度。对 70B 模型 4K 上下文:
- FP16 精度:约 3 GB/请求
- 100 并发:300 GB 显存 → 大幅限制服务能力
主要优化技术
- PagedAttention:分页管理,减少碎片,提升并发数
- GQA / MQA(Grouped/Multi-Query Attention):模型层减少 KV 头数
- 量化 KV-Cache:INT8 / INT4 量化压缩 KV
- KV-Cache 卸载到 CPU/NVMe:Offloading
- Prefix Caching:相同前缀的请求共享 KV-Cache
- MLA(DeepSeek V2/V3 多头潜变量注意力):极致压缩 KV-Cache
主要玩家
- 学术界:UC Berkeley(PagedAttention)、Tri Dao(FlashAttention)
- 工业界:NVIDIA / vLLM / DeepSeek / 硅基流动
在 AI 产业链中的角色
- LLM 推理的核心瓶颈:显存 + 带宽双重压力源
- 2024-25 推理引擎所有创新基本围绕 KV-Cache:PagedAttention、Prefix Caching、Disaggregated Serving、MLA 等
- 决定推理服务单卡并发数:直接决定 MaaS 单位经济性
相关概念
- PagedAttention
- Continuous Batching
- FlashAttention
- 投机解码
所属子板块模型部署与优化