一位同事在工作中问了我一个无关紧要的问题,我让一个 Agent 去检索我最近的聊天记录和文档,它确实找到了正确答案,但花了我 38 美元!!!。这笔投入产出比太糟糕了。虽然我的时间很宝贵,但我实际上并不会花那么多时间去手动查找,而且这个任务根本不需要昂贵的规划能力。
我们可以做得更好。
Google Cloud 的 Gemini Enterprise Agent Platform 提供了 Model Garden,可以通过便捷的 API 访问许多顶级模型,包括 Google、Anthropic 甚至 xAI 的模型。事实上,Huggingface 上的每个模型都可以供你自行部署,但在本文中,我们将重点关注 Anthropic 的新款 Claude Fable 5.1 和 Google 的新款 Gemini 3.8 Flash。现在,开发者可以在完全相同的企业级 API 接口后面,使用两个形态各异的前沿模型。
Fable 5.1 带来了 Mythos 级别的自主规划能力、100 万 token 的上下文窗口以及深入的多步骤尽职调查能力。Gemini 3.8 Flash 则以 Flash 的经济性(每百万输入 token 0.75 美元,每百万输出 token 3.75 美元)提供接近前沿水平的推理能力和惊人的 token 处理速度,并具备可调的思维控制功能。
选择其中一个模型并将所有任务都路由给它似乎很容易做到。但这是一种错误。
如果你通过深度规划器来处理常规的开发人员日常变动,那你就是在支付前沿模型的 token 费率来解析 git diff。如果你强迫一个快速模型在没有正式计划的情况下处理不可逆的数据库迁移,它会鲁莽行事,在你喝完咖啡之前就把状态搞砸。
通过使用 2 个模型并进行任务路由,我们可以非常简单地获得大幅改进的“token 经济学”。

