模型、配额和成本
理解 Gemini CLI 的模型选择、认证入口、配额、token caching 和成本控制。
Gemini CLI 的成本和稳定性不只取决于模型,还取决于认证方式、配额来源、上下文大小、是否缓存、是否进入自动化。
模型、配额和价格都会变。教程里写选择逻辑和复核路径,不要把某个时间点的额度数字写成永久结论。
先分认证来源
Google 登录 适合个人交互使用
Gemini API Key 适合脚本、工具和轻量自动化
Vertex AI 适合企业云项目、统一账单和治理不同入口的配额、隐私、计费和缓存能力可能不同。涉及金额或生产自动化时,以官方 quotas 和 pricing 页面为准。
| 认证入口 | 更适合 | 主要关注 |
|---|---|---|
| Google 登录 | 本机交互、个人体验 | 账号权益、地区、Code Assist 边界 |
| Gemini API Key | 脚本、工具、轻量自动化 | API quota、key 存储、请求频率 |
| Vertex AI | 企业、云项目、统一治理 | IAM、项目、区域、账单和审计 |
模型怎么选
不要只选“最强模型”。更稳的判断是:
简单解释 低成本模型
复杂重构 更强推理模型
大仓库理解 关注上下文窗口和缓存
CI 自动化 关注稳定、速度和失败重试
敏感项目 关注认证入口和数据治理token caching 的意义
长上下文任务里,反复传同一批项目上下文会浪费 token。Token caching 能降低重复上下文成本,但是否可用取决于认证和 API 能力。
官方 FAQ 里提到,cached token 信息并不总会显示;OAuth 用户和 API key 用户看到的统计可能不同。
控制成本的实际做法
- 用
.geminiignore排除无关大文件。 - 先让 agent 列计划,不要直接喂全仓库。
- 大任务分阶段,每阶段只给必要上下文。
- headless 批量任务加频率限制。
- CI 中限制触发条件和最大轮数。
- 对高成本任务输出结构化结果,便于失败重试。
配额错误怎么判断
429 Resource exhausted 通常是配额或频率问题。先降低请求频率、减少批处理并发,再检查 AI Studio 或 Google Cloud 项目用量。
自动化里的成本边界
交互式使用里,成本通常来自少数长任务;自动化里,成本来自“重复”。一个 PR review workflow 如果对每次 push 都读取全仓库,费用和配额很快会失控。更稳的方式是只读取 diff、相关文件、测试输出和必要配置。
Headless 批量脚本要设置触发条件、最大文件数、最大轮数和失败重试间隔。脚本失败时保存输入、输出和错误码,方便下次只重跑失败项,而不是整批重跑。
成本失控的典型来源
| 来源 | 表现 | 控制方式 |
|---|---|---|
| 上下文过大 | 每轮都读取无关文件 | .geminiignore、限定路径、分阶段读取 |
| 自动化过频 | 每次 push 都跑完整 review | 限制触发条件、只读 diff、加并发控制 |
| 模型过强 | 简单分类也用高推理模型 | 默认 Auto,按任务升级 |
| 重试粗糙 | 失败后整批重跑 | 保存输入输出,只重跑失败项 |
| 认证混乱 | quota 和账单来源不清 | 明确 API key / OAuth / Vertex AI |
选择模型的落地规则
默认用 Auto。只有当任务失败原因明确是推理能力不足时,再切 Pro;如果任务是格式整理、摘要、分类、提取,优先 Flash 或更低成本模型。模型切换要记录在教程或脚本配置里,否则后续复现成本不可控。
认证方式会限制可用模型:用 Gemini API Key 免费层时,只能用 Flash 模型——Auto / Pro 都用不了。要用更强模型,要么走 Google 账号登录(Code Assist Individual / AI Pro / Ultra),要么把 API key 切到 Pay-as-you-go。详见 Quota and pricing。
验收标准
任何长期工作流都要能回答:用什么认证入口,默认模型是什么,触发频率是多少,失败如何重试,是否用了 .geminiignore 控制上下文,是否记录 token / latency / error。回答不出来,就还不是可运营的工作流。
官方核验点
模型、配额、preview、token caching 和价格都属于高时效信息。教程发布前要回官方 quota/pricing、model selection、token caching 页面复核,并写清测试日期。不要把一次截图里的数字当作长期承诺。
自动化脚本里还要记录最终模型和失败原因。否则 fallback 或配额变化后,你无法判断成本上升来自模型、上下文还是重试策略。
成本复盘必须能回到具体输入和具体模型。
交互式任务也要看 /stats 或等价用量记录。至少记录模型、轮数、失败重试次数和是否启用缓存,才能判断一次任务贵在上下文、模型选择还是无效重试。
官方资料
- 配额与定价:docs/resources/quota-and-pricing.md
- 模型选择:docs/cli/model.md
- 模型路由(自动 fallback):docs/cli/model-routing.md
- Token caching:docs/cli/token-caching.md
- 模型生成参数(含 thinking budget):docs/cli/generation-settings.md