← 全部文章

多模态 API 路由架构对比 2026:网关如何在单一端点下处理聊天、图像、视频和 TTS

面向生产环境的对比:OpenRouter、DashScope 和 Gemini 如何通过各自的 API 架构处理多模态路由——聊天、图像生成、视频、TTS 和 Embeddings,附代码示例、定价基准和选型决策矩阵。

· TheRouter

30 秒速答:**如果你需要将所有模态(聊天、图像生成、视频、TTS、STT、Embeddings)统一到一个 API Key 和一个账单下,OpenRouter 是目前最完整的单端点网关。**如果你在中国区构建应用,需要 Qwen 模型加上 CosyVoice TTS 加上 Wanx 图像生成,DashScope 能在一个阿里云账户下提供最广泛的原生多模态覆盖——但采用的是分离的任务专用 API,而非统一端点。Gemini 走了第三条路:它不聚合第三方模型,而是通过内置工具(代码执行、计算机使用、Google 搜索)扩展自己的聊天端点,模糊了"模态"和"能力"的边界。我们认为生产系统不应该把所有模态强行塞进一个网关。按工作负载分别路由文本和图像生成,然后用 TheRouter 在各个 provider 之间统一计费和故障转移。

速览对比表

网关支持模态端点架构OpenAI 兼容多 Provider最适合
OpenRouter聊天、视觉、图像生成、视频生成、TTS、STT、Embeddings单一 base URL(/api/v1)。聊天走 /chat/completions;图像/视频/音频/Embeddings 在同一 base URL 下各有专用端点。是——OpenAI SDK 直接替换是——70+ provider、400+ 模型一个 API Key 搞定跨 provider 的所有模态
DashScope聊天、视觉、图像生成 (Wanx)、视频生成 (Wan)、TTS (CosyVoice)、STT、Embeddings分任务类型端点。聊天用 OpenAI 兼容 /compatible-mode/v1/chat/completions;图像/视频/TTS/STT 使用 DashScope 原生 API,请求格式各不相同。部分——聊天兼容;媒体端点不兼容有限——主要是阿里/Qwen 模型,外加 DeepSeek、Kimi、GLM 等中国区多模态全栈,一个阿里云账户统一计费
Gemini API聊天、视觉、代码执行、计算机使用、Google 搜索、Managed Agents单一 generateContent / streamGenerateContent 端点。额外模态作为请求中的"内置工具"声明,而非独立端点。否——原生 Gemini 格式;有 OpenAI 兼容层但覆盖有限否——仅 Google 模型Google 原生技术栈,内置工具扩展(计算机使用、代码执行)

OpenAI 兼容指供应商提供一个 chat-completions 接口,其请求与响应结构与 OpenAI API 契约足够接近——只需替换三个值(API key、base URL、模型名),原来的 OpenAI SDK 调用即可直接工作。最小实践面是POST /v1/chat/completions 带 messages、model, 并返回 OpenAI 形式的流式响应。

各网关如何路由多模态请求

OpenRouter:一个 base URL,模型字符串决定模态

OpenRouter 提供单一 base URL(https://openrouter.ai/api/v1),通过改变模型字符串和端点路径来切换模态。他们 2026 年 7 月的博客文章"Every Modality Through One API"详细说明了架构:文本/聊天、视觉输入、PDF 和音频输入都走 /chat/completions,通过消息数组中的不同内容类型区分;图像生成、视频生成、TTS、STT 和 Embeddings 各有专用端点,但都在同一 base URL 下。

关键点在于路由控制——故障转移、provider 偏好、成本/延迟排序、data_collection: "deny"——在所有模态上行为一致。一个 Embeddings 调用和一个聊天调用使用相同的重试策略。一个 API Key,一份账单。

from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key="sk-or-...",
)

# 聊天补全——同一 base URL
chat = client.chat.completions.create(
    model="anthropic/claude-sonnet-4",
    messages=[{"role": "user", "content": "总结这份文档。"}],
)

# 图像生成——同一 base URL,不同端点
image = client.images.generate(
    model="openai/gpt-image-1",
    prompt="一个路由器将光分成不同波长",
    size="1024x1024",
)

# TTS——同一 base URL,不同端点
speech = client.audio.speech.create(
    model="openai/tts-1",
    input="多模态路由已经到来。",
    voice="alloy",
)

# Embeddings——同一 base URL,不同端点
embedding = client.embeddings.create(
    model="openai/text-embedding-3-small",
    input="多模态 API 路由架构",
)

