agent-Specialization/cache_research/official_china/README.md
JOJO 0b3d98d91b feat(stats): token 统计新增缓存命中追踪与命中率展示
- utils/token_usage.py:usage 归一化补全缓存命中字段提取,覆盖
  prompt_tokens_details/input_tokens_details.cached_tokens(OpenAI 系)、
  顶层 prompt_cache_hit_tokens(DeepSeek)、顶层 cached_tokens(Kimi/Step)、
  cache_read_input_tokens(Anthropic 系)、cachedContentTokenCount(Gemini);
  Anthropic 语义下把缓存读/写加回总输入以统一口径,normalize 保持幂等
- 对话级统计新增 total_cached_input_tokens 与 cache_exempt_input_tokens
  (首轮/深度压缩后首轮未命中缓存的输入视为冷启动成本,豁免出命中率分母;
  压缩通过 cache_cold_start_pending 标记在下一次真实调用时判定)
- token_update 广播与 token-statistics 接口同步携带新字段
- TokenDrawer 面板新增「累积缓存输入」「缓存命中率」(前端按 缓存/(总输入-豁免) 换算)
- 深色模式下「当前上下文」数字由灰色 --accent 改为 --text-primary(白)
- 附 cache_research/ 各厂商缓存字段调研文档(代码注释引用)
2026-08-29 12:43:14 +08:00

