Gemini API 隐式缓存怎么提高命中:公共前缀与 total_cached_tokens 核对法
团队把同一份产品手册反复发给 Gemini API,却发现请求看起来一样,缓存命中并不稳定。Gemini 2.5 及更新模型默认启用隐式缓存,不需要创建缓存对象;真正需要调整的是输入顺序:把大段、公共、稳定的内容放在最前面,把每次变化的问题放在后面,再从 usage.total_cached_tokens 判断是否命中。
- 隐式缓存默认开启,但输入 token 没达到模型门槛时不会形成有效命中。
- 公共前缀越大、越稳定,且相似请求越集中在短时间内,命中机会越高。
- 不要凭响应速度猜缓存,直接记录
usage.total_cached_tokens做请求级核对。
隐式缓存改变了什么
Google 官方文档将隐式缓存描述为 Gemini API 的默认优化:Gemini 2.5 及更新模型均可使用,状态式对话和无状态请求都支持。命中后,平台会自动传递相应的成本节省;调用方不用显式创建、命名或续期缓存对象。
这不等于“任何重复文字都会缓存”。文档当前列出的最低输入门槛是:Gemini 2.5 Flash 与 Gemini 2.5 Pro 为 2048 tokens,Gemini 3.1 Pro Preview 及文档所列的 3.5/3.6/3.7/3.8 Flash 为 4096 tokens。模型列表会更新,接入时应以对应模型页面为准。
| 模型范围 | 文档所列最低输入 token | 判断 |
|---|---|---|
| Gemini 2.5 Flash / Pro | 2048 | 低于门槛时先别讨论命中率 |
| 文档所列 Gemini 3.x 模型 | 4096 | 公共前缀本身最好接近或超过门槛 |
隐式缓存为什么要把公共前缀放前面
隐式缓存匹配的是请求开头的相似内容。更稳的组织方式是:公共前缀先放固定文档与固定规则,末尾再拼用户问题 A 或用户问题 B。若把时间戳、随机 ID、会话摘要等变化字段塞在最前面,即使后面是同一份长文档,前缀也会过早分叉。
另一个条件是短时间窗口。官方建议相似前缀的请求尽量在较短时间内发送,所以批量评测、文档问答和同一知识包的集中流量更容易利用隐式缓存;一天只来一个请求的低频场景,不应把成本预算建立在必然命中上。

用 total_cached_tokens 判断有没有命中
最小验证不需要猜。准备带同一公共前缀的请求 A 与请求 B,只改变末尾问题,并在短时间内连续发送。每个响应对象都读取 usage.total_cached_tokens,同时保存模型名、输入 token 数和前缀版本。该值记录命中的缓存 token 数,适合直接形成命中记录。
如果字段为零或没有增长,就保存为未命中记录,再检查三个地方:输入是否达到当前模型门槛;公共内容是否真的位于最前;前缀中是否混入动态值。不要为了提高数值而删除必要上下文,先保证语义正确,再优化重复部分。

Interactions API 与显式缓存的边界
Interactions API 只支持隐式缓存,不支持手工创建和管理显式缓存对象;需要显式缓存时,应改用 generateContent API。隐式缓存则同时适用于通过 previous_interaction_id 续接的状态式对话,以及自行重传上下文的无状态模式。
迁移时先做一周观测:按模型、公共前缀版本和业务场景汇总 usage.total_cached_tokens,再决定是否值得调整输入布局。若前缀经常变化或输入长期低于门槛,继续维持清晰的请求结构,比追求一个不稳定的命中率更实际。
常见问题
公共前缀相同就一定命中吗?
不一定。还要满足模型的最低输入 token 门槛,并尽量让相似请求在短时间内出现。最终仍以 usage.total_cached_tokens 为准。
状态式对话才能使用隐式缓存吗?
不是。官方文档明确说明状态式与无状态式请求都支持隐式缓存;区别只在上下文如何传递,不在缓存是否可用。
Redis 8.10 Compact Hash 怎么省字段名内存:共享 schema 的适用条件
- 上一篇
- Redis 8.10 Compact Hash 怎么省字段名内存:共享 schema 的适用条件
- 下一篇
- 漫蛙离线缓存一次能下多少话?20话范围与书架同步说明
-
- 科技周边 · 人工智能 | 3天前 | 人工智能 · 大模型 · 模型工程 · 多模态 结构化抽取 GLM-5.3-Flash
- GLM-5.3-Flash 做结构化抽取时怎么留住证据链:从图文输入到字段校验
- 140浏览 收藏
-
- 科技周边 · 人工智能 | 3天前 | 人工智能 · 内容审核 · Moderations API · 安全策略 · 业务分流 · AI 文本审核 误报 拒答 Moderations API
- AI 文本审核怎么区分拒答与误报:Moderations API 结果字段和业务分流
- 218浏览 收藏
-
- 科技周边 · 人工智能 | 4天前 |
- Gemini Flex inference 被抢占怎么办:可让渡请求、重试边界与离线任务取舍
- 394浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- SuperCLUE
- SuperCLUE是权威的中文大语言模型综合评测基准,涵盖语言理解、知识应用、AI Agent智能体及安全性等12项核心能力。通过多轮对话与客观测试,定期发布榜单与技术报告,为模型研发、优化及行业选型提供科学依据。
- 116次使用
-
- C-Eval
- 深入了解C-Eval中文评估套件,涵盖52个学科与4级难度。本文详解其功能特点、Zero-shot/Few-shot使用方法及代码示例,助您全面评测LLM中文理解与泛化能力。
- 32次使用
-
- Gradio
- Gradio是一个用于构建机器学习和数据科学Web应用的开源Python库。支持快速创建交互界面,获Google、Meta等大厂青睐,适合模型演示、部署反馈及调试。
- 109次使用
-
- AutoGPT
- AutoGPT是基于GPT-4的开源AI代理平台,拥有超10万GitHub星标。本文介绍其低代码界面、自动化工作流功能、系统配置要求及安装步骤,助您高效部署和管理AI Agent。
- 114次使用
-
- Dataify
- Dataify是专注AI生态的一站式数据服务平台,整合全球住宅代理、多源数据采集API及高质量训练数据集。支持LLM训练、跨境电商及金融分析,解决数据孤岛难题,助力企业智能化转型。
- 20次使用
-
- Gemini API 显式 Context Caching 怎么验收:cachedContents、TTL 与命中统计
- 2026-08-22 209浏览
-
- Gemini 3.5 Flash thinking_level 怎么迁移:从 thinking_budget 到四档推理强度的选择与验收
- 2026-08-22 457浏览
-
- Gemini API Google Search Grounding 怎么验收:查询链、引用标注与失败边界
- 2026-08-23 191浏览
-
- Gemini 3 结构化输出与工具调用怎么一起验收:schema、工具结果和失败分支
- 2026-08-25 346浏览
-
- Gemini 3.7 Flash 的 Agent 任务怎么验收:多步执行、工具结果与最终状态
- 2026-08-27 176浏览