取舍: OpenRouter 聚合了大量 provider,但自身不托管模型。延迟取决于上游 provider。视频生成是异步的(提交后轮询结果)。并非所有 provider 都支持所有模态——路由前需要检查模型能力。

DashScope:一个阿里云账户下的分任务 API

DashScope(阿里云百炼)采用不同的方式。聊天补全使用 OpenAI 兼容端点 https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions(或更新的工作空间专属域名)。但图像生成(Wanx、Flux)、视频生成(Wan)、TTS(CosyVoice)和 Embeddings 各自使用 DashScope 原生任务 API,请求格式各不相同。

OpenAI 兼容层覆盖 Qwen 系列、Qwen-VL、Qwen-Coder、Qwen-Omni、DeepSeek、Kimi、GLM 和 MiniMax 的聊天。但当你需要图像生成或 TTS 时,需要切换到不同请求格式的 DashScope 原生端点。一个 API Key 和一个计费账户仍然覆盖所有内容,但代码路径分岔了。

from openai import OpenAI
import dashscope

# 聊天——OpenAI 兼容端点
client = OpenAI(
    api_key="sk-...",
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
chat = client.chat.completions.create(
    model="qwen-plus",
    messages=[{"role": "user", "content": "解释多模态路由。"}],
)

# 图像生成——DashScope 原生 API(不同的 SDK,不同的格式)
from dashscope import ImageSynthesis
result = ImageSynthesis.call(
    model="wanx-v1",
    input={"prompt": "一个路由器将光分成不同波长"},
    parameters={"size": "1024*1024", "n": 1},
)

# TTS——DashScope 原生 API
from dashscope.audio.tts_v2 import SpeechSynthesizer
synthesizer = SpeechSynthesizer(model="cosyvoice-v2", voice="longxiaochun")
audio = synthesizer.call("多模态路由已经到来。")

取舍: 你能获得最广泛的中国 AI 模型覆盖(Qwen、DeepSeek、GLM、Kimi、MiniMax),在一个账户下享受中国区低延迟。但 OpenAI 兼容层仅覆盖聊天——媒体端点需要学习 DashScope 原生 API。如果你从 OpenAI 迁移,只有聊天路径能直接替换。

Gemini:内置工具扩展聊天端点

Google 采用了根本不同的方式。Gemini 不聚合多个 provider,而是通过内置工具扩展自己的 generateContent 端点:代码执行、计算机使用、Google 搜索锚定和 Managed Agents。这些不是带有独立端点的独立模态——它们是聊天请求中的工具声明,模型在生成过程中可以调用。

Gemini API 更新日志指出,计算机使用在 2026 年上线,提供"简化的带意图的操作,内置支持浏览器、移动端和桌面环境"。代码执行在服务端沙箱中运行 Python 并返回内联结果。这些扩展意味着单个 Gemini 调用可以搜索网页、执行代码、与浏览器交互——这些能力在其他网关中需要路由到不同的服务。

from google import genai

client = genai.Client()

# 带内置代码执行工具的聊天
response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="计算 10000 元在 5% 年利率下 10 年的复利",
    config={
        "tools": [{"code_execution": {}}],
    },
)

# 带内置 Google 搜索锚定的聊天
response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="2026 年 7 月最新的 AI API 定价变化有哪些?",
    config={
        "tools": [{"google_search": {}}],
    },
)

取舍: Gemini 的内置工具很强大,但锁定在 Google 模型上。你无法把 Gemini 计算机使用请求路由到 Anthropic 或 OpenAI 的 fallback。虽然有 OpenAI 兼容层,但不暴露内置工具。如果你需要多 provider 故障转移,Gemini 的工具扩展不可移植。

模态覆盖矩阵

模态OpenRouterDashScopeGemini API
文本聊天/chat/completions(OpenAI 兼容)/compatible-mode/v1/chat/completions(OpenAI 兼容)generateContent(原生)
视觉输入/chat/completions 上的 image_url 内容类型通过 OpenAI 兼容端点支持 Qwen-VL原生多模态输入
图像生成专用 /images 端点DashScope 原生 Wanx/Flux APIImagen via Gemini(有限)
视频生成专用 /videos 端点(异步)DashScope 原生 Wan APIAPI 不可用
TTS/audio/speech(OpenAI Audio 兼容)DashScope 原生 CosyVoice APIAPI 不可用
STT / 转录/audio/transcriptionsDashScope 原生 Paraformer APIAPI 不可用
Embeddings专用 /embeddings 端点DashScope 原生 + 部分 OpenAI 兼容embedContent(原生)
代码执行非内置(路由到有工具调用的模型)非内置内置工具
计算机使用非内置(路由到支持 computer-use 的模型)非内置内置工具
网络搜索锚定非内置非内置内置 Google Search 工具
Managed Agents不适用DashScope Managed Agents API(2026 年 7 月)Gemini Managed Agents(2026 年 7 月)

