跳到正文
docai.cc

DOCAI · 概念 · L3

什么是上下文缓存

一句话定义

把重复出现的长前缀存下来,命中时跳过重复计算,省 token 也降首字延迟。

专业更新 2026-11-13核验 2026-11-13 · docai 编辑部

它解决什么

同一个系统提示、同一份长文档,被反复送进模型。每次都重新读一遍,既花钱又慢。

上下文缓存把这段前缀的计算结果存住,下次命中就直接复用。

怎么才能命中

缓存只认前缀,而且要求逐字节一致:

  • 固定内容放前面:系统提示、工具定义、长文档。
  • 每次变化的内容放后面:用户问题、本轮上下文。
  • 前面改一个字,后面的缓存全部失效。

这点和写代码时的缓存设计一样:把不变的放外层。

什么时候值得开

条件 说明
前缀长 短提示省不出多少
调用频繁 命中次数多才划算
前缀稳定 每次微调前缀等于每次都失效
有首字延迟压力 命中通常显著降低 TTFT

三个常见误解

  • 「开了就自动省」:不是。顺序不对、前缀总变,命中率就是 0。
  • 「缓存永久有效」:不是。都有存活时间,过期就要重新写入。
  • 「缓存能突破上下文窗口」:不能。缓存省的是重复计算,窗口上限不变。

一个排查方向

命中率低时,先打印每次请求的前缀长度和是否有变化。多数问题是某个时间戳或随机 ID 混进了前缀。

延伸阅读

来源

定义与事实以以下来源为准;表述与取舍是本站整理的。
  1. [1]OpenAI · Prompt caching
  2. [2]Anthropic · Prompt caching

相邻概念