第 17 章 | 模型选择策略
💡 进群学习加 wx: agentupdate
(申请发送: agentupdate)
(申请发送: agentupdate)
第 17 章:模型选择策略
学习目标
按角色配模型,避免"全 opus 烧钱"或"全 sonnet 卡壳"。
三档对比(2026 年 5 月数据)
| 模型 | 输入 | 输出 | 上下文 | 强项 | 弱项 |
|---|---|---|---|---|---|
| Haiku 4.5 | $1/MTok | $5/MTok | 200k | 极快、便宜 | 复杂推理偏弱 |
| Sonnet 4.6 | $3/MTok | $15/MTok | 1M | 性价比之王 | 顶级架构思考有限 |
| Opus 4.7 | $5/MTok | $25/MTok | 1M | 深推理、找不一致 | 5x 贵 |
→ Sonnet 比 Opus 便宜约 5 倍。能用 Sonnet 解决就别用 Opus。
角色匹配公式
flowchart TD
Q["这个角色主要做什么?"]
Q -->|大量执行
反复操作| Sonnet["sonnet
(性价比)"]
Q -->|深度推理
找不一致| Opus["opus
(深思考)"]
Q -->|简单分类
批量处理| Haiku["haiku
(便宜)"]
Sonnet --> SonnetEx["developer / tester /
e2e-tester"]
Opus --> OpusEx["reviewer / architect /
developer-deep"]
Haiku --> HaikuEx["log 分类 / 简单格式化
(本项目暂不用)"]
style Sonnet fill:#bbdefb
style Opus fill:#ffccbc
style Haiku fill:#c5e1a5我们 doc2video 项目的最终配置
| Agent | 模型 | 理由 |
|---|---|---|
| developer | sonnet | 反复实现 task,量大 |
| developer-deep | opus | 卡住升级,需要质疑 spec |
| tester | sonnet | 翻译 Scenario 是机械活 |
| tester-deep | opus | 判断 Scenario 是否可测需要洞察 |
| e2e-tester | sonnet | 黑盒跑命令、看输出 |
| reviewer | opus | 找代码不一致是 opus 强项 |
| architect | opus | 跨组诊断需要全局观 |
成本估算(按真实跑过的项目推算)
一个中等组(5 task)走完整 cycle:
developer (sonnet) 1~2 轮 → ~$0.30
tester (sonnet) 1~2 轮 → ~$0.20
reviewer (opus) 1~2 轮 → ~$0.50
─────────────────────────────────
小计 ~$1.00
升级一次 (3 轮失败 → developer-deep):
+ developer-deep (opus) 1 轮 → ~$0.40
─────────────────────────────────
含升级总计 ~$1.40
→ 我们 doc2video 13 个组、61 task、含若干升级,预计 $15~$30 跑完整个项目。手工开发同样规模 1~2 周 = 至少 $5000 工时——AI 协同便宜 100x+。
升级而非启动就用 opus
flowchart LR
Bad["全程 opus
(5x 成本)"] --> BadResult["每个组都用顶配
简单任务也烧钱"]
Good["默认 sonnet
卡住升 opus"] --> GoodResult["80% 任务便宜跑
难题才烧钱"]
style Bad fill:#ffcdd2
style Good fill:#c8e6c9→ 这就是 Ch 18 要讲的 escalation。
何时下放到 haiku
如果你有这类轻任务:
✅ 把 log 分类成 ERROR/WARN/INFO
✅ 把变量名翻译为驼峰
✅ 简单的 schema 校验
考虑用 haiku 做 micro-agent。doc2video 项目里没这类活——所以我们没用 haiku。
反模式
❌ 全 opus:"以最强模型确保质量"
→ 浪费 80% 的钱在 sonnet 完全够用的任务上
❌ 全 sonnet:"为了省钱"
→ 难题卡死,反而烧更多 token 来回试
❌ 给 reviewer 用 sonnet
→ review 容易变 LGTM,找不出微妙不一致
❌ 给 developer 用 opus
→ 量大、反复跑,浪费贵模型
你现在能做什么
- 给自己项目的每个角色配模型
- 估算项目总成本
- 知道为什么"升级而非启动顶配"
下一章把"升级"机制讲清楚——这是多 agent 自治的高级形态。