定价对比

多模态定价因模态和 provider 差异显著。聊天 token 定价有据可查;媒体生成定价通常按请求或按秒计费。

模态OpenRouter 方式DashScope 方式Gemini 方式
聊天 token透传 provider 定价,无加价(参见 OpenRouter 定价)按模型按 MTok 定价(参见 DashScope 定价)按模型按 MTok 定价(参见 Gemini 定价)
图像生成按图片,因模型/provider 而异按图片,Wanx 定价(标准约 ¥0.16/张)按图片,Imagen 定价
视频生成按秒,因模型/provider 而异按秒,Wan 定价不可用
TTS按字符或按请求,因模型而异按字符,CosyVoice 定价不可用
Embeddings按 token,因模型/provider 而异按 token,模型专属按 token,模型专属
网关加价无——透传 provider 价格无——第一方定价无——第一方定价

关键的定价差异是结构性的:OpenRouter 在所有模态上透传 provider 定价,无加价。DashScope 和 Gemini 设定各自的第一方价格。对于聊天,这意味着 OpenRouter 的价格等于上游 provider 的价格;对于 DashScope,价格取决于阿里为每个 Qwen 模型设定的数值。

限流

网关限流模型文档
OpenRouter按模型、按账户。免费层限制较低。充值后限制提升。OpenRouter 文档
DashScope按模型 RPM/TPM。因模型和账户级别而异。DashScope 限流
Gemini API按模型 RPM/TPM。免费层限制严格;付费后提升。Gemini 限流

对于多模态工作负载,限流通常按端点和按模型分别计数。聊天的限流和图像生成的限流通常独立计算,但这取决于具体 provider。在设计批处理管道前,请查阅具体端点文档。

选型决策矩阵:你需要 X,选 Y

你需要……选择……原因
所有模态一个 API Key,多 providerOpenRouter唯一在 70+ provider 下通过一个 OpenAI 兼容 base URL 路由聊天、图像生成、视频生成、TTS、STT 和 Embeddings 的网关
中国区多模态全栈(Qwen + CosyVoice + Wanx)DashScope最佳 Qwen 模型覆盖,中国区优化延迟,一个阿里云账户覆盖所有模态
聊天中内置代码执行或计算机使用Gemini API代码执行和计算机使用是聊天端点的内置工具——无需额外接入
聊天 + 视觉的多 provider 故障转移OpenRouter 或 TheRouter两者都支持聊天的 provider 故障转移;TheRouter 还提供跨 provider 统一计费
Managed Agent 编排DashScope 或 Gemini两者均在 2026 年 7 月发布了 Managed Agent API;OpenRouter 不提供 agent 编排
最低成本的 OpenAI SDK 迁移OpenRouter大多数模态使用 OpenAI 兼容端点;换个 base URL 和 API Key 即可

对路由架构的启示

三种方式代表了不同的设计哲学:

  1. 聚合网关(OpenRouter):通过一个 API 将任何模态路由到任何 provider。灵活性最大,但你依赖网关的可用性,且多了一跳。

  2. 平台原生多模态(DashScope):一个云账户覆盖聊天、图像、视频、TTS、Embeddings——但每种模态的 API 接口不同,且局限在阿里巴巴生态内。

  3. 模型原生工具扩展(Gemini):模型本身通过内置工具处理多种"模态"。对 Google 技术栈团队很强大,但跨 provider 不可移植。

对于生产系统,我们认为正确答案通常是组合。在需要多 provider 故障转移的聊天和视觉场景使用聚合网关或 TheRouter。在延迟和区域访问比 provider 多样性更重要的媒体生成场景使用平台原生 API。不要仅仅为了一个 API Key 就把视频生成强行塞进聊天网关。

我们观察到的趋势:团队先用一个网关处理聊天(模型切换频繁),然后为媒体生成添加直连 provider 集成(选定一个模型就固定下来)。网关处理复杂的部分——故障转移、计费、模型退役——而直连集成处理稳定的部分。

相关链接


数据检索日期:2026-07-22。定价、限流和模型可用性变动频繁,请在做生产决策前核实官方 provider 文档。

帮助与联系