RH
RouterHub AI API 中转站导航与平台推荐
博客

多模型都能用一个 OpenAI 接口吗?Google Cloud 新模型路由的边界与迁移清单

Google Cloud API Gateway 新增模型路由后,Gemini、Claude 和 OpenAI GPT 系列模型可以共用 OpenAI 兼容入口,但统一请求格式不等于完全兼容。本文拆解它能解决什么、哪些差异仍需治理,以及上线前应如何迁移和验证。

muchacha 2026-08-05 02:21:35

正文

多模型都能用一个 OpenAI 接口吗?Google Cloud 新模型路由的边界与迁移清单

接入第二个大模型时,很多团队都会遇到同一组问题:SDK 要不要换,消息格式怎么转,模型名称放在哪里,鉴权、限流和日志又该由谁统一处理?

2026 年 8 月 4 日,Google Cloud 宣布 API Gateway 的模型路由能力进入 Public Preview。它允许应用向一个 OpenAI 兼容入口发送请求,再根据请求体里的 model 字段,把流量转给 Vertex AI Model Garden 中的 Gemini、Anthropic Claude 或 OpenAI GPT 系列模型。网关会在途中完成请求格式转换,应用不必为每个模型硬编码一套后端地址。

这确实降低了多模型接入的门槛,但它没有让所有模型变成完全相同的产品。更准确的理解是:

统一接口解决的是“怎样发出请求”,模型路由解决的是“请求送到哪里”;能力差异、跨云容灾、成本策略和结果一致性仍需要单独治理。

如果你准备把现有 OpenAI 客户端迁到统一入口,下面这些边界比“改一个 base URL”更值得先看清。

新模型路由到底做了什么

Google 的实现把路由规则写进 OpenAPI 3.x 文件。配置主要包含三层:

  1. 后端定义:为 Gemini、Claude 或 GPT 系列模型声明 Vertex AI 端点。
  2. 模型映射:把客户端使用的模型名称映射到具体后端和目标模型。
  3. API 路径:把某个路径绑定到一组路由规则,并指定没有命中时的默认模型。

客户端仍然发送熟悉的 Chat Completions 风格请求:

{
  "model": "claude-opus-4-7",
  "messages": [
    {
      "role": "user",
      "content": "请总结这份变更记录"
    }
  ]
}

API Gateway 检查 model,匹配 OpenAPI 配置里的规则,把请求转换为目标模型所需的原生预测格式,再将响应返回给客户端。如果模型名称没有命中规则,则会使用配置中的默认模型。

因此,业务代码可以从“供应商端点 + 原生请求格式”的组合中解耦出来。模型映射、API Key 校验、配额和总体流量监控也可以集中到入口层管理。

“OpenAI 兼容”不等于“模型完全可替换”

OpenAI 兼容接口的价值很实际:它提供了一套广泛使用的请求外形,很多 SDK 和应用只需调整入口地址与模型名称就能开始迁移。Google Cloud 也已经提供使用 OpenAI libraries 调用其模型的官方路径。

不过,OpenAPI 只负责描述 HTTP API 的路径、操作、参数和响应结构。它能减少调用方式上的猜测,却不会抹平模型语义。即使两个后端都接受 messages,以下差异仍可能影响结果:

  • 支持的角色、内容块和多模态输入不同;
  • 工具调用参数、并行工具调用和结构化输出能力不同;
  • 上下文窗口、最大输出、token 统计方法与缓存规则不同;
  • 安全策略、拒答行为和系统提示词优先级不同;
  • 流式事件格式、错误码、限流响应和重试条件不同;
  • 相同提示词在不同模型上的质量、延迟和单位任务成本不同。

所以,客户端能够成功收到 HTTP 200,只能证明协议链路可用,不能证明模型可无损替换。迁移验收必须继续覆盖工具调用、结构化输出、长上下文、流式中断和错误处理等真实场景。

这不是任意供应商之间的跨云路由

这是此次预览版最容易被标题掩盖的限制。

Google 官方文档明确说明,一个 router 引用的所有模型必须共享同一个主机名,例如 aiplatform.googleapis.com 或同一个区域端点。也就是说,它路由的是 Vertex AI Model Garden 中已经部署的 MaaS 模型。即使目标模型来自 Anthropic 或 OpenAI,流量仍经过 Google 托管的 Vertex AI 入口。

因此,它适合这些情况:

  • 团队的模型访问已经集中在 Google Cloud;
  • 希望在 Gemini、Vertex AI 托管的 Claude 和 GPT 系列模型之间切换;
  • 不想自行部署、扩缩容和维护开源代理;
  • 需要在一个托管入口上统一鉴权、配额和总流量监控。

但如果你的目标是直接在 OpenAI、Anthropic、Google Cloud、其他云平台或自建推理端点之间做跨供应商容灾,这项能力本身还不够。跨主机健康检查、故障转移、供应商级预算和统一用量归因,仍然需要独立的模型网关或控制层。

Public Preview 的六个上线限制

根据 Google Cloud 当前文档,预览版至少有六项约束需要进入架构评审。

1. 只能按模型名称路由

当前只检查请求 JSON 中的 model 字段。它还不能原生按延迟、价格、区域、任务类型、剩余配额或模型健康度动态选择后端。

如果你想实现“普通摘要走低价模型,复杂代码审查走高能力模型,超时后自动降级”,仍需在调用前生成模型选择,或在更上层的网关执行策略。

2. 所有目标模型必须共享主机

单个 router 不能跨不同主机发送请求。这排除了直接跨云、跨供应商原生端点的故障转移,也限制了把自建模型与托管模型放进同一条路由规则。

