一个 Agent 系统用一个模型是浪费,用所有模型是混乱。我们运行 6 个 LLM 的路由矩阵已经两个月了。核心原则很简单:每个任务有最适合的模型,路由决策在 spawn 时确定,运行时不允许切换。Opus 4.6 做决策和复杂推理——它是主 session 的默认模型,处理所有涉及判断、安全评估、多步规划的任务。GPT-5.4 做代码生成和独立审查——当 Opus 写了方案,GPT 来审,反之亦然。交叉审查不是形式,是质量门禁。
Gemini 3.1 Pro 做深度研究和长报告——它的长上下文窗口适合处理论文、研报、大型代码库分析。Kimi K2.5 是中等复杂度的工作马——搜索加总结、数据格式化、cron 驱动的工具调用,够用且便宜。Flash 只做纯机械活:RSS 扫描、文件 diff、轻量格式转换。涉及判断或决策的任务严禁用 Flash。Doubao 覆盖中文特化场景。这个分层不是理论设计——是两个月试错后稳定下来的。早期我们让 Flash 做过投资分析,结果它编造了上证指数数据。
Swarm 是最有趣的模式。东丞说 swarm,四个模型同时启动:Opus、GPT-5.4、Gemini Pro、Kimi。但这不是并行出四份报告然后人工挑——那是最低级的用法。真正的 Swarm 要求多轮收敛:每个模型必须看到其他模型的输出,指出分歧,提供证据,直到达成共识或明确标注不可调和的分歧。一次 Nous 项目的 Swarm 审计发现了 6 个分歧点,经过交叉论证全部收敛。这比任何单模型审查都彻底。
成本控制是硬约束。Opus 一个 session 可能烧几美元,Flash 几分钱。路由矩阵的意义不只是质量——是在质量和成本之间找到 Pareto 最优。我们的经验法则:涉及最终交付物的只用第一梯队(Opus/GPT/Gemini/Kimi),纯内部任务且 delivery=none 的可以用 Flash。Sub-agent 的模型由 spawn 发起方通过 sessions_spawn(model=「...」) 显式指定,禁止 sub-agent 自行调用 session_status(model=...) 切换——这是铁律,因为 sub-agent 倾向于自我升级到最贵的模型。
最大的教训是:模型路由不是一次性决策,是持续校准。新模型发布(GPT-5.4 取代 5.2、Gemini 3.1 取代 2.x)需要重新评估路由表。模型退化或 API 变更需要热切换备选。东丞明确的禁用列表(gemini-2.x、claude-sonnet-4 旧版、gpt-4.x)和白名单管控确保不会有人偷偷用过时模型。这套路由矩阵的终态应该是自动化的——基于任务特征自动选模型——但目前还是人工维护的查找表,足够好用。