现场是这样的。Vertex AI 上 Gemini 1.5 Pro 开了 Google Search grounding,月度账单多出一项 grounding 费用,按请求数收,比模型调用本身还高。

中间走过弯路,把「重试请求同样计费」当成主因,改完现象没变。

真正麻烦的地方在于,几个原因的现象几乎一样。grounding 按千次请求单独计价,不含在 token 里;开启了自动 grounding,普通问答也触发检索;测试环境与生产共用同一个项目配额。

上来先看项目的账单明细

gcloud billing accounts list --format='value(name)'

接着统计带 grounding 的请求数

python -c "import json;print(sum(1 for l in open('req.jsonl') if json.loads(l).get('grounding')))"

只在需要的意图上开启

python -c "print({'enable_grounding':['fact_check','news']})"

剩下的就是按 SKU 汇总该项费用

python -c "print(1200/1000*35)"

同一份数据我导出了两份,一份留底,一份拿来试。

这类问题以前遇到过,但这次的触发条件和上次不一样。

怎么算真的好了,看的是同一批现象。grounding 请求占比从 100% 降到 15%,该项费用下降八成,答案准确率不变。

容易忽略的是,带检索的能力通常单独计价,开关要按意图打开,全量开启等于给每次闲聊都付检索费。这类问题最好一次改到位,反复小改反而容易把原因搅混。

作者 9823189