跳到正文

AI Know · 技术研究笔记

长上下文成本不在输入长度,在 KV 缓存复用率。

分页管理把显存碎片变成可调度页;召回质量决定无效上下文占比;预填充与解码阶段成本差异巨大。

听书 00:00 / --:--
00

三分钟读懂

先看结论,再决定是否深读

  1. 长上下文成本不在输入长度,在 KV 缓存复用率。
  2. 分页管理把显存碎片变成可调度页。
  3. 召回质量决定无效上下文占比。
  4. 预填充与解码阶段成本差异巨大。
  5. 长尾输入会放大延迟与越权风险。
01 / DEEP DIVE

核心原理

2026 年,长上下文模型已从 128K 词元走向百万级甚至千万级窗口。但窗口拉长并不等于成本线性下降。真正决定推理账单的,是键值缓存如何分配、分页、复用,以及检索召回如何筛选进入上下文的内容。键值缓存随序列长度线性增长,每层每头每个词元都要保存两个向量。上下文越长,解码阶段读取缓存的显存带宽压力越大,首词元延迟与每词元延迟同时恶化。分页注意力把缓存切成固定大小的块,逻辑连续、物理离散,像操作系统虚拟内存一样按需分配,减少碎片并支持前缀共享。召回策略则决定哪些内容值得占用缓存。检索增强生成、分层记忆、语义缓存共同构成成本闸门。成本可拆为三块:预填充计算、解码显存带宽、召回索引查询。三者互相牵制,优化任何一块都可能把压力转移到另一块。

02 / DETAILS

技术细节

输入侧:长文档、多轮对话、代码库进入模型前,先被切分、向量化、重排。词元化后的输入越长,预填充计算量越大。预填充是并行矩阵运算,计算密集,但若存在重复前缀,前缀缓存可复用键值,跳过重复计算。输入侧还要做召回:混合检索、交叉编码器重排、按边际信息增益截断。召回差,则大量低价值词元进入上下文,直接推高缓存占用。分块、摘要、压缩是输入侧的三道减法。

推理/执行侧:自回归解码每一步都要读取全部历史键值缓存。显存带宽成为瓶颈,而不是算力。分页注意力将缓存分成块,调度器可把不同请求的块拼成批次,连续批处理提高吞吐。多轮对话中,系统提示与工具定义可共享前缀键值。低比特量化把缓存压到八位整数或八位浮点,但会带来精度损失。滑动窗口注意力、注意力汇点、稀疏注意力可减缓缓存增长,但长上下文仍需要分层缓存:热数据在显存,温数据在主机内存,冷数据在外部存储。分页换入换出策略直接决定尾延迟。

输出/评测侧:输出阶段成本包括解码步数、采样、工具调用次数。评测不能只看“大海捞针”命中率,那只是检索能力。真实任务要看有效上下文利用率、多跳推理准确率、引用准确率、幻觉率。成本指标应包含缓存命中率、分页换入换出次数、召回索引查询耗时、首词元延迟、每词元延迟、每千词元成本。长上下文评测要区分“能读”和“会用”。能读只是召回,会用才涉及冲突消解与推理。

03 / IMPLEMENTATION

工程实践

第一,建立前缀缓存与语义缓存分层。系统提示、工具定义、固定文档走前缀缓存;高频问答走语义缓存。减少重复预填充,是长上下文降本最快的一步。

第二,用分页键值缓存加连续批处理。选择支持分页注意力的推理框架,设置块大小、显存水位、换出策略。监控碎片率与缓存命中率,避免换出到主机内存造成尾延迟飙升。

第三,召回侧先重排再截断。混合检索加交叉编码器重排,按边际信息增益截断。给每个片段打成本分,避免把低价值长文塞入上下文。上下文不是越长越好,而是越准越省。

05 / FAILURE MODES

风险边界

成本风险:长上下文不等于免费。键值缓存显存随并发线性增长,分页换出到主机内存会增加延迟。召回索引本身有查询与存储成本。幻觉风险:召回错误或上下文冲突会导致模型编造。长上下文中间信息易被忽略,形成“迷失在中间”。需要引用锚点与验证链。越权调用风险:长上下文可能包含敏感数据,分页缓存若跨请求共享且隔离不当,会泄露隐私。工具调用需权限校验,召回索引可能被投毒。长尾输入与延迟风险:超长输入导致预填充卡顿,首词元延迟飙升。长尾分布使批处理效率下降,分页换入换出造成尾延迟。需要限流、降级、分段处理,并给长尾请求单独队列。长上下文推理的工程本质,是在缓存、分页、召回三者之间做动态预算。

完整信源

事实从哪里来