3. 必须使用 OpenAPI 3.x

Swagger / OpenAPI 2.0 配置不受支持。已有 API Gateway 项目如果仍使用 2.0,需要先迁移规格文件,并核对 Google 扩展字段。

4. 不能在原网关上切换路由模式

文档指出,原先没有启用模型路由的网关不能就地开启;已经启用的网关也不能就地移除该模式。切换时需要创建并部署新的 API config 和 gateway instance。

这意味着迁移应按蓝绿发布设计,而不是直接覆盖生产入口。

5. 同一份规格不能混合两种操作

一份 OpenAPI 规格里的操作要么全部使用模型路由,要么全部使用标准网关路由,不能混搭。团队可能需要拆分 API 规格和入口域名,避免把普通业务 API 与模型入口强行放在一起。

6. 协议和模态仍有限制

当前支持基于 SSE 的响应流,但不支持请求侧流式传输、gRPC、WebSocket 或 Gemini Live;预览版也以文本形式的 OpenAI 兼容 JSON 请求为主。此外,启用模型路由的 API Gateway 目前不支持 VPC Service Controls。

还有一个值得单独防守的预览行为:如果请求缺少 model 字段,网关当前可能不会按预期直接报错。客户端和入口校验都应强制检查该字段,不要依赖默认行为兜底。

一份可执行的迁移清单

第一步:先盘点请求能力,不只盘点模型名称

从生产日志中整理实际使用的功能:

  • Chat Completions 的字段与角色;
  • 工具调用和结构化输出;
  • 文本、图片、音频等输入模态;
  • 流式响应及断线重连;
  • 超时、重试、幂等和取消;
  • token 用量、缓存和成本记录。

把“所有请求都长得像 OpenAI”当作待验证假设,而不是迁移前提。

第二步:建立虚拟模型名

业务代码不应到处出现带版本号的供应商模型 ID。可以定义稳定的虚拟名称,例如:

  • fast-text:低延迟、低成本文本任务;
  • deep-reasoning:复杂推理和代码审查;
  • safe-fallback:主模型不可用时的保守降级。

再由配置把虚拟名称映射到具体版本。这样模型升级、回滚或灰度时,不必批量修改应用代码。

需要注意的是,Google 当前示例使用模型名称进行显式映射;如果要把虚拟名称进一步变成按成本或健康度动态决策的策略,仍需在上层实现。

第三步:为每个目标模型建立契约测试

至少覆盖以下用例:

  1. 普通文本请求与中文输出;
  2. 长输入与最大输出边界;
  3. 工具调用参数是否完整;
  4. JSON Schema 约束是否稳定;
  5. SSE 事件能否被现有客户端正确解析;
  6. 429、5xx、超时和客户端取消如何表现;
  7. token 用量字段能否被计费系统读取;
  8. 安全拒答与敏感内容处理是否符合预期。

契约测试的目标不是让不同模型输出同一句话,而是确保应用依赖的结构、状态与故障语义保持可控。

第四步:用新网关做蓝绿迁移

由于路由模式不能在现有实例上直接开关,应创建新的配置和网关:

  1. 在测试环境部署 OpenAPI 3.x 路由规格;
  2. 先回放脱敏后的代表性请求;
  3. 再让少量生产流量进入新入口;
  4. 对比成功率、P95 延迟、工具调用完成率和单任务 token;
  5. 保留旧入口,直到回滚条件和观测指标通过;
  6. 最后再切换 DNS、客户端配置或上层路由。

第五步:把路由决策和调用结果记在同一条记录里

每次请求至少应记录:

  • 调用方、项目或工作负载;
  • 请求使用的虚拟模型名;
  • 最终目标模型和版本;
  • 路由规则版本;
  • 输入、输出和缓存 token;
  • 首 token 延迟、总耗时和状态码;
  • 重试、降级和最终结果;
  • 供应商或云平台返回的请求 ID。

没有这些字段,多模型入口虽然统一了,成本和故障却会重新变得不可解释。

什么时候选托管路由,什么时候保留独立模型网关

可以用需求边界做一个简单判断。

需求 Google Cloud API Gateway 模型路由 独立模型网关 / 控制层
Vertex AI 托管模型统一入口 很适合 可以
OpenAI 兼容请求转码 内置支持 取决于实现
免维护代理基础设施 优势明显 需要自行或托管运维
按模型名选择后端 支持 通常支持
按价格、延迟、健康度动态路由 预览版不直接支持 通常更灵活
跨云、跨主机故障转移 不支持 可实现
统一跨供应商成本归因 需要补充 可集中实现
WebSocket、双向流、实时语音 当前受限 视实现而定

两者也并非只能二选一。对已经使用 Google Cloud 的团队,托管路由可以负责 Vertex AI 内部的模型选择,上层控制层负责跨云策略、预算、审计和全局容灾。关键是明确每一层的责任,避免出现两套重试、两套 fallback 相互放大的情况。

最后:先统一接口,再验证可替换性

Google Cloud 把模型路由放进 API Gateway,是一个清晰的行业信号:多模型访问正在从业务 SDK 细节变成标准 API 基础设施能力。OpenAI 兼容入口能显著减少接入代码,托管网关也能降低代理运维负担。

但“一个入口”不是终点。真正能让模型安全切换的,是稳定的虚拟模型名、能力契约测试、可观测的路由记录、明确的成本规则和经过演练的回滚路径。

如果你的模型全部来自 Vertex AI Model Garden,这次预览值得测试;如果你需要跨云容灾或按实时成本与健康度调度,则应把它视为路由链路的一层,而不是完整的多供应商控制面。

参考来源