刷新

GPT-4o Mini 缓存分块(Tiling)计费陷阱:为什么你的账单比预期贵

内容刷新 / GEO:补 English summary 与最新核对清单 — oa-gpt-4o-mini-cache-tiling-cost-analysis

返回指南列表

封面:GPT-4o Mini 缓存分块(Tiling)计费陷阱:为什么你的账单比预期贵

GPT-4o Mini 缓存分块(Tiling)计费陷阱:为什么你的账单比预期贵

GPT-4o Mini 的 Prompt Caching 在提示词达到 1024 tokens 后自动生效,缓存按最长前缀匹配、以 128-token 增量分块(tiling),命中部分按半价计费。适用人群是直接调用 OpenAI 官方 API、需要核对账单与有效 $/M 的开发者或财务人员。决策方式很简单:先看 usage 里的 cached_tokens,再对照官方挂牌价算出真实单价,而不是凭“大概能省一半”估算。

OpenAICN 作为 OpenAI / 官方 API 计费对照站,这篇只服务一件事:帮你把账单对清楚,分清缓存命中与未命中,避免把 Plus 订阅和 API Token 费用混在一起。

现状与数据更新

截至 2026 年 9 月,官方公开的 GPT-4o Mini(gpt-4o-mini)文本 Token 挂牌价仍为:

类型 单价($/M tokens) 说明
输入(未缓存) 0.15 标准 input
输入(缓存命中) 0.075 50% 折扣
输出 0.60 无缓存折扣

数据来源以 OpenAI 官方定价页当日为准。Prompt Caching 对 GPT-4o Mini 自动开启,无需额外参数。触发条件是提示词 ≥1024 tokens;系统会缓存最长公共前缀,并以 128-token 为步长向上取整分块。

典型陷阱出现在这几处:

  • 前缀不精确匹配。任何早期变动(系统提示微调、工具定义顺序变化、图片 token 插入)都会打断缓存链,导致大量 token 按全价计费。
  • 分块粒度。假设总输入 1500 tokens,最长可缓存前缀可能是 1024 + 3×128 = 1408,而不是全部;剩余按全价。
  • 缓存存活时间。闲置约 5–10 分钟后可能失效,最长通常不超过 1 小时(部分新模型支持更长保留,但以当日文档为准)。间歇性流量容易“看起来该命中却没命中”。
  • 账单呈现。usage 字段里有 cached_tokens,但很多中间层或日志只报总 prompt_tokens,导致对账时误以为全是半价。

结果是:你按“输入全半价”做预算,实际有效输入单价往往落在 0.09–0.14 $/M 之间,账单自然比预期高。

要快速自查,请直接对照 官方 API 价格 与 官方 API 说明。

核对清单

做完一轮调用后,按下面顺序核对,通常 5 分钟内就能定位差额:

1. 取出当次响应的 usage:prompt_tokens、completion_tokens、cached_tokens(或 input_tokens_details.cached_tokens)。

2. 计算未缓存输入 = prompt_tokens − cached_tokens。

3. 用挂牌价核算:

- 未缓存输入成本 = 未缓存数量 × 0.15 / 1_000_000

- 缓存输入成本 = cached_tokens × 0.075 / 1_000_000

- 输出成本 = completion_tokens × 0.60 / 1_000_000

4. 与账单明细对比。若差额超过 5%,检查是否有图片 token、工具调用附加费或中间层加价。

5. 确认提示词结构:静态内容(系统指令、工具 schema、示例)是否放在最前面,变量内容是否放在最后。

6. 观察请求间隔。若两次相同前缀请求间隔超过几分钟,缓存可能已清除。

7. 记录有效单价 = 总费用 / 总 token 数 × 1_000_000,再与 0.15/0.075/0.60 对照。

建议把上述步骤固化进对账脚本,或直接使用站内 计费路径说明 与 示例 中的核对模板。

风险与边界

缓存分块机制本身是官方设计,目的是降低重复前缀成本,但存在明确边界:

  • 不是所有请求都能命中。短于 1024 tokens 的提示词完全不享受折扣。
  • 精确前缀匹配要求严格,任何前缀漂移都会让分块失效。
  • 缓存不跨组织共享,也不保证永久保留。
  • 图片、音频、工具返回内容会改变 token 组成,可能削弱文本前缀的命中率。
  • ChatGPT Plus / Team 订阅费用与 API Token 计费完全独立,不能用订阅额度抵扣 API 账单。

本文仅供技术对账参考,不构成法律、财务或投资意见。实际费用以 OpenAI 官方账单及当日挂牌价为准。若出现异常扣费,请优先通过官方支持渠道核对 usage 原始数据。

站内路径

对账单时建议按这个顺序走:

把缓存命中率、分块步长和有效单价写进自己的监控,比事后惊讶“账单怎么贵了”更省事。

延伸阅读

English summary

GPT-4o Mini prompt caching automatically discounts repeated prefixes at 50% ($0.075 vs $0.15 per million input tokens) once the prompt reaches 1,024 tokens. The cache matches the longest exact prefix and grows in 128-token tiles, so partial hits are common and the effective input rate often lands between $0.09–0.14/M rather than a clean half-price. Cache lifetime is typically minutes to an hour of inactivity, and any early change in system prompt, tools, or images breaks the match. To reconcile bills, always read the cached_tokens field in the usage object, compute uncached versus cached cost separately, and compare against the official OpenAI pricing page on the day of the invoice. This guide is written for OpenAICN readers who need to verify $/M and separate ChatGPT subscription charges from true API token spend.