

一个 API 调用所有 LLM · GPT / Claude / Gemini 实战
如何通过统一 LLM API 调用 GPT、Claude、Gemini、DeepSeek、Qwen 等主流模型——涵盖选型策略、代码接入、成本控制与切换方案,附代码示例和能力对照表。
LLM 领域已经裂成至少六七个严肃的模型家族——GPT、Claude、Gemini、DeepSeek、Qwen、Doubao、Kimi、MiniMax、GLM——每一家都有自己的强项、价格曲线和运营上的小脾气。只绑一家的团队,往往下一个季度就在重写接入代码——因为对方涨价、改限流,或者干脆在某个关键能力上掉队了。这篇文章会讲清楚:为什么统一 LLM 网关已经是生产环境的默认姿势、如何为具体任务挑对模型,以及真正的接入代码长什么样。
为什么现在默认要走统一 API
LLM 接入的成本早已不在那次模型调用本身,而在围绕它的胶水代码。每家都有自己的 SDK、鉴权方式、错误模型、限流头、账单后台。乘上五家,接入就变成了你要维护的第二个产品。
多 SDK 的"接入税"
直接对接三家的结果就是:三套鉴权、三套重试策略、三个用量看板、三套线上事故。每次模型更新就会有某个 SDK 要升级。团队通常每季度要扔进去 1-2 个工程师周在纯对接配线上——这些投入对任何业务指标都不贡献一分。
价格风险与供应商风险
LLM 价格一直在动——有的家一次更新直降 80%,有的家突然加一档让你昨天算的成本模型一夜失效。绑死一家就意味着这些波动全由你吞下,而你没有任何切换的杠杆。统一网关把"切"这件事的成本压到改一个配置。
统一网关到底解决了什么
统一 LLM API 把所有厂商折叠到一个 OpenAI 兼容的入口后面。一把 key、一套 SDK、一个账单视图、一个统一设限流和降级的地方。模型选型变成一个字符串参数——今天叫 "gpt-5",明天换 "claude-4-6-sonnet",半夜批量任务切到 "deepseek-v3"。接入代码一行都不用动。
为具体任务挑对模型家族
没有一个模型能在所有榜上都赢。选型的本质是把模型强项匹配到任务形状上。下面这张表是对你在生产里真正会用到的几大模型家族的粗略强项画像——先把它当起点,再拿自己的真实流量去跑评测。
| 家族 | 强项 | 典型用法 |
|---|---|---|
| GPT(OpenAI) | 通用强、工具调用稳、生态最广 | 默认对话、Agent、重工具调用流程 |
| Claude(Anthropic) | 长文写作、细腻推理、安全性 | 撰稿、分析、需要控制语气的内容 |
| Gemini(Google) | 多模态、长上下文、事实性 | 文档问答、图像/视频理解、研究 |
| DeepSeek | 推理强、成本低 | 数学、代码、大量推理类工作负载 |
| Qwen(阿里) | 中文强、多语言有竞争力 | 中文内容、本地化 |
| Doubao(字节) | 中文强、价格优势 | 中文对话、消费级助手 |
| Kimi | 长上下文阅读、文档分析 | RAG 替代、长文摘要 |
| MiniMax | 角色扮演、对话人设温度 | 陪伴类应用、娱乐对话 |
| GLM(智谱) | 均衡通用、中英双语 | 中文质量敏感的通用对话 |
推理与复杂分析
当"长链路思考的正确率"很重要——多步数学、法律分析、代码审阅——你要的是具备深思考行为的模型。Claude、GPT 的推理档位、DeepSeek 都落在这个区域。DeepSeek 特别重要的是它把成本曲线拉了下来,让一年前在经济上做不起来的大批量推理任务变得可行。
编程与开发者工作流
日常编程任务上 Claude 和 GPT 大致平分;DeepSeek 和 Qwen 以显著更低的成本在大规模重构、测试生成这类批量任务上缩小差距。选哪家通常取决于任务更看重"顶格质量"还是"单位预算的吞吐"。
成本敏感、大量低价值调用
分类、打标签、摘要、后台富化——这些几乎不需要前沿模型。把它们路由到便宜一档(DeepSeek、Qwen,或者前沿家族的小号)去做,把贵模型省给面向用户的交互调用。分层路由通常是生产 LLM 应用里最大的单一成本杠杆。
多语言与区域内容
中日韩重度的工作负载里,Qwen、Doubao、GLM、Kimi 在文化细节和习语上稳定超过西方前沿模型。在目标语言上跑一个小评测集比看任何排行榜都更有参考价值。
通过统一 API 接入的代码实战
统一 LLM 网关讲 OpenAI 协议,所有主流 SDK 不改一行就能直接用——只把 baseURL 指向网关即可。下面示例用的是 APIMart 的入口,换任何 OpenAI 兼容网关形状完全一样。
最小可用的对话调用
最小一次调用——带系统提示的单轮补全:
curl https://api.apimart.ai/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5",
"messages": [
{"role": "system", "content": "You are a concise assistant."},
{"role": "user", "content": "Explain vector embeddings in two sentences."}
]
}'
把 "gpt-5" 换成 "claude-4-6-sonnet"、"gemini-2-5-pro" 或 "deepseek-v3",请求体一字不改。这就是统一网关的核心价值。
流式响应
交互型 UI 一定要 token 级流式。OpenAI SDK 原生支持,对接兼容网关时照用:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.APIMART_API_KEY,
baseURL: "https://api.apimart.ai/v1",
});
const stream = await client.chat.completions.create({
model: "claude-4-6-sonnet",
stream: true,
messages: [{ role: "user", content: "Write a haiku about TCP." }],
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}
和直连 OpenAI 相比,只有 baseURL 和 model 两行不同。
结构化 JSON 输出
Agent 流水线几乎都要求结构化返回。主流家族现在都支持 JSON 模式,统一网关把参数对齐了:
const response = await client.chat.completions.create({
model: "gpt-5",
response_format: { type: "json_object" },
messages: [
{ role: "system", content: "Return JSON with fields: sentiment, topic, score." },
{ role: "user", content: "The product arrived late but the support team was amazing." },
],
});
const parsed = JSON.parse(response.choices[0].message.content ?? "{}");
// { sentiment: "mixed", topic: "customer-service", score: 0.7 }
需要更强约束时用 json_schema 响应格式——大部分前沿家族现在都支持,还没支持的模型由网关来兜底。
按场景动态切换模型
统一 API 真正的价值体现在按成本或能力把不同请求路由到不同模型。一个最小的路由器就是这个样子:
function pickModel(task: "chat" | "reasoning" | "bulk"): string {
switch (task) {
case "chat": return "claude-4-6-sonnet"; // 对质量敏感的用户对话
case "reasoning": return "deepseek-v3"; // 便宜且推理强
case "bulk": return "qwen-plus"; // 大规模分类的最低成本档
}
}
const completion = await client.chat.completions.create({
model: pickModel(task),
messages,
});
路由器外的一切保持不变。加一个新模型就是加一个字符串,去掉一个就是删一个字符串——不用换 SDK、不用改鉴权、不用新开账单。
挑 LLM 过去是一次性决策,挑完要和它过一整年。2026 年它是每个月都要重评估的配置项——价格在动、新模型在上。统一 API 把这件事压成一个轻量操作:接入写一次,模型组合持续演进,团队的注意力留在产品上,而不是在厂商的配线上。
去模型市场挑选你想要的模型
在 APIMart 模型市场尝试聊天、图像和视频模型,用统一 API 快速体验模型能力。