
Prompt Cache
Prompt Cache 通过缓存 System Prompt 等重复内容的计算结果,大幅降低 Agent 场景下的推理延迟和 API 成本,是 Agent 的必需基础设施。

① 一句话定义
Prompt Cache(提示词缓存)是一种 LLM 推理优化技术:对于多次请求中重复出现的 Prompt 前缀部分(如 System Prompt、Few-shot 示例),推理引擎将其计算中间结果(KV Cache)缓存起来,后续请求直接复用,避免重复计算,从而降低延迟和成本。
② 为什么重要
Prompt Cache 是 AI 应用从"能用"到"规模化经济"的关键技术:
- 成本大幅下降:复用缓存的计算结果,意味着输入 Token 不再每次都全额计费。长 System Prompt(几千 Token)的缓存可以节省 50-90% 的输入成本。
- 延迟锐减:跳过缓存部分的注意力计算,TTFT(首 Token 时间)可以降低 50-80%。用户感知的"模型反应速度"明显提升。
- Agent 场景刚需:Agent 每次循环都要重新发送完整的 System Prompt + 工具定义列表,这些内容完全不变,缓存是最直接的优化。
③ 核心机制
Prompt Cache 利用了 Transformer 推理的因果注意力(Causal Attention)特性——每个 Token 只依赖它之前的 Token,后面的 Token 不会影响前面:
1. KV Cache 的本质:推理时,每计算一个 Token 的注意力,它的 Key 和 Value 向量会被存下来。生成下一个 Token 时,"历史 Token"的 KV 向量可以直接读取,不需要重新计算。这是所有 LLM 推理的基础优化。
2. Prompt Cache 的扩展:传统 KV Cache 只在一次推理中有效。Prompt Cache 将 KV Cache 的复用范围扩展到跨请求——只要 Prompt 前缀相同(或部分相同),就可以复用之前缓存好的 KV 向量。
3. 缓存命中策略:引擎通过匹配 Prompt 的"最长公共前缀"来决定哪些部分可以复用。比如 System Prompt 不变但用户问题变了——System Prompt 部分命中缓存,用户问题部分重新计算。
4. 主流实现:Anthropic 的 Prompt Caching(2024.08 发布)、Google Gemini 的 Context Caching、各种开源推理框架(vLLM、SGLang)的 Automatic Prefix Caching。
④ 典型应用场景
Agent 循环优化:Agent 每次工具调用后的新一轮推理,System Prompt + 工具定义(常占总输入 50-70%)被缓存,大幅降低 Agent 使用成本。
多轮对话服务:固定 System Prompt 的客服机器人,每次用户提问只需处理新增的用户消息。
批量文档分析:对多篇文档做相同的分析任务,分析指令和格式要求只需计算一次。
Few-shot 任务:大量 Few-shot 示例(可能数千 Token)缓存后,每次推理只需支付实际查询的 Token 费用。
⑤ 常见误区
误区:Prompt Cache 是自动的,不用管
✅ 实际上:缓存的效率取决于 Prompt 结构设计。把变动的部分放在 Prompt 末尾(如用户问题),把不变的部分放在开头(如 System Prompt),才能最大化缓存命中率。
误区:缓存命中就完全免费
✅ 实际上:不同厂商的缓存定价不同。Anthropic 的缓存写入比正常输入贵(写缓存有额外开销),但缓存读取比正常输入便宜得多(通常 90% 折扣)。
「Prompt Cache 是对"反复说同一句话"的优化——System Prompt 说一遍就够了,别让用户每次提问都为它付费。
」