三模型的角色与价格(2026-05 行情)
| 模型 | 输入价/1M tok | 输出价/1M tok | 强项 | 弱项 |
|---|---|---|---|---|
| Claude Opus 4.7 | $15 | $75 | reasoning / 长上下文 / agent | 单次成本高 |
| GPT-5.5 | $10 | $40 | coding / 函数调用 / 速度 | reasoning 略弱 |
| Claude Sonnet 4.6 | $3 | $15 | 性价比 + 中等任务 | 复杂 reasoning 较弱 |
| DeepSeek V4 | $0.3 | $1.5 | 性价比 + 中英文一般任务 | 长上下文 + agent 弱 |
| GPT-5-mini | $0.2 | $0.8 | 极便宜 + 分类任务 | 任何复杂任务都差 |
(以上为公开报价,中转方一般有 10-30% 折扣)
中转方接入
主路 + 备路两个 endpoint 配置:
PRIMARY_BASE: https://api.anthropic.com (或官方 OpenAI)
RELAY_BASE: 中转方 base_url
中转方好处:多模型一个 key 调全部 + 用量统一计费 + 风控替代。具体可以参考多模型统一计费的 API 网关类方案(详见末尾段)。
路由落地的六个环节
1. 任务分类
type TaskType =
| "simple_qa" // 简单问答(< 200 token 回复)
| "summarize" // 摘要 / 提取
| "complex_qa" // 复杂问答 / 多步推理
| "code_generation" // 代码生成
| "code_refactor" // 代码重构 / debug
| "long_doc" // 长文档处理(> 10K token)
| "agent_loop"; // Agent 多步任务
function classifyTask(req: APIRequest): TaskType {
const tokenCount = estimateTokens(req.messages);
const lastUserMsg = req.messages.at(-1).content.toLowerCase();
if (tokenCount > 10000) return "long_doc";
if (req.tools && req.tools.length > 0) return "agent_loop";
if (/代码|code|refactor|debug|implement/.test(lastUserMsg)) {
return lastUserMsg.includes("refactor") ? "code_refactor" : "code_generation";
}
if (/总结|摘要|summarize|extract/.test(lastUserMsg)) return "summarize";
if (tokenCount < 500 && lastUserMsg.length < 100) return "simple_qa";
return "complex_qa";
}
2. 路由规则表
const ROUTING_TABLE: Record<TaskType, ModelChoice> = {
simple_qa: { primary: "deepseek-v4", fallback: "gpt-5-mini" },
summarize: { primary: "claude-sonnet-4-6", fallback: "deepseek-v4" },
complex_qa: { primary: "claude-opus-4-7", fallback: "gpt-5-5" },
code_generation: { primary: "gpt-5-5", fallback: "claude-opus-4-7" },
code_refactor: { primary: "claude-opus-4-7", fallback: "gpt-5-5" },
long_doc: { primary: "claude-opus-4-7", fallback: "claude-sonnet-4-6" },
agent_loop: { primary: "claude-opus-4-7", fallback: "gpt-5-5" },
};
3. 用户层级覆盖
function getRoute(req: APIRequest, user: User): ModelChoice {
const taskType = classifyTask(req);
const base = ROUTING_TABLE[taskType];
// 免费用户强制降级
if (user.tier === "free") {
return {
primary: cheapestEligible(taskType),
fallback: "deepseek-v4",
};
}
// 企业用户允许显式选
if (user.tier === "enterprise" && req.model_preference) {
return {
primary: req.model_preference,
fallback: base.primary,
};
}
return base;
}
4. 调用 + Fallback
async function routeRequest(req: APIRequest, user: User): Promise<Response> {
const { primary, fallback } = getRoute(req, user);
try {
return await callModel(primary, req);
} catch (e) {
if (e.status === 503 || e.status === 429 || e.code === "timeout") {
console.warn(`Primary ${primary} failed, falling back to ${fallback}`);
try {
return await callModel(fallback, req);
} catch (e2) {
// 最后兜底:中转
return await callModel("relay-deepseek-v4", req);
}
}
throw e;
}
}
5. 用量记录
function logUsage(user: User, model: string, usage: TokenUsage) {
// 写入 Langfuse / Helicone / 自建数据库
db.logUsage({
userId: user.id,
timestamp: Date.now(),
model,
inputTokens: usage.input_tokens,
outputTokens: usage.output_tokens,
cost: estimateCost(model, usage),
});
// 实时聚合到 user_monthly_cost 表
redis.incrbyfloat(`cost:${user.id}:${currentMonth()}`, estimateCost(model, usage));
}
6. 实时告警 + 调整
async function checkAndAlert(user: User) {
const monthCost = await redis.get(`cost:${user.id}:${currentMonth()}`);
if (user.tier === "free" && monthCost > 0.5) {
// 强制路由到最便宜
await redis.set(`force_cheapest:${user.id}`, true);
notifyUser(user, "免费档已到达成本上限,后续走 DeepSeek");
}
if (user.tier === "pro" && monthCost > user.arpu * 0.3) {
// 警告:成本过高
alertChannel("slack", `User ${user.id} cost > 30% ARPU`);
}
}
实测成本对比(月 5 千万 token)
| 模式 | Claude 4.7 占比 | GPT-5.5 占比 | DeepSeek V4 占比 | 月成本(美金) |
|---|---|---|---|---|
| 全 Claude 4.7 | 100% | 0% | 0% | 1,500-2,000 |
| 全 GPT-5.5 | 0% | 100% | 0% | 1,000-1,300 |
| 混合(我们的路由) | 30% | 30% | 40% | 700-900 |
| 全 DeepSeek | 0% | 0% | 100% | 150-250(质量明显下降) |
「混合」节省 50-60% vs 全 Claude 4.7,质量损失 < 10%。
常见失败原因
1. 任务分类太粗糙
症状:简单 QA 也用 Claude 4.7,月成本居高不下。
修复:细化 task type 到 10+ 类,引入 GPT-5-mini 做二级分类(成本 < $5/百万次)。
2. Fallback 没限速
症状:主路挂时全部任务砸到 fallback,fallback 也挂,雪崩。
修复:每个模型单独限速 + 漏桶,优先级低任务直接拒绝。
3. 用户层级权重没动态调整
症状:免费用户用最贵模型,付费用户用便宜模型,营收倒挂。
修复:Step 6 自动监控成本占 ARPU 比例,超阈值强制降级。
4. 没监控每模型质量
症状:DeepSeek V4 某天质量下降但路由仍发流量过去,客户投诉激增。
修复:每模型独立质量指标(用户差评率 / LLM-as-judge 得分),每模型独立熔断。
上线后的安全设置
Prompt 注入防御
不同模型对 prompt 注入抵抗力不同。复杂场景统一通过中间过滤层处理,避免模型直接暴露。详见 Prompt 注入防御成本。
多模型一致性测试
不同模型输出格式差异(JSON schema / 字段名 / 序列化方式)可能让前端崩溃。生产前对每个 prompt + 每个模型组合都测试一遍。
Secret 隔离
每模型 / 每中转 API key 独立存 Secret Manager,不要混在一个 env。轮换时单独处理。
跨地区使用 / 旅行
团队成员在不同地区(中国 / 越南 / 葡萄牙)开发时,Claude / GPT 官方 API 在亚洲访问延迟与稳定性差异大。建议:开发环境统一接入主推 GPT-5.5 / Claude 4.7 的低价 API 中转 作为开发期 endpoint,生产再切官方 + 中转双路。
多模型路由 Claude GPT DeepSeek的落地条件
多模型路由 Claude GPT DeepSeek最怕把法律主体、收款工具和产品代码混成一个问题。动手前看清入口位置、配置差异和失败提示,金额较大或涉及税务时应交给专业顾问处理。
一个人运营时可以用表格压住复杂度:负责人、后台入口、到期日、费用来源和回滚动作各占一列,避免换服务商时才发现资料缺口。
涉及 Stripe、公司注册、税表或签证的内容,只能作为操作参考。当前页面没有覆盖你所在司法辖区的特殊规定时,不应把它当成法律或税务意见。
| 项目 | 看什么 | 不宜继续的信号 |
|---|---|---|
| 入口位置 | 当前后台、日志或设置页里能直接看到的字段 | 页面提示和手头资料对不上 |
| 配置差异 | 费用、权限、地区或设备造成的实际影响 | 已经影响付款、审核、生产环境或家庭使用 |
| 失败提示 | 回退入口、旧配置、官方支持材料 | 找不到回滚方式,或责任人无法确认 |