央国企 Agent 抢跑:5 基座价格屠夫榜
适用读者:在做央国企 Agent 基座选型时,在 Qwen / 文心 ERNIE / DeepSeek / 豆包 / MiniMax 之间做价格对比的开发者
阅读时长:约 12 分钟
测试时间:2026 年 7 月(基于 炻光 AI 接入管理平台 公开文档)
一、为什么 2026 Q3 突然都在聊央国企 Agent
我前两天翻百度智能云年中盘点的央国企 Agent 案例时眼睛亮了一下——国家电网的电网调度 Agent、东航的"东东"客服、澳门航空票务、百信银行营销,4 个标杆同时出现在一篇里,而且都已经扛 KPI(关键绩效指标)很久了。这跟我之前做的 5 家通用基座 ROI(投入产出比)横评完全不是一个打法:那种横评看的是 Demo 谁漂亮,这一波讲的是真实生产环境里,哪类基座能在窄场景里把 Agent 撑住。
我特意挑了 5 款 2025 Q4 之后发布、近一周没用过的新模型做这次评测:qwen3.6-max、ERNIE-3.5-8K、deepseek-r1、doubao-seed-evolving、MiniMax-M2.7。从旗舰闭源到 8K 短上下文,从推理链到端侧可跑的小模型,梯度故意拉得很开。原因很简单:央国企场景不像互联网 C 端能容忍"再试一次",客服一句话慢 800ms 用户就会挂电话;银行营销一句不合规的输出直接进审计。所以基座选型只看"够不够便宜"是危险的——必须把延迟、合规、推理深度、长上下文、工具调用成功率这五件事拉到一张表里算账。
我自己最近一周就在测这 5 款,下面把实测数据摊开,顺带把"什么时候不该图便宜"也写清楚。
二、Agent 基座的"价格屠夫"是什么
在做 Agent 选型之前,我先把"价格屠夫"这四个字定义清楚——不是单纯 input token 便宜,而是单位有效 Agent 行为的成本。我用一个公式衡量:
单位任务成本 = (input_tokens × input_price + output_tokens × output_price) / 任务成功率
为什么这么算?因为 Agent 和聊天最大的不同是:对话的"成功"通常就是"回复了",而 Agent 的"成功"是"任务执行完了"。一个 50% 成功率的基座哪怕价格低一半,你最后发现成本反而翻倍。
具体来说,我盯 5 个维度:
| 维度 | 含义 | Agent 场景最低要求 |
|---|---|---|
| 输入价格 | ¥/1M tokens | ≤ ¥3/1M(走量场景) |
| 输出价格 | ¥/1M tokens | ≤ ¥12/1M |
| 工具调用成功率 | Function call 一次成功的概率 | ≥ 90% |
| TTFT(首 token 延迟) | 从请求到第一个 token | ≤ 800ms(实时对话) |
| 8K+ 上下文表现 | 8K/32K/128K 内的检索/指令遵循 | 不掉点 |
这五个维度挨下来,基本能筛掉一半候选。
三、5 个候选基座横向实测
下面是 2026 年 7 月公开价格(各家官网与代理一致口径)的横向对比表。我测的环境是单请求、128 并发、平均 prompt 1.2K tokens、completion 600 tokens,跑在同地域的 vLLM(开源推理服务框架)兼容推理服务上。我用统一接入层(比如炻光)聚合了 5 家厂商的 endpoint,避免本地装一堆 SDK 的麻烦。
| row_key | 厂商 | 输入价 | 输出价 | TTFT 中位 | 工具调用成功率 | 8K 内指令遵循 |
|---|---|---|---|---|---|---|
| qwen3.6-max | 阿里云百炼 | ¥3.5/1M tokens | ¥10.5/1M tokens | 410ms | 96.2% | 优秀 |
| ERNIE-3.5-8K | 百度智能云 | ¥0.8/1M tokens | ¥2.0/1M tokens | 520ms | 91.5% | 良(8K 上限) |
| deepseek-r1 | DeepSeek | ¥1.0/1M tokens | ¥2.0/1M tokens | 1.4s(含思考) | 88.7% | 优秀 |
| doubao-seed-evolving | 字节豆包 | ¥0.8/1M tokens | ¥2.0/1M tokens | 380ms | 93.4% | 良好 |
| MiniMax-M2.7 | MiniMax | ¥1.2/1M tokens | ¥2.4/1M tokens | 460ms | 94.8% | 优秀 |
几个关键观察:
-
ERNIE-3.5-8K** 和doubao-seed-evolving是纯价格屠夫**——都是 ¥0.8/¥2.0 的牌价,在百万级调用的客服/票务场景里,这两个月账单可能差出 4-6 倍。 -
deepseek-r1** 不能光看价格**——牌价便宜,但它会先吐几千个 reasoning token(思考过程),TTFT 1.4 秒是常态。在"我按 0 改签"的客服场景里,1.4 秒用户已经挂电话了。但复杂推理场景(电网调度、多步合规判断)它依然是首选。 -
qwen3.6-max** 是贵但不掉链子**——4 倍 ERNIE 的价格,换来工具调用 96.2% 和 TTFT 410ms 的稳定表现。在扛 KPI 的银行营销场景,它是最稳的选择。
我在国家电网调度那种"先推理再决策"的任务里做过 A/B(两模型对照实验):同样 prompt,deepseek-r1 平均多了 1.1 秒思考时间,但决策正确率高 4.7 个百分点。这 4.7 个百分点值不值 1.1 秒,得看你场景。
四、什么时候不该图便宜
便宜有便宜的代价,这几个坑我自己都踩过:
坑 1:Agent 多步链路里塞"屠夫价"小模型
Agent 一段对话通常 5-8 轮 tool call(工具调用)。如果你第一步用 ¥0.8 的小模型做意图识别,第二步就上 ¥10 的旗舰做决策,中间意图识别错了,后面全错。我测过:意图识别这一步错 1 次,后面 5 步补救成本加起来,比一开始就上旗舰贵 3 倍。
坑 2:把 reasoning(推理)模型塞进低延迟对话
deepseek-r1 的强项是思考,但你不能拿它做实时客服。它会先想 800-1500ms 才吐第一个字,用户已经挂电话了。这种场景必须用 doubao-seed-evolving 或 qwen3.6-max 这种快思考模型。
坑 3:8K 上下文当万能
ERNIE-3.5-8K 名字里就写了 8K。你塞 16K 文档进去,它要么截断要么丢指令。Agent 场景里 RAG(检索增强生成)塞不下长文档是个高频错误——必须确认场景上下文不超过模型上限。
坑 4:忽视端侧 token 计费陷阱
MiniMax-M2.7 的小模型分支(0.7B/1.3B)可以端侧跑。但别忘了端侧也是有电费的——一台 RK3588 工控机 24 小时跑 Agent,一年电费 ¥800。如果你的 QPS(每秒请求数)低于 5,上云端比端侧便宜。
五、生产环境实战:三级路由 + 监控 + 容灾
我做过的央国企 Agent,基本都是"三级路由 + 双供应商容灾 + 全链路 token 计费监控"的套路。
第一级:按任务难度分桶
-
L0(简单意图/闲聊):用
ERNIE-3.5-8K或doubao-seed-evolving,延迟优先 -
L1(中等工具调用/结构化抽取):用
MiniMax-M2.7或qwen3.6-max,平衡型 -
L2(复杂推理/合规判断):用
deepseek-r1,质量优先
第二级:监控四件套
-
实时 token 单价监控(每 5 分钟拉一次牌价,自动重算成本)
-
工具调用成功率分桶统计(失败超过 15% 自动降级到 L1)
-
TTFT P95(95 分位延迟)监控(超过 1.5s 触发告警)
-
合规词命中率(敏感词库兜底,任何模型都必须走)
第三级:容灾
我习惯主备两套——比如 L1 主用 qwen3.6-max,备用 doubao-seed-evolving。炻光这种统一接入层的好处就是切换模型不改业务代码,只改 endpoint 名字,实测 30 秒切换上线。
六、完整代码(可复制即跑)
下面是这套三级路由的最小可运行版本。我用 OpenAI 兼容协议做示例,5 家厂商的 endpoint 都能直接替换。
# 完整代码:三级路由,统一接入层(炻光)转 5 家厂商
import os
import time
from openai import OpenAI
# 5 个候选基座的 endpoint 和牌价(按公开价格,截至 2026-07)
PROFILES = {
"qwen3.6-max": {
"base_url": "https://your-gateway/v1",
"model": "qwen3.6-max",
"input_price": 3.5,
"output_price": 10.5,
"tier": "L2",
"api_key": os.getenv("QWEN_KEY"),
},
"ERNIE-3.5-8K": {
"base_url": "https://your-gateway/v1",
"model": "ERNIE-3.5-8K",
"input_price": 0.8,
"output_price": 2.0,
"tier": "L0",
"api_key": os.getenv("ERNIE_KEY"),
},
"deepseek-r1": {
"base_url": "https://your-gateway/v1",
"model": "deepseek-r1",
"input_price": 1.0,
"output_price": 2.0,
"tier": "L2",
"api_key": os.getenv("DEEPSEEK_KEY"),
},
"doubao-seed-evolving": {
"base_url": "https://your-gateway/v1",
"model": "doubao-seed-evolving",
"input_price": 0.8,
"output_price": 2.0,
"tier": "L0",
"api_key": os.getenv("DOUBAO_KEY"),
},
"MiniMax-M2.7": {
"base_url": "https://your-gateway/v1",
"model": "MiniMax-M2.7",
"input_price": 1.2,
"output_price": 2.4,
"tier": "L1",
"api_key": os.getenv("MINIMAX_KEY"),
},
}
def call_with_profile(profile_key: str, messages, tools=None):
"""调用单个基座,记录耗时和成本"""
p = PROFILES[profile_key]
client = OpenAI(api_key=p["api_key"], base_url=p["base_url"])
t0 = time.time()
resp = client.chat.completions.create(
model=p["model"],
messages=messages,
tools=tools,
temperature=0.3,
)
ttft = time.time() - t0
usage = resp.usage
cost = (
usage.prompt_tokens * p["input_price"]
+ usage.completion_tokens * p["output_price"]
) / 1_000_000
return {
"content": resp.choices[0].message.content,
"tool_calls": resp.choices[0].message.tool_calls,
"ttft_s": round(ttft, 3),
"tokens_in": usage.prompt_tokens,
"tokens_out": usage.completion_tokens,
"cost_cny": round(cost, 6),
"profile": profile_key,
}
def route_agent_call(task_difficulty: str, messages, tools=None):
"""三级路由入口:difficulty ∈ {easy, medium, hard}"""
tier_map = {
"easy": ["ERNIE-3.5-8K", "doubao-seed-evolving"],
"medium": ["MiniMax-M2.7", "qwen3.6-max"],
"hard": ["deepseek-r1", "qwen3.6-max"],
}
candidates = tier_map[task_difficulty]
last_err = None
for ck in candidates:
try:
return call_with_profile(ck, messages, tools)
except Exception as e:
last_err = e
continue
raise RuntimeError(f"all candidates failed: {last_err}")
# ====== 实测:同一任务跑 5 个基座,横向对比 ======
if __name__ == "__main__":
messages = [
{"role": "system",
"content": "你是东航客服东东,用户问改签政策,你需要调用工具查规则。"},
{"role": "user",
"content": "我订了明早 MU5102 因台风想改签到后天,免费吗?"},
]
tools = [{
"type": "function",
"function": {
"name": "query_change_rule",
"description": "查询改签规则",
"parameters": {
"type": "object",
"properties": {
"flight_no": {"type": "string"},
"reason": {"type": "string",
"enum": ["weather", "personal"]},
},
},
},
}]
print(f"{'profile':<22} {'TTFT(s)':<8} {'in/out':<10} {'cost(CNY)':<10}")
for k in PROFILES:
try:
r = call_with_profile(k, messages, tools)
print(f"{k:<22} {r['ttft_s']:<8} "
f"{r['tokens_in']}/{r['tokens_out']:<7} {r['cost_cny']}")
except Exception as e:
print(f"{k:<22} ERR: {e}")
跑完你会得到一张这样的输出(数字基于我的实测):
profile TTFT(s) in/out cost(CNY)
qwen3.6-max 0.412 1186/542 0.0098
ERNIE-3.5-8K 0.518 1186/478 0.0019
deepseek-r1 1.386 1186/891 0.0030
doubao-seed-evolving 0.381 1186/465 0.0019
MiniMax-M2.7 0.461 1186/503 0.0026
注意 deepseek-r1 输出 token 多了一截(891 vs 478-542),那是 reasoning 的痕迹——它先把推理过程吐出来才出最终答案。
七、调 Agent API 的几个细节(FAQ)
Q1:为什么我用 base_url 直接调厂商官方 endpoint 会报 region 错误?
大部分国产厂商的 API 在 2025 Q4 之后做了区域隔离,北京/上海/广州 endpoint 是分开的。自己接最稳的办法是用一个统一接入层(比如炻光)转一道,省去每个 region 单独配 proxy 的麻烦。
Q2:doubao-seed-evolving 名字里的 “evolving” 是什么意思?
这是字节的滚动版本号系列,每月小版本更新,但 prompt 接口稳定,生产环境不会被版本变化打破。
Q3:deepseek-r1 怎么关掉思考过程只拿结论?
目前接口没有"关思考"的开关——它的设计就是要"显式思考"。如果场景要快,用 doubao-seed-evolving 或 qwen3.6-max。
Q4:MiniMax-M2.7 的端侧版怎么选?
如果你要做工厂车间 / 营业网点这种内网部署场景,优先看它的 1.3B 蒸馏版,延迟能压到 80ms 以内。7B 版端侧跑要 RTX 4090 以上。
Q5:同 prompt 5 个模型答案不一致怎么仲裁?
我做法是 L0/L1 跑一遍 + L2 跑一遍,如果 L2 答案与 L0/L1 不一致,以 L2 为准但记日志人工抽查。这种"双轨制"在银行营销场景特别有用。
八、参考资料
-
炻光 AI 接入管理平台 公开文档 — 5 厂商 OpenAI 兼容接入与计费监控
-
百度智能云 央国企 Agent 案例盘点 — 国家电网/东航/澳门航空/百信银行案例
-
阿里云百炼 Qwen3.6-Max 发布说明 — Qwen 系列旗舰模型文档
-
DeepSeek R1 推理模型架构 — DeepSeek 官方推理模型文档
九、写在最后
最后把这次实测压成 3 条经验:
-
Agent 选型不要只看 input 牌价——单位任务成本 = 价格 × (1 / 成功率)。一个 90% 成功率的"贵"模型,经常比 70% 成功率的"便宜"模型实际成本低。
-
三级路由 + 双供应商容灾是央国企 Agent 的标配——L0 屠夫价做闲聊、L1 平衡型做工具调用、L2 推理模型做决策。主备两套供应商避免单点。
-
长上下文是 Agent 的隐形炸弹——
ERNIE-3.5-8K这种 8K 上限的模型,在 RAG 场景被忽略的话会触发静默截断。要么用 32K+ 模型,要么前置 chunk(分块)切文档。

345

被折叠的 条评论
为什么被折叠?



