键值缓存
Key-Value Cache
学到 认得 就够:听到能明白
你可能会说
“我用同一个本地模型读越来越长的文献对话,为什么内存占用还会增加?”
KV Cache 保存自回归注意力中此前位置的键和值,以免每生成一个词元都重算全部历史表示。它能加速生成,但会随序列长度与并行请求等条件增加内存需求。
使用 AI
科研里的例子
同一本机模型跑短摘要正常,换成长篇访谈后显存不足,原因可能是运行缓存增长,而非权重文件突然变大。
在通常的因果 Transformer 中,历史位置的键和值在后续生成时可复用,新词元只需追加自己的状态并与历史计算。缓存的规模受层数、键值头数、维度、精度与长度影响,和模型权重存储是不同部分。缓存机制不等于模型永久记住了用户资料;缓存是否跨请求保留或复用由具体系统决定。社科处理长材料时,资源估算应计入它,不能只看模型下载文件大小。
判断
亲手检查一次
用模型说明中的层数、键值头维度与长度粗估缓存量,再对比短长输入的峰值内存,区分权重与运行状态。
它做不到的
KV Cache 与应用级结果缓存、长期记忆不是同义词;不同注意力架构和缓存策略有不同资源行为。
增量,由你来写
读完这张,你的理解变了什么?
留言功能会在后面的版本开放。现在可以先在 X 上 @knowledgedelta 告诉我。
来源
- Hugging Face · How caching works2026-11-06 核对
- Kwon 等 · Efficient Memory Management for Large Language Model Serving with PagedAttention2026-11-06 核对
卡片底稿由 AI 协助整理,经过核对;发现错误请告诉我。