304 lines
24 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 国内官方 LLM API「缓存命中 Token」字段对照报告
> 调研子智能体 #2 · 调研时间2026-08-29
> 调研范围:**国内官方 API**DeepSeek / Moonshot Kimi / 阿里通义千问 / 智谱 GLM / 字节豆包 / MiniMax / 阶跃星辰 Step / 百度文心千帆)
> 数据来源:以**各厂商官方文档**为准(文末附全部 URL个别引用了第三方报道处已单独标注。
> 结论确定性说明:本文所有"字段名 / 官方示例 JSON / 官方计费规则"均直接取自官方文档,可据此设计实验;**本文只做了文档调研,未实际跑请求验证**,实测时字段是否如实返回以实验为准。
---
## 一、总览表(速查)
| # | 厂商 | 官方平台 | 缓存机制 | 命中字段usage 内位置) | 最小触发阈值 | 命中计费折扣(官方口径) |
|---|---|---|---|---|---|---|
| 1 | DeepSeek | api.deepseek.com | **自动**(无需配置) | 顶层 `prompt_cache_hit_tokens` / `prompt_cache_miss_tokens`**注意:不在 details 里** | 文档未给出固定值 | deepseek-v4-flash 峰值:缓存命中 $0.014/M vs 未命中 $0.44/M≈3.2%,约 1/31 |
| 2 | Moonshot Kimi | platform.moonshot.cn / platform.kimi.com | 自动(当前推荐);历史上曾有显式 cache API | `usage.cached_tokens`(顶层,官方示例);部分资料为 `usage.prompt_tokens_details.cached_tokens` | 文档未给出固定值(按前缀匹配) | kimi-k3 为 $0.30/M vs $3.00/M = **10%**k2.7-code ≈20%k2.6 ≈16.8%k2.5 ≈16.7% |
| 3 | 通义千问 Qwen | DashScope / 阿里云百炼 | OpenAI 兼容:**隐式自动** + 显式 `cache_control`;原生 DashScope同一套显式机制 | OpenAI 兼容:`usage.prompt_tokens_details.cached_tokens`(命中)、`...cache_creation_input_tokens`创建DashScope`usage.prompt_tokens_details.cached_tokens`(部分海外地域 `usage.cached_tokens` 顶层) | 隐式 ≥256 tokensQwen3.7 系列约 2000显式块 ≥1024 tokens | 隐式命中 20%(阿里部署常规);显式命中 10%、创建 125%qwen3.8-max 例外(以控制台为准) |
| 4 | 智谱 GLM | bigmodel.cn | **自动**(默认开启) | `usage.prompt_tokens_details.cached_tokens` | 智谱部署 GLM 为 512 tokens阿里云文档口径 | 命中按标准价格 **50%**(智谱官方);阿里云转售口径 25% |
| 5 | 字节豆包 Doubao | 火山方舟 volces.com | **仅显式**Context API 待下线Responses API 推荐) | `usage.prompt_tokens_details.cached_tokens` | 无自动缓存;最大缓存长度≈上下文窗口-最大输出 | 缓存输入折扣价(低于新输入)+ 存储费(元/千 token/小时) |
| 6 | MiniMax | platform.minimaxi.com国内/ platform.minimax.io海外 | 自动(被动)+ 显式 Anthropic 兼容 | OpenAI 格式:`usage.prompt_tokens_details.cached_tokens`Anthropic 格式:`usage.cache_read_input_tokens` / `cache_creation_input_tokens` | **≥512 tokens**(自动) | M3命中 $0.12/M vs 输入 $0.60/M = **20%**M2.7$0.06 vs $0.30 = 20%M2.5/M2.1$0.03 vs $0.30 = 10%(显式写入 $0.375/M |
| 7 | 阶跃星辰 Step | platform.stepfun.com | **自动** | 顶层 `usage.cached_tokens`**注意:在顶层,不在 details 里** | **≥256 tokens** | 缓存部分按该模型费用 **20%** 计费 |
| 8 | 百度文心 ERNIE | 千帆 ModelBuilderqianfan.baidubce.com | **自动**(默认开启,无需改代码) | `usage.prompt_tokens_details.cached_tokens` | 文档未给出固定值 | 命中按 prompt 单价 **40%** |
> ⚠️ 最容易踩坑的两点:
> 1. **DeepSeek 和 Step 的字段在 `usage` 顶层**`prompt_cache_hit_tokens` / `cached_tokens`),其余六家在 `usage.prompt_tokens_details` 下——实验代码要同时兼容这两种形态。
> 2. **只有豆包是纯显式缓存**(需要创建缓存或传 `caching` 参数),其余六家自动缓存 + 千问可显式。不传任何参数就指望豆包返回 cached_tokens 是无效的。
---
## 二、逐家明细
### 2.1 DeepSeek深度求索api.deepseek.com
- **官方文档**
- API 参考usage 结构https://api-docs.deepseek.com/api/create-chat-completion
- 定价页缓存命中价https://api-docs.deepseek.com/quick_start/pricing
- **缓存机制**:自动 context cache无需任何配置有"高峰期/非高峰期"分时定价(峰值=非峰值的 2 倍)。
- **usage 字段(官方 API 参考 schema 原文)**DeepSeek 是**独立字段模型**——
```json
"usage": {
"completion_tokens": 10,
"prompt_tokens": 16, // = prompt_cache_hit_tokens + prompt_cache_miss_tokens
"prompt_cache_hit_tokens": 0, // ← 命中缓存的 token 数(顶层!)
"prompt_cache_miss_tokens": 16, // ← 未命中缓存的 token 数(顶层!)
"total_tokens": 26,
"completion_tokens_details": { "reasoning_tokens": 0 }
}
```
- 官方定义原文:"Number of tokens in the prompt that hits the context cache."
- **流式行为**:官方流式示例中,最后一个 chunk`finish_reason=stop`)携带 `usage`;若设置 `stream_options.include_usage=true`,会在 `data: [DONE]` 前再补一个 `choices` 为空的 usage chunk其余 chunk 的 `usage``null`
- **计费折扣(官方定价页,单位 $/1M tokens**
| 模型 | 输入(缓存命中) 峰值/非峰值 | 输入(缓存未命中) 峰值/非峰值 |
|---|---|---|
| deepseek-v4-flash | $0.014 / $0.007 | $0.44 / $0.22 |
| deepseek-v4-pro | $0.044 / $0.022 | $1.32 / $0.66 |
即命中≈未命中的 **1/31≈3.2%**折扣力度为国内最大。峰值时段UTC 周一至五 01:0004:00 与 06:0010:00。
> 第三方报道知乎非官方DeepSeek V4-Pro 人民币口径"缓存命中 0.1 元/百万 vs 未命中 3 元/百万(差 30 倍),促销窗口 0.025 元"。此条为第三方转述,仅作参考。
- **实验要点**:读取顶层 `usage.prompt_cache_hit_tokens`;未命中时该字段为 `0`(官方示例即返回 0不要把它当缺失。
---
### 2.2 Moonshot Kimiplatform.moonshot.cn / platform.kimi.com
- **官方文档**
- API 参考Chathttps://platform.kimi.com/docs/api/chat
- 上下文缓存指南https://platform.kimi.com/docs/guides/context-caching
- 定价页https://platform.kimi.com/docs/pricing/chat
- **缓存机制**:默认会自动缓存(官方指南:"当请求包含相同前缀时自动缓存,无需手动调用;命中后自动续期")。历史上曾公测显式缓存 API`POST /v1/caching`2024 年月之暗面文档),当前 platform.moonshot.cn API 列表已不含该端点,以自动缓存为准。
- **usage 字段(官方 API 参考示例原文)**
```json
"usage": {
"prompt_tokens": 19,
"completion_tokens": 21,
"total_tokens": 40,
"cached_tokens": 10 // ← 命中缓存 token顶层官方示例原文
}
```
官方《上下文缓存指南》PDF中的 usage 示例则为 `usage.prompt_tokens_details.cached_tokens`。**两处官方文档形态不一致**,实验时两个位置都要读。
- **请求参数**:官方请求体字段 `prompt_cache_key`(官方原文)——“用于缓存相似请求的响应以优化缓存命中率。对于 Coding Agent通常是代表单个会话的 session id 或 task id退出并恢复会话时应保持不变。对于 Kimi Code Plan此字段为必填以提高缓存命中率。”不传时按前缀自动匹配。
- **流式行为**:官方指南明确"**流式返回时,最后一个 chunk 会携带 usage含 cached_tokens**"。
- **计费折扣(官方定价,$/1M**
| 模型 | 输入(未命中) | 输入(命中) | 折扣 |
|---|---|---|---|
| kimi-k3 | $3.00 | $0.30 | **10%** |
| kimi-k2.7-code | $0.95 | $0.19 | 20% |
| kimi-k2.6 | $0.95 | $0.16 | ≈16.8% |
| kimi-k2.5 | $0.60 | $0.10 | ≈16.7% |
| moonshot-v1 系列 | — | 无 | 无缓存折扣 |
- **实验要点**:最后一轮流式 chunk 的 usage 是主战场;`cached_tokens` 与 `prompt_tokens_details.cached_tokens` 两个位置都要探测。
---
### 2.3 通义千问 QwenDashScope / 阿里云百炼)
- **官方文档**阿里云百炼《上下文缓存Context Cache》https://help.aliyun.com/zh/model-studio/context-cache
- **缓存机制OpenAI 兼容模式与原生 DashScope 模式已分别核实)**
- **隐式缓存(自动)**对所有支持模型默认开启、不可关闭按前缀匹配。OpenAI 兼容与 DashScope 均可命中。
- **显式缓存(需主动开启)**:在 messages 的 content 中加 `"cache_control": {"type": "ephemeral"}`(仅此一种 type从 messages 开头到标记位置创建缓存块OpenAI 兼容、DashScope、Anthropic 兼容三种协议均支持。单次最多 4 个标记;向后回溯最近 20 个 content 块;最小缓存块 **1024 tokens**;有效期 **5 分钟(命中则重置)**
- **usage 字段**
- OpenAI 兼容 · 隐式命中(官方示例原文):
```json
"usage": {
"prompt_tokens": 3019,
"completion_tokens": 104,
"total_tokens": 3123,
"prompt_tokens_details": { "cached_tokens": 2048 }
}
```
- OpenAI 兼容 / DashScope · 显式缓存:同时上报创建与命中(官方示例原文):
```json
// 第一次请求(创建缓存) // 第二次请求(命中缓存)
"cache_creation_input_tokens": 1605, "cache_creation_input_tokens": 0,
"cached_tokens": 0, "cached_tokens": 1605,
// 均位于 usage.prompt_tokens_details 下
```
- 原生 DashScope · 视觉模型海外地域(新加坡):命中字段一度为顶层 `usage.cached_tokens`(文档注明"后续将升级至 `prompt_tokens_details.cached_tokens`");国内(北京)地域直接在 `usage.prompt_tokens_details.cached_tokens`
- Anthropic 兼容:`usage.cache_read_input_tokens`(命中,**不计入** `input_tokens`)、`usage.cache_creation_input_tokens`(创建)。
- **计费折扣(官方)**
- 隐式:命中 token 按输入标准价 **20%**(阿里百炼部署常规模型;`qwen3.8-max` 例外,以控制台为准)。
- 显式:**创建**缓存 token 按标准输入价 **125%****命中**按 **10%**qwen3.8-max 例外)。
- **触发阈值(官方)**:阿里云百炼部署模型的隐式缓存最少 **256 tokens**Qwen3.7 系列约 **2000 tokens**
- **实验要点**多协议多形态是千问的特色——OpenAI 兼容/DashScope 看 `prompt_tokens_details`Anthropic 兼容看 `cache_read_input_tokens`,部分海外地域 DashScope 看顶层 `cached_tokens`。本任务重点实验是 OpenAI 兼容 + 原生 DashScope 两种。
---
### 2.4 智谱 GLMbigmodel.cn
- **官方文档**《上下文缓存》https://docs.bigmodel.cn/cn/guide/capabilities/cache
- **缓存机制****自动(隐式)缓存**,默认启用,无需手动配置;基于内容相似度/前缀自动触发。
- **usage 字段(官方原文)**"响应字段 `usage.prompt_tokens_details.cached_tokens`"——
```json
"usage": {
"prompt_tokens": …,
"completion_tokens": …,
"total_tokens": …,
"prompt_tokens_details": { "cached_tokens": … } // ← 命中缓存 token
}
```
官方示例代码取值方式:`response.usage.prompt_tokens_details.cached_tokens`(未命中时需判空/缺省为 0
- **计费折扣(官方)**:缓存命中 Token 按优惠价格计费,"**通常为标准价格的 50%**"新内容按标准价、输出按标准价。GLM Coding Plan 套餐内积分抵扣口径官方套餐页GLM-5.3 Input 系数 6.9 / Cached Input 系数 1.7≈24.6%)。
- **有效期(官方)**"缓存有合理的时效性,过期后会重新计算",未公布固定数值。
- **第三方口径**(阿里云百炼文档):智谱部署的 GLM 触发隐式缓存最少 **512 tokens**;阿里云转售 GLMZHIPU/GLM-5.2 等)命中按 25%。
- **实验要点**:普通对话请求即可验证;同一 system 前缀连续请求看 `prompt_tokens_details.cached_tokens` 是否增长。
---
### 2.5 字节豆包 Doubao火山方舟 volces.com
- **官方文档**
- 《上下文缓存Context API待下线》https://www.volcengine.com/docs/82379/1396491
- 《上下文缓存》主文档 https://www.volcengine.com/docs/82379/1398933
- **缓存机制****仅显式缓存,无自动缓存**。两种 API
1. **Context API待下线**:先 `POST /api/v3/context/create` 创建缓存(`mode: "session"` 会话缓存 / `"common_prefix"` 前缀缓存,返回 `ctx-*` ID再调用 `POST /api/v3/context/chat/completions`(请求体带 `context_id`使用。TTL 可配,范围 1 小时7 天([3600,604800] 秒),未使用则过期、使用则重置。
2. **Responses API推荐**:请求体传 `"caching": {"type": "enabled"}`(加 `"prefix": true` 为前缀缓存)创建 Session/前缀缓存,返回缓存 ID后续用 `"previous_response_id": "<ID>"` 复用。过期时刻用 Unix 时间戳配置,最大当前时间 +604800 秒7 天)。支持多模态与工具缓存、可手动删除任意缓存 ID。
- 需在控制台「开通管理」→「推理(缓存)定价」开启缓存。
- **usage 字段官方示例原文Context Chat API 响应)**
```json
"usage": {
"prompt_tokens": 28,
"completion_tokens": 4,
"total_tokens": 32,
"prompt_tokens_details": { "cached_tokens": 18 } // ← 缓存输入 token
}
```
创建缓存接口的响应同样带 `usage.prompt_tokens_details.cached_tokens`(首建时为 0
- **流式行为**:官方 SDK 示例用 `stream_options={"include_usage": True}`chunk 的 `usage` 非空(含 cached_tokens
- **计费(官方)**:四类——新输入(标准价);**缓存输入(折扣价,显著低于新输入)**;输出(标准价);**存储费**(元/千 token/小时,按每自然小时缓存最大 token 量计,直到 TTL 到期或删除)。官方举例存储单价 0.000017 元/千 token/小时示例值Doubao-1.5-pro-32k 示例缓存输入 1.6 元/千万 tokens。实际单价以《模型价格》页为准。
- **实验要点**:不传缓存参数直接调 `/chat/completions` 是**不会**返回缓存字段的(有自动 KV 缓存但不在 usage 中体现);必须走 Context Chat API`context_id`)或 Responses API`caching`/`previous_response_id`)才能看到 `cached_tokens`
---
### 2.6 MiniMaxplatform.minimaxi.com 国内 / platform.minimax.io 海外)
- **官方文档**https://platform.minimax.io/docs/api-reference/text-prompt-caching国内域名为同一套文档platform.minimaxi.com
- **缓存机制**:两套并行——
1. **自动缓存(被动 Prompt Caching**:无需改调用方式。前缀匹配顺序为"工具列表 → 系统提示 → 用户消息"。有效期由系统按负载自动调整,命中则续期。
2. **显式缓存(仅 Anthropic 兼容 API**:在 content 中加 `"cache_control": {"type": "ephemeral"}`**5 分钟 TTL命中自动续期**;首次写入缓存有额外费用。
- **usage 字段**OpenAI 格式官方示例原文):
```json
"usage": {
"prompt_tokens": 1200,
"completion_tokens": 300,
"total_tokens": 1500,
"prompt_tokens_details": { "cached_tokens": 800 } // ← 自动缓存命中
}
```
Anthropic 格式(显式/自动均可出现):
```json
"usage": { "input_tokens": 108, "output_tokens": 91,
"cache_creation_input_tokens": 0, // 创建缓存(显式)
"cache_read_input_tokens": 14813 } // 命中缓存
```
- **触发阈值(官方)**:自动缓存适用于**输入 ≥512 tokens** 的请求。
- **计费折扣(官方 PayGo 示例)**
- MiniMax-M3输入 $0.60/M命中 $0.12/M**20%**
- MiniMax-M2.7:输入 $0.30/M命中 $0.06/M20%),显式写入 $0.375/M
- MiniMax-M2.5 / M2.1:输入 $0.30/M命中 $0.03/M10%),显式写入 $0.375/M。
- **支持模型**自动缓存——M3 / M2.7 / M2.5 / M2.1 系列显式缓存——M2.7 / M2.5 / M2.1 / M2 系列。
- **实验要点**OpenAI 兼容接口看 `prompt_tokens_details.cached_tokens`;如果用 Anthropic 协议则看 `cache_read_input_tokens`。首次请求建立缓存(可能为 0第二次请求读取。
---
### 2.7 阶跃星辰 Stepplatform.stepfun.com
- **官方文档**《Prompt 缓存最佳实践》https://platform.stepfun.com/docs/zh/guides/developer/prompt-cache
- **缓存机制****自动**;请求超过 **256 tokens 时自动启用**,按 Prompt 前缀匹配。缓存淘汰采用 **LRU最近最少使用**,不设固定 TTL高峰期缓存更容易被逐出。
- **usage 字段(官方示例原文)**——**顶层 `cached_tokens`,不在 details 里**
```json
"usage": {
"cached_tokens": 512, // ← 命中缓存 token顶层
"prompt_tokens": 591,
"completion_tokens": 120,
"total_tokens": 711
}
```
官方判定方法原文:"如果 response.usage 存在 cached_tokens 字段则表明该请求命中缓存cached_tokens 的值即为命中的 Token 长度。"
- **流式行为**:官方 Web 搜索示例显示**每个流式 chunk 都带 usage含 cached_tokens**,与 OpenAI 惯例(仅末 chunk不同需多次读取。
- **计费折扣(官方)**:缓存部分 Token 按"**对应模型费用的 20%**"计费。
- **支持模型(官方)**step-3.7-flash、step-3.5-flash、step-3.5-flash-2603、step-1o-turbo-vision 等(文档列出的系列);其他模型暂不支持。
- **实验要点**prompt 要 ≥256 tokens 才有缓存;命中读取顶层 `usage.cached_tokens`(注意与 DeepSeek 顶层字段不同名)。
---
### 2.8 百度文心 ERNIE千帆 ModelBuilder
- **官方文档**《prompt cache 上线公告》https://ai.baidu.com/ai-doc/WENXINWORKSHOP/Rm6uq7jy9
- **缓存机制****自动**,对所有用户默认开启,无需修改代码(官方原文)。
- **usage 字段(官方响应示例原文)**
```json
"usage": {
"prompt_tokens": 159,
"completion_tokens": 89,
"total_tokens": 248,
"prompt_tokens_details": { "cached_tokens": 128 } // ← 命中缓存 token
}
```
官方说明:"当本次请求已命中缓存usage 中返回 cached_tokens 字段……代表命中缓存的 token 数量。"(即未命中时该字段可能缺失。)
- **计费折扣(官方)**:命中缓存的 `cached_tokens``prompt_tokens` 单价的 **40%** 计算。模型示例ERNIE-4.0-Turbo-8K 输入命中0.0012 元/千 tokens vs 输入未命中0.003 元/千 tokens输出 0.009 元/千 tokens。
- **有效期(官方)**"系统将定期清理一段时间没有使用过的缓存";官方同时明确"命中概率并不是 100%,即使上下文完全一致的请求也存在无法命中的概率"。
- **实验要点**:同一 prompt 连续请求(官方示例即为同样长文案换问题),观察 `prompt_tokens_details.cached_tokens`;未命中时字段可能缺失,需容错。
---
## 三、跨厂商对照(实验脚本设计要点)
### 3.1 字段位置差异(最重要)
| 厂商 | 命中字段完整路径 | 未命中时表现 |
|---|---|---|
| DeepSeek | `usage.prompt_cache_hit_tokens`(顶层,另有 `prompt_cache_miss_tokens` | 返回 0 |
| Kimi | `usage.cached_tokens`(顶层)或 `usage.prompt_tokens_details.cached_tokens` | 文档两种示例并存 |
| QwenOpenAI/百炼) | `usage.prompt_tokens_details.cached_tokens`;显式另有 `cache_creation_input_tokens` | 未命中为 0/缺失 |
| QwenDashScope 海外部分模型) | `usage.cached_tokens`(顶层) | — |
| GLM | `usage.prompt_tokens_details.cached_tokens` | 缺失(官方例程判空) |
| 豆包 | `usage.prompt_tokens_details.cached_tokens` | 需要显式缓存才出现 |
| MiniMax | OpenAI 格式:`usage.prompt_tokens_details.cached_tokens`Anthropic 格式:`usage.cache_read_input_tokens` / `cache_creation_input_tokens` | 首次请求命中可能为 0 |
| Step | `usage.cached_tokens`(顶层) | 未命中时无该字段(官方判定) |
| 百度千帆 | `usage.prompt_tokens_details.cached_tokens` | 缺失 |
**兼容读取建议**:统一读取器按以下优先级取值——
```
candidates = [
usage.get("prompt_cache_hit_tokens"), # DeepSeek
usage.get("cached_tokens"), # Kimi / Step / 部分 DashScope
(usage.get("prompt_tokens_details") or {}).get("cached_tokens"), # 其余各家
(usage.get("prompt_tokens_details") or {}).get("cache_read_input_tokens"), # Anthropic 兼容
]
```
### 3.2 流式 usage 位置差异
- **DeepSeek**:末 chunk 或 include_usage 追加 chunk。
- **Kimi**:流式末 chunk 携带 usage。
- **Step**:每个 chunk 都可能带 usage。
- **豆包**SDK 需 `stream_options={"include_usage": True}`
- 其余Qwen/GLM/MiniMax/千帆):按 OpenAI 惯例,`stream_options.include_usage=true` 时末 chunk 带 usage非流式直接看响应 usage。
### 3.3 缓存触发阈值
- Step≥256 tokensMiniMax≥512 tokensQwen 隐式≥256部分模型更高全局建议构造 **≥2048 tokens 的稳定前缀** 再测,避开各家阈值差异。
### 3.4 显式 vs 自动(决定实验脚本形态)
- 只发普通请求即可验证DeepSeek、Kimi、Qwen隐式、GLM、MiniMax、Step、百度千帆。
- 必须额外走显式流程:**豆包**(先建缓存/传 caching 参数Qwen 如需显式命中cache_control ephemeral5 分钟 TTL、1024 tokens 起)也需加标记。
---
## 四、来源清单与确定性分级
| 事实 | 确定性 | 依据 |
|---|---|---|
| DeepSeek usage 顶层 `prompt_cache_hit_tokens/miss_tokens`V4 缓存命中价($0.014 vs $0.44 峰值) | 高(官方 API 参考与定价页原文) | https://api-docs.deepseek.com/api/create-chat-completion · /quick_start/pricing |
| Kimi `usage.cached_tokens`(顶层);`prompt_cache_key`;流式末 chunk 带 usageK3 命中 10%$0.30/$3.00 | 高(官方指南/API/定价页K3 价格亦有第三方 blog 复述一致) | https://platform.kimi.com/docs/api/chat · /docs/guides/context-caching · /docs/pricing/chat |
| Qwen OpenAI 兼容 & DashScope 隐式/显式缓存字段、1024 阈值、5min TTL、20%/10%/125% 计费 | 高(阿里云官方文档原文+示例 JSON | https://help.aliyun.com/zh/model-studio/context-cache |
| GLM 自动缓存、`prompt_tokens_details.cached_tokens`、命中约 50% | 高(智谱官方);智谱部署 512 阈值、25% 折扣为阿里云文档转述(中) | https://docs.bigmodel.cn/cn/guide/capabilities/cache |
| 豆包仅显式缓存、`prompt_tokens_details.cached_tokens`、TTL 1h7d、Responses API caching 参数 | 高(火山方舟官方文档原文) | https://www.volcengine.com/docs/82379/1396491 · 1398933 |
| MiniMax 自动≥512、OpenAI/Anthropic 双字段、M3 命中 20%$0.12/$0.60 | 高官方文档RooCode issue 表格亦一致 | https://platform.minimax.io/docs/api-reference/text-prompt-caching |
| Step 自动≥256、顶层 `cached_tokens`、20% 计费、LRU | 高(官方文档原文) | https://platform.stepfun.com/docs/zh/guides/developer/prompt-cache |
| 百度千帆自动默认开启、`prompt_tokens_details.cached_tokens`、40% 计费 | 高(官方公告响应示例) | https://ai.baidu.com/ai-doc/WENXINWORKSHOP/Rm6uq7jy9 |
| DeepSeek V4-Pro 人民币缓存价0.1 元 vs 3 元/百万) | 低-中(仅第三方知乎转述,非官方) | 第三方报道 |
| Kimi 命中价逐模型数值 | 中(官方定价页为主,第三方 blog 佐证) | platform.kimi.com pricing + 第三方 blog |
**验证状态**:以上均为**官方文档调研结论**,尚未做真实 API 请求实测。建议下一步按第三节要点构造实验脚本逐家验证字段如实返回。