作者:Alan Blount (@zeroasterisk
以下是带你实现这一目标的完整指南:
- 在单一统一治理平面后配置这两个模型。
- 在选择默认模型之前对常规任务进行基准测试。
- 将快速模型用作你的前线协调员,并在你知道需要更多算力或快速模型需要升级时,使用深度规划器。
- 建立关于任务 ROI 以及 token 价值(而不仅仅是成本)的心智模型。
1. 在单一统一治理平面后配置这两个模型
选择你的 LLM 推理平台需要考虑许多设计决策。成本、容量、安全性、模型选择、服务功能、开发人员摩擦,更多的安全性(API 密钥存在风险)。Gemini Enterprise Agent Platform(前身为 Vertex AI)是一个具有独特功能的全面选项,并且因为它将 Gemini 和 Anthropic 模型都作为托管 API 暴露出来,所以单个安全认证即可覆盖这两种工作负载。
但说实话,有些流程的摩擦比我想要的要大。我喜欢开玩笑说:“不可能的事情很简单,但简单的事情很难。”这也是我写这篇文章的部分原因。
在处理模型之前,登录 gcloud,阅读文档以了解各种变体。
1gcloud auth application-default login
要访问 Claude Fable 5.1,你需要启用该 API,然后启用 Claude Fable 5.1并填写一份关于你用例的快速表单。但你还没完。
现在,Fable 受 Google Cloud 的高级 AI 安全附录约束。在你向 aiplatform.googleapis.com 发送任何提示词之前,你必须在项目级别明确配置提示词-响应共享并接受发布者条款。
以下是针对全局端点的确切操作说明,阅读文档以了解各种变体。
首先,让我们设置几个变量来帮助我们要做的事情。请注意,URL 路径中的模型名称是 claude-fable-5-1,使用连字符而不是点,并确保输入你的项目 ID 和位置,然后根据你所在的区域可能更改端点:
1export PROJECT_ID="YOUR_PROJECT_ID"2export LOCATION="global"3export MODEL="claude-fable-5-1"45# Global endpoint: aiplatform.googleapis.com (recommended)6# Multi-Regional endpoints: aiplatform.eu.rep.googleapis.com7# Regional endpoints: us-central1-aiplatform.googleapis.com8export ENDPOINT="https://aiplatform.googleapis.com"
接下来调用 setPublisherModelConfig API,将 dataSharingEnabledProvider 设置为 ANTHROPIC - 注意这是全大写的:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{ "publisherModelConfig": { "dataSharingEnabledProvider": "ANTHROPIC" } }' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/anthropic/models/${MODEL}:setPublisherModelConfig"
初始调用返回一个已完成的操作对象,确认数据共享已激活:
1{2 "name": "projects/YOUR_PROJECT_NUMBER/locations/global/operations/1234567",3 "metadata": {4 "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.SetPublisherModelConfigOperationMetadata",5 "genericMetadata": {6 "createTime": "...",7 "updateTime": "..."8 }9 },10 "done": true,11 "response": {12 "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.PublisherModelConfig",13 "loggingConfig": {},14 "dataSharingEnabledProvider": "ANTHROPIC"15 }16}
如果你已经完成了这一步,你会收到 HTTP 409 错误,提示该设置已存在:
1409 ALREADY_EXISTS: The same PublisherModelConfig already exists.
这个 409 错误完全不是问题。
测试你对模型的访问权限,你应该会得到一个响应:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{"anthropic_version": "vertex-2023-10-16","messages": [{"role": "user", "content": "Hello world."}], "max_tokens": 1024, "stream": true}' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/anthropic/models/${MODEL}:streamRawPredict"
如果你没有正确执行此操作,你将收到如下所示的 HTTP 403 错误:
1403 PERMISSION_DENIED: Access to this model requires data sharing to be enabled for publisher 'anthropic'. Please set `PublisherModelConfig.data_sharing_enabled_provider`2to 'anthropic' via the setPublisherModelConfig API to use this model.
要访问 Gemini 3.8 Flash,请确保你在模型卡片中看到它已启用,它应该可以直接正常工作:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{"contents": [{"role": "user", "parts": [{"text": "Hello world"}]}],"generationConfig": {"thinkingConfig": {"thinkingLevel": "LOW"}}}' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/gemini-3.8-flash:streamGenerateContent"
……呼。我们做到了 🎉!
需要更多配额?你可以为任何模型管理配额,并为某些模型支付预置吞吐量的费用。
2. 不要信任基准测试,运行你自己的测试
如果你问五位工程师在 Agent 设置中使用哪个模型,你会得到超过五个基于 Twitter 氛围和合成排行榜的相互冲突的观点。
公开基准测试提供了极好的资源,但它们测试的是孤立的提示词或日益脱离实际的任务。生产用例或你本地的 agentic SDLC Agents 与公开基准测试从来都不是完美匹配的。今天,你的工作方式与任何基准测试都不同。
因此,你可以构建自己的基准测试(Agent Ops 和 Evals 万岁!)并大规模自动化这个过程,或者你也可以只是并排执行你自己的简单任务。只要你不改变任务中的文件,你就应该没问题,并且几乎不费吹灰之力就能对任务有一个感觉。
这里有一个使用 promptfoo 驱动 opencode 在每个模型上执行相同 2 个任务的示例。你需要更改任务描述并设置环境才能使其工作,但这不应该太难。

GIF
1# opencode.json2{3 "$schema": "https://opencode.ai/config.json",4 "provider": {5 "google-vertex": {6 "options": { "project": "alanblount-demo", "location": "global" },7 "models": {8 "gemini-3.8-flash": { "id": "gemini-3.8-flash", "name": "Gemini 3.8 Flash" }9 }10 },11 "google-vertex-anthropic": {12 "options": { "project": "alanblount-demo", "location": "global" },13 "models": {14 "claude-fable-5-1": { "id": "claude-fable-5-1", "name": "Claude Fable 5.1" }15 }16 }17 },18...
配置 Promptfoo 以比较 opencode agentic 任务执行,而不仅仅是单个提示词和模型。
1# promptfooconfig.yaml2description: "Benchmarking OpenCode Agent Harness: Gemini 3.8 Flash vs. Claude Fable 5.1"34prompts:5 - "Summarize git branch status in one sentence."6 - "Design a zero-downtime database migration strategy from Postgres to Spanner."78providers:9 - id: "exec:opencode run --auto -m google-vertex/gemini-3.8-flash"10 label: "Gemini 3.8 Flash (OpenCode Agent)"11 - id: "exec:opencode run --auto -m google-vertex-anthropic/claude-fable-5-1"12 label: "Claude Fable 5.1 (OpenCode Agent)"1314defaultTest:15 options:16 timeoutMs: 60000
使用 Promptfoo 运行你自己的并排比较:
promptfoo eval -c promptfooconfig.yaml --no-cache
这是在干净的 dev container 中运行此评估后的结果:

在检查 PR 分支时,Claude Fable 5.1 进行了多轮元反思,重新检查了未改变的树哈希值。它花了将近 6 秒,成本高出了 23 倍。Gemini 3.8 Flash 立即识别出意图,触发 git 工具,并在 1.1 秒内给出答案,成本不到十分之一美分。
在复杂的数据库迁移方面,情况发生了逆转。Gemini 3.8 Flash 在 3 秒内生成了一个坚实、清晰的线性序列。但 Fable 5.1 花了 12 秒生成一个完整的、正式的有向无环图 (DAG)。它识别出双写中的时钟偏差风险,生成了幂等键要求,并定义了一个可回滚的门控。
这只是一个说明性的例子,你应该用你自己的任务进行比较。
3. 日常使用和生产的实际应用
无论你使用的是现成的编码工具还是构建自定义的 agent 服务,制胜的模式是非对称协调:廉价的快速执行,配合深思熟虑的深度架构检查点。在棘手的问题或规划工作上花费昂贵的 token,但对于更简单的任务,默认使用更便宜的 token。
Coding Agent Harneses (OpenCode, Aider, etc)
不要强迫一个模型成为你的通用默认值。配置映射到不同模型的专业化子 agents。使用相同的统一提供商会带来安全性和成本优势。使用不同的模型系列可以让它们互相检查从而受益。
使用深度思考者 agent 来识别根本原因并为这个问题规划解决方案,然后使用 worker agent 来处理每个任务并报告状态。深度规划者检查他们的工作,要么确认成功,要么重新分配。
1# opencode.json2{3 "$schema": "https://opencode.ai/config.json",4 "model": "google-vertex/gemini-flash-latest",5 "agent": {6 "plan": {7 "model": "google-vertex/gemini-flash-latest"8 },9 "build": {10 "model": "google-vertex/gemini-flash-latest"11 },12 "worker": {13 "model": "google-vertex/gemini-3.8-flash",14 "mode": "primary",15 "description": "General worker agent using gemini-3.8-flash"16 },17 "deep-thinker": {18 "model": "google-vertex-anthropic/claude-fable-5-1@default",19 "mode": "primary",20 "description": "Deep thinking agent using Claude Fable 5.1"21 }22 },23...
Custom Agents "as a Service" (Google ADK, LangGraph, custom code, etc)
当你构建自己的 agent harnesses 和自己的 agent services 时,你拥有完全的架构自由
- 重塑 harness 以适应模型: 给 Gemini 3.8 Flash 提供 3 到 5 个专注的工具 (read_file, write_file, run_tests),并带有严格的 JSON schemas。快速模型擅长专注执行,但 50 个工具的目录会导致参数混淆和上下文浪费。给 Claude Fable 5.1 提供架构文档、schemas 和指南,但剥离直接的文件写入权限。
- 扎根于 Evals: 不要猜测哪个模型适合哪个节点。在你的 repo 任务上运行带有确定性断言检查的自动评估套件,以找到小模型以 10% 的成本交付 95% 质量的地方。说起来容易做起来难,很难知道你想评估哪些场景。查看我们的 Kaggle 5 天课程 (agents, videcoding) 了解更多。
- 使用“寻求帮助”升级模式: 从快速 worker 开始处理每个传入请求。给 worker 一个明确的工具:ask_for_help(reason, failed_attempts, context)。Worker 直接处理 85% 到 90% 的请求。仅在出现歧义、不可逆操作或连续两次工具失败时才升级。
关于自动化“智能”模型路由器的现实检查
智能路由器在预测性 ML(广告技术、欺诈检测)中有着悠久的历史。多臂老虎机和成本-质量路由器之所以成熟,是因为特征是表格化的,输入是有界的,反馈(点击、拒付)既是即时的,也可以在长时间范围内衡量。
在生成式 AI 中,多轮 agents 则是另一回事。动态路由器可能在三个生产现实中挣扎:
- 单轮上下文可能不包含足够的信号来选择
- 成功指标没有清晰地外推到特征,因此路由器无法快速“学习”
- 错误的选择在另一条路径上重跑,侵蚀了任何潜在的节省并增加了延迟
结论: 保持简单。显式地组合你的 agents 并按任务边界路由。定义清晰的角色,让具体的代码断言或人类意图控制交接。
4. Token ROI 方程:你实际在为什么付费?
原始价格表($/1M tokens)并不是生产价值的良好地图。计算成本只是方程的一部分。不可能给你一个在所有领域(编码、产品、制造和其他所有待完成的工作)都永远有效的计算公式。
一个起点可能是思考你正在获得的业务价值。
- 节省的人力时间的成本,员工完成更多工作,减少在琐碎和自动化任务上的时间。
- 更快向生产环境发布功能的价值,同时由于这些功能提高客户满意度和留存率。
- 由于改进的安全措施和工程实践而缓解的错误和避免的生产中断。
减去 token 成本,减去提升团队技能以构建和管理其 agents 的成本,你就有了一个粗略的 ROI 计算。

你可以通过使用更少且更便宜的 token 来影响这些计算,但你可能会通过更快完成更多工作来最大程度地影响它们。选择高杠杆任务。选择那些能带来节省开销或增加收入、可验证且值得自动化的任务。当你分解这些任务时,也许你想深入思考并规划,愿意支付更多并等待;或者也许你想快速可靠地执行。你需要两者兼备。
Tokenomics 现在是热门话题,有很多降低成本和最大化价值的选项。本文的主要观点是,在 2 个具有不同配置的模型上设置几个不同的 agents 并自己路由任务真的非常简单。这是最简单的起步方式。
如果你觉得这篇分析有用,请查看我们之前的文章 5 things every AI engineer should know about agent sandboxes。关注 @GoogleCloudTech 和 @zeroasterisk 获取更多来自开发一线的深度剖析。





