gpt-5.6-sol / gpt-5.6-terra / gpt-5.6-luna)对缓存机制做了升级:缓存写入开始独立计费(1.25 倍输入价)、缓存读取为 0.1 倍输入价、缓存至少保留 30 分钟,并新增 prompt_cache_key 可靠匹配与显式缓存断点参数。
两代模型的缓存行为速览:
| GPT-5.6 之前 | GPT-5.6 及之后 | |
|---|---|---|
| 缓存方式 | 自动 | 自动 + 显式断点 |
| 最小缓存长度 | 1,024 Token | 1,024 Token |
| 缓存写入计费 | 不另计费 | 1.25x 基础输入价 |
| 缓存读取计费 | 按对应模型的缓存读取价 | 0.1x 基础输入价 |
| 缓存保留时间 | 不活跃 5–10 分钟后清除,最长 1 小时 | 至少保留 30 分钟 |
prompt_cache_key | 可选,用于提高命中率 | 官方要求设置,以启用更可靠的缓存匹配 |
| 24 小时扩展保留 | 部分模型支持(prompt_cache_retention) | 由 prompt_cache_options.ttl 取代,当前仅支持 "30m" |
快速开始
提示缓存无需额外配置:用相同的长前缀连续请求两次,第二次响应的usage.prompt_tokens_details.cached_tokens 大于 0 即为命中。GPT-5.6 系列建议同时设置 prompt_cache_key:
gpt-5.6-sol):
缓存计费
GPT-5.6 系列的缓存计费规则:| 计费项 | 费率 |
|---|---|
| 常规输入 Token | 按平台定价 |
| 缓存写入 Token | 1.25x 基础输入价 |
| 缓存读取 Token | 0.1x 基础输入价 |
| 输出 Token | 按平台定价 |
GPT-5.6 系列区分长短上下文档位:单次请求输入超过 272K Token 时,整个请求按长上下文档计费(输入 2 倍、输出 1.5 倍)。缓存写入 1.25x、读取 0.1x 的倍率在长上下文档下同样成立,基数为长上下文档的输入价。
缓存如何自动生效
发送请求时,系统会检查请求前缀(按 messages、tools 等序列化后的顺序)是否与近期请求的前缀逐字一致:- 前缀达到 1,024 Token 且找到一致的缓存前缀时,命中部分按缓存读取价计费,并降低首 Token 延迟;
- 未找到时按常规输入处理,并把前缀写入缓存(GPT-5.6 及之后按 1.25x 计写入费);
- 命中要求前缀逐字节一致,前缀中任何一处变化都会使该位置之后的缓存全部失效。
- 固定的长系统指令或大量 few-shot 示例
- RAG 场景中重复引用的长参考资料
- 携带大量工具定义(tools)的 Agent 工作流
- 只往后追加消息的长多轮对话
GPT-5.6 缓存参数
GPT-5.6 系列新增了三个缓存相关参数(Chat Completions 与 Responses API 通用):| 参数 | 类型 / 位置 | 取值 | 默认 |
|---|---|---|---|
prompt_cache_key | string,请求体顶层 | 自定义稳定标识,建议按业务或租户划分;单个 key 的总流量建议控制在约 15 次/分钟内 | 无 |
prompt_cache_options | object,请求体顶层 | mode: "implicit" / "explicit";ttl: 仅支持 "30m" | mode: "implicit"、ttl: "30m" |
prompt_cache_breakpoint | object,内容块内 | {"mode": "explicit"},标记缓存前缀的结束位置 | 不设置断点 |
prompt_cache_options 与 prompt_cache_breakpoint,请求会被拒绝;旧模型的 24 小时扩展保留参数 prompt_cache_retention("24h" / "in_memory")在 GPT-5.6 及之后由 prompt_cache_options.ttl 取代。
三种缓存控制方式的关系:
- 默认(implicit 模式):不传任何缓存参数也会自动写缓存——系统在最新一条消息的位置自动设置断点。GPT-5.6 及之后,自动发生的缓存写入同样按 1.25x 计费。
- implicit 模式 + 显式断点:在自动断点之外,可在内容块上设置
prompt_cache_breakpoint,把缓存边界固定在稳定内容的末尾;断点之后的内容变化不会破坏断点之前的前缀缓存。 - explicit 模式:
prompt_cache_options.mode设为"explicit"后只使用手动断点;完全不设置断点时该请求不使用缓存、也不产生缓存写入费。官方原文:“If the conversation contains no explicit breakpoints, the request does not use prompt caching or incur cache-write charges.”
- 每个请求最多创建 4 个新的缓存写入;implicit 模式下自动断点占用其中 1 个;
- 断点之前的前缀仍需达到 1,024 Token 才会被缓存;
- 读取时在最近 50 个断点中取最长匹配前缀;
- 断点设置在不支持的内容块上会返回
400 invalid_request_error。Chat Completions 支持text/image_url/input_audio/file/refusal块,Responses API 支持input_text/input_image/input_file块。
AIHubMix 对
prompt_cache_breakpoint 内容块断点及 Responses API 缓存命中的支持正在完善中。现阶段推荐通过 Chat Completions 使用自动缓存并设置 prompt_cache_key(本页快速开始示例,已验证可命中);prompt_cache_options 的 explicit 模式可正常用于关闭缓存写入。本页将随支持进度更新。为什么缓存没有命中
命中要求断点位置之前的所有内容逐字节一致。第二次请求cached_tokens 仍为 0 时,按以下清单排查:
- 前缀不足 1,024 Token:低于最小缓存长度的请求按常规输入处理;
- 前缀中混入了变化内容:时间戳、会话 ID、用户变量等应放到固定内容之后,前缀中任何一处变化都会使之后的缓存失效;
- tools 定义或顺序变化:工具列表参与前缀计算,定义与排列顺序都必须完全一致;
- 图片 detail 参数不一致:
detail影响图片 Token 化结果,需保持相同; - 结构化输出 schema 变化:
response_format的 JSON Schema 作为系统消息前缀参与缓存,schema 变化即前缀变化; reasoning_effort变化:官方将其列为缓存命中率降低的常见原因之一(“Changes to reasoning effort”);- 超过缓存保留期:GPT-5.6 之前不活跃 5–10 分钟后清除,GPT-5.6 及之后至少保留 30 分钟;
- 未设置
prompt_cache_key(GPT-5.6):不设置时仍可能自动命中,但不使用更可靠的匹配机制。
最佳实践
- 固定内容(系统指令、示例、参考资料、工具定义)放在请求最前面,每轮变化的内容放在最后;
- 为共享同一前缀的流量设置同一个稳定的
prompt_cache_key,单个 key 的总流量控制在约 15 次/分钟内,超出时按业务拆分更多 key; - 多轮对话只向后追加消息,避免修改历史消息;
- 保持相同前缀的请求有持续流量,减少缓存被清除;
- 前缀不会复用的一次性长请求,用 explicit 模式避免缓存写入费(GPT-5.6 及之后);
- 通过
usage.prompt_tokens_details.cached_tokens持续监控命中情况。
常见问题
GPT 的提示缓存需要手动开启吗?
无需手动开启:前缀达到 1,024 Token 即自动缓存。GPT-5.6 及之后建议同时设置prompt_cache_key 以获得更可靠的缓存匹配。
GPT-5.6 的缓存写入费如何计算?如何避免不必要的写入费?
缓存写入按基础输入价的 1.25 倍计费,读取按 0.1 倍计费;前缀被复用 1 次即净节省。前缀不会复用的一次性长请求,把prompt_cache_options.mode 设为 "explicit" 且不设置断点,该请求即不使用缓存、不产生写入费。
缓存能保留多久?
GPT-5.6 及之后至少保留 30 分钟(ttl 当前仅支持 "30m",实际可能保留更久);GPT-5.6 之前的模型在不活跃 5–10 分钟后清除、最长 1 小时,部分旧模型支持 prompt_cache_retention: "24h" 扩展保留。
GPT-5.6 的显式断点和 Claude 的 cache_control 有什么区别?
两者都用于把缓存边界固定在稳定内容末尾。主要区别:GPT-5.6 无需任何参数即自动缓存、断点为可选精细控制,Claude 需在请求中启用缓存(顶层cache_control 自动断点或内容块级显式断点);GPT-5.6 缓存至少保留 30 分钟,Claude 默认 5 分钟、可选 1 小时;两者的缓存读取都按 0.1 倍输入价计费。Claude 的用法见 Claude 提示词缓存。
缓存会影响输出内容吗?
没有影响。官方口径:提示缓存只影响输入侧的处理与计费,模型生成输出的方式与不使用缓存时完全相同。官方参考
本页机制、倍率与参数口径均来自以下 OpenAI 官方来源:- GPT-5.6 发布公告:缓存写入 1.25x / 读取 90% 折扣的计费规则
- 提示缓存指南:机制、参数、usage 字段与限制
- OpenAI Pricing:各模型官方标价
- GPT-5.6 模型文档:上下文窗口、长上下文计费阈值
更新时间:2026-07-10