Claude Prompt Caching 怎么验收:静态前缀、动态尾部与缓存命中率
长文档问答接口明明打开了缓存,账单里的输入 token 却没有下降,延迟也忽高忽低。先别急着换模型,Claude Prompt Caching 的命中对象是“从开头到缓存断点的完整前缀”,只要静态内容前面混入了时间戳或随机请求号,后面的缓存就会一起失效。
- 静态 system、工具定义和背景资料应放在动态问题之前。
cache_control可以放在顶层做自动缓存,也可以放到具体 content block 做显式断点。- 默认 TTL 是 5 分钟,1 小时 TTL 有额外成本;命中会刷新缓存。
- 验收要看
cache_creation_input_tokens与cache_read_input_tokens,不能只看总耗时。
缓存到底命中了哪一段前缀
Anthropic 文档把可缓存内容按 tools → system → messages 排列。缓存断点之前的内容会整体参与前缀匹配,后续请求只有前缀一致,才可能复用已有结果。最小可用请求可以这样写:
{
"model": "claude-opus-5",
"max_tokens": 1024,
"cache_control": {"type": "ephemeral"},
"system": "固定的产品知识和回答约束",
"messages": [{"role": "user", "content": "本轮用户问题"}]
}
自动缓存会把断点向对话末尾推进,适合多轮上下文;如果要固定缓存产品手册或工具定义,则把 cache_control 写到具体内容块上。

静态前缀和动态尾部要拆开
| 位置 | 适合放什么 | 不要放什么 |
|---|---|---|
| 工具定义 | 稳定的 schema、字段说明 | 本次请求的时间和随机 ID |
| system | 角色、产品规则、长背景 | 每轮变化的用户偏好快照 |
| messages 尾部 | 本轮问题、短上下文 | 希望长期复用的大段资料 |
常见错误是把“今天的日期:2026-08-16”拼在 system 最前面。日期一变,整个前缀 hash 就变了。更稳的做法是把动态日期放到最后一个用户块,静态资料的断点保持不动。
TTL 与命中率怎么做一次可复现实验
用同一份长背景连续发送三次请求:第一次观察缓存写入,第二次在几秒内重复观察缓存读取,第三次等过期窗口后再测。默认缓存生命周期为 5 分钟,也可以指定 ttl: 1h;缓存每次被使用会刷新生命周期。
{"cache_control":{"type":"ephemeral","ttl":"1h"}}
记录响应里的 usage,不要只拿客户端耗时做结论:
{
"input_tokens": 1200,
"cache_creation_input_tokens": 18000,
"cache_read_input_tokens": 0
}
第一次通常更像写入;后续命中时 cache_read_input_tokens 应明显增加。若命中突然归零,优先对比断点之前的文本、工具定义、消息顺序和 TTL,而不是立即归因于模型波动。

显式断点的两个坑
一个请求最多只能使用有限的显式断点槽位,重复堆叠断点会得到 400。另一个坑是动态块本身被标成断点:每次内容变化都会产生新前缀,缓存写了很多次,却几乎没有读命中。
- 固定资料放在断点前,动态问题放在断点后。
- 工具、system、messages 的顺序保持稳定。
- 记录 TTL、模型、输入 token 和缓存读写 token。
- 跨环境比较时确认平台和模型一致,避免把配置差异误判成缓存失效。
上线前验收清单
- 同一静态前缀连续请求能观察到 cache read。
- 修改静态前缀中的一个字符后,能观察到重新写入。
- 动态用户问题变化不会破坏静态前缀的命中。
- 分别验证默认 5 分钟和 1 小时 TTL 的成本与过期行为。
- 把 usage、请求版本和断点位置写入监控,保留一次冷启动与一次命中样本。
相关问题
Prompt Caching 会缓存整个请求吗?
不会。它缓存的是到断点为止的 prompt 前缀,断点之后的动态内容仍需重新处理。
为什么打开缓存后成本反而变高?
首次写入有单独的 cache write 计费;如果请求很少、前缀经常变化,写入成本可能没有被后续命中摊薄。
自动缓存和显式断点怎么选?
多轮对话优先考虑自动缓存;需要固定手册、工具定义或不同更新频率的资料时,用显式断点更容易控制。
Prompt Caching 的核心验收不是“请求变快了”,而是能解释每次变快或变慢的原因:前缀是否稳定、断点是否合适、TTL 是否覆盖业务间隔,以及 usage 是否真的出现缓存读取。
MCP notifications/progress 怎么接:progressToken、递增进度与超时收口
- 上一篇
- MCP notifications/progress 怎么接:progressToken、递增进度与超时收口
- 下一篇
- PHP 8.5 Closure::getCurrent() 递归闭包怎么测:缓存、深度与异常边界
-
- 科技周边 · 人工智能 | 2天前 |
- Tokenizer padding_side 影响批量生成的对齐
- 206浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 | python · 人工智能 · 数据迭代 Hugging Face Datasets streaming IterableDataset 大语料
- Datasets streaming 读取大语料的迭代方式
- 337浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 | python · Transformers generate 停止条件 批量输出
- Transformers generate 的停止条件与批量输出
- 133浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 | 人工智能 · LoRa 显存优化 bitsandbytes QLoRA 4-bit量化
- bitsandbytes 量化模型配合 LoRA 训练的显存边界
- 249浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 | 人工智能 · LoRa PEFT load_adapter set_adapter 适配器切换
- PEFT LoRA 适配器按任务切换的加载方案
- 268浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 | 人工智能 · LoRa PEFT merge_and_unload 适配器合并
- PEFT 适配器合并后为什么输出会变化
- 221浏览 收藏
-
- 科技周边 · 人工智能 | 2天前 |
- Tokenizer 左填充和右填充应该怎么选
- 399浏览 收藏
-
- 科技周边 · 人工智能 | 3天前 |
- Safetensors 为什么支持按需读取权重切片
- 258浏览 收藏
-
- 科技周边 · 人工智能 | 3天前 |
- MLflow Model Alias 怎么替代固定版本号部署
- 360浏览 收藏
-
- 科技周边 · 人工智能 | 3天前 | 索引优化 · 向量数据库 · 向量检索 FAISS Index Factory IVF PQ
- FAISS Index Factory 字符串怎么组合索引结构
- 100浏览 收藏
-
- 科技周边 · 人工智能 | 3天前 |
- 知识库切片重叠率怎么影响检索结果
- 268浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 280次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 334次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 331次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 300次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 120次使用
-
- Claude API 提示词缓存为什么总 miss:静态前缀、工具定义与 usage 核对
- 2026-07-18 280浏览
-
- OpenAI Responses API 上下文太长怎么压缩:/responses/compact 与状态续接边界
- 2026-08-16 428浏览
-
- Claude Messages API citations 怎么核对:document blocks、source 与引用位置
- 2026-08-21 295浏览
