Prompt Caching (提示词缓存) 是 2024 年下半年开始在各大模型厂商(如 Anthropic, Google, DeepSeek)中普及的一项**"降本增效"黑科技** 。
简单来说,它的核心逻辑是:"对于 AI 读过的长文章、看过的代码库,只要内容没变,第二次就不要再重新读一遍了,直接调用记忆。"
这对开发者和企业来说意味着两件事:省大钱 和 提大速。
1.💸 痛点:为什么以前 AI 很贵且慢?
在没有缓存之前,大语言模型是**"无状态 (Stateless)"** 的。
哪怕你只是问它:"刚才那本书主角叫什么?" 如果这本书有 10 万字,每次你发问,AI 都必须把这 10 万字重新"阅读"(计算)一遍,然后再回答你。
-
费钱:这 10 万字的 Input Token,每次都要收你的钱。
-
费时:每次都要等 AI 读完这 10 万字,可能有几秒钟的延迟 (Latency)。
2.⚡️ 解决方案:一次阅读,多次复用
Prompt Caching 的原理是:
当检测到你发送的 Prompt 的前一部分(比如前缀 Prefix)和之前发送过的一模一样时, API 服务端会直接把上次计算好的中间状态 ( KV Cache) 调出来用。
📖 形象比喻:开卷考试
没有缓存 :老师每问你一道题,你都必须重新把课本从第一页读到最后一页,然后再回答。
有缓存 :你把课本读了一遍,在脑子里记住了重点(建立了索引)。接下来老师问 100 道题,你都直接用脑子里的记忆回答,不需要再翻书了。
3.💰 具体能省多少?(打骨折)
这是 Prompt Caching 最吸引人的地方。由于复用了计算结果,厂商通常会给出极其夸张的折扣。
以 Anthropic (Claude 3.5 Sonnet) 为例:
-
普通输入价格:$3.00 / 百万 Token
-
写入缓存价格:$3.75 / 百万 Token (第一次读,稍微贵一点点)
-
读取缓存价格 :$0.30 / 百万 Token (之后每次用,打 1 折!)
这意味着:如果你在一个长文档上进行多轮对话,你的成本直接下降了 90%。
4.🛠️ 适用场景
什么情况下应该开启 Prompt Caching?只要是**"背景信息不变,只有最后的问题在变"** 的场景,都适用:
-
与书/文档对话 (Chat with PDF):
-
背景:一本 200 页的小说。
-
操作:把小说全文缓存。
-
效果:用户问 100 个关于剧情的问题,只有第一次需要付费读小说,后面 99 次都极其便宜且秒回。
-
-
代码助手 (Coding Assistant):
-
背景:整个项目的代码库(Repo)。
-
操作:把整个代码库缓存。
-
效果:你每改一行代码,AI 都能瞬间理解全局影响,不需要每次重新分析整个项目。
-
-
Few-Shot Prompting (少样本提示):
-
背景:你为了教 AI 写特定风格的文案,在 Prompt 开头塞了 50 个优秀的范文例子。
-
操作:把这 50 个范文缓存。
-
效果:以后每次生成文案,都不用再为这 50 个范文付钱了。
-
5.⚠️ 限制:前缀匹配 (Prefix Matching)
目前的缓存技术通常要求**"完全一致的前缀"** 。
-
有效缓存:
-
固定的 10 万字系统提示词\] + \[用户问题 A
-
固定的 10 万字系统提示词\] + \[用户问题 B
-
(系统发现前 10 万字一样,触发缓存)
-
-
失效缓存:
-
用户问题 A\] + \[固定的 10 万字系统提示词
-
(因为开头变了,后面的缓存通常就失效了。所以要把固定的东西放在最前面。)
-
总结
Prompt Caching (提示词缓存) 是 AI 工程化落地的一块重要拼图。
它解决了长上下文(Long Context)"用得起,但付不起" 的尴尬。让 AI 从"一次性阅读"变成了"永久记忆"。