生态与新兴热词

提示缓存(Prompt Caching)

也叫: Prompt Caching · 上下文缓存 · 前缀缓存 · Context Caching

提示缓存是模型服务商提供的功能:保存重复提示前缀的处理结果,之后以相同内容开头的请求就能更快、以更低的输入成本得到处理。

Agent 每一轮都要重发大量相同的文字:系统提示词、工具定义、项目说明,还有越来越长的对话历史。每次从头处理这些内容是在浪费算力。提示缓存让服务商保存某个前缀已算出的中间状态,当后续请求以完全相同的 token 开头时直接复用。

主流模型服务商都有某种形式的支持,叫法有 prompt caching、context caching 等。命中缓存的输入通常有折扣、处理也更快,但具体折扣、缓存有效期和最小长度因服务商而异且会变化,请以当前官方文档为准,不要凭印象假设数字。

对长时间运行的 Agent,这是最有效的成本与延迟杠杆之一,也改变了你组织提示词的方式:稳定的内容放前面,易变的内容放后面。

怎么运作

缓存按前缀工作:请求从头开始逐 token 与之前处理过的内容比对,第一个差异点之前的部分都可以复用。有的服务商自动缓存,有的需要你标记缓存断点。缓存条目在一段时间不被使用后过期。提示词靠前位置的任何改动,比如在开头插入时间戳、调整工具顺序,都会让其后的全部内容失效。

举个例子

某编程 Agent 的提示词排布是:系统指令、工具定义、仓库说明、然后是至今的对话。每一轮新消息都追加在末尾,所以开头几千个 token 完全相同,从缓存读取。如果之后有人把当前时间加到系统提示词的最前面,每个请求就都会未命中缓存。

常见误解

常被以为: 提示缓存是把模型之前的回答存下来重复使用。
实际上: 缓存的是输入前缀的处理结果,不是输出。模型每次仍会重新生成回答。
常被以为: 提示词里任何位置的重复文本都会被缓存。
实际上: 一般只匹配共同的开头前缀。出现在不同内容之后的相同文本不会被复用。

常见问题

提示缓存是什么?
服务商的一种功能:跨请求复用未变化的提示前缀的处理状态,降低延迟和输入成本。
怎么提高 Agent 的缓存命中率?
保持提示词开头稳定:系统提示和工具定义放前面,新一轮内容追加在末尾,避免在靠前位置插入时间戳之类会变的值。
提示缓存会改变模型输出吗?
它本意只是一种优化;模型照常计算回答,只是复用了输入前缀的处理结果。

最近核实: 2026-09-20

相关术语