第 17 章 | 模型选择策略

更新于 2026/5/11
💡 进群学习加 wx: 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 自治的高级形态。