AI Infra Academy
返回题库
困难kv-cacheKV Cache长上下文量化面试高频月之暗面

长上下文推理时 KV Cache 爆显存,有哪些压缩/优化手段?

12 0 0

参考答案

长上下文(32K、128K、1M)时 KV Cache 随长度线性增长,会吃光显存。主要优化路线: **1. 结构层面减少 KV head**: - GQA/MQA:减少 KV head 数,线性降低 KV Cache。 **2. 量化压缩(用更少 bit 存)**: - KIVI:K 用 2-bit、V 用 4-bit(K 分布更集中可压更狠)。 - KV4/全链路量化:几乎不掉点地把 KV 压到 4-bit。 **3. 稀疏 / 淘汰(少存一些 token)**: - StreamingLLM:只保留开头的 attention sink + 最近滑动窗口,中间丢弃。 - H2O(Heavy-Hitter Oracle):用累积注意力分数保留 top-k 重要 token。 - SnapKV:按 attention head 粒度选择要保留的 token(不同 head 关注不同)。 **4. 内存管理(不浪费)**: - PagedAttention:分页消除碎片。 - Prefix Caching:共享前缀,减少重复。 - Offloading:冷 KV 卸载到 CPU/NVMe。 **5. 架构层面**: - 线性注意力 / 状态空间模型(Mamba)用固定大小状态替代随长度增长的 KV。 - 混合架构(部分层用全注意力、部分用线性)。 面试时按"结构-量化-稀疏-内存-架构"分层回答会很清晰。

讨论区(0)

还没有评论,来做第一个发言的人吧