教程概述
Token 是使用 Claude Code 的核心成本。本教程将教你如何在保证质量的前提下,最大化效率、最小化成本。
你将学到
- ✅ 模型选择决策框架
- ✅ Subagent 降成本架构
- ✅ mgrep 替代 grep 的优化
- ✅ 模块化代码库的优势
- ✅ 定价参考和成本计算
为什么 Token 优化很重要?
成本结构
pie title 月度成本分解
"输入 Tokens" : 40
"输出 Tokens" : 35
"上下文加载" : 15
"工具调用" : 10
优化收益
| 优化方法 |
Token 节省 |
成本节省 |
| 使用 mgrep |
~50% |
~30% |
| 正确模型选择 |
~40% |
~50% |
| 子代理架构 |
~30% |
~35% |
| 模块化代码 |
~25% |
~20% |
模型选择决策表
三种模型对比
flowchart TD
A[任务类型] --> B{复杂度评估}
B -->|低| C[Haiku]
B -->|中| D[Sonnet]
B -->|高| E[Opus]
C --> F[快速执行<br/>低成本]
D --> G[平衡性能<br/>标准成本]
E --> H[深层推理<br/>高成本]
详细决策表
| 任务类型 |
推荐模型 |
原因 |
相对成本 |
| 文件搜索/探索 |
Haiku |
快速、便宜、足够准确 |
1x |
| 简单编辑 |
Haiku |
单文件、清晰指令 |
1x |
| 文档编写 |
Haiku |
结构简单、格式固定 |
1x |
| 代码审查 |
Sonnet |
理解上下文、捕获细节 |
3x |
| 多文件实现 |
Sonnet |
平衡性能与质量 |
3x |
| PR 审查 |
Sonnet |
需要上下文理解 |
3x |
| 架构设计 |
Opus |
需要全局视角 |
15x |
| 安全分析 |
Opus |
不能遗漏漏洞 |
15x |
| 复杂调试 |
Opus |
需要深层推理 |
15x |
模型选择流程
flowchart TD
A[开始任务] --> B{涉及文件数}
B -->|1-2 个| C{是否安全关键?}
B -->|3-10 个| D[Sonnet]
B -->|>10 个| E{架构决策?}
C -->|是| F[Opus]
C -->|否| G[Haiku]
E -->|是| F
E -->|否| D
D --> H{首次尝试失败?}
H -->|是| F
H -->|否| I[继续]
默认规则
默认使用 Sonnet 进行 90% 的编码任务
升级到 Opus 当:
- 首次尝试失败
- 任务涉及 >5 个文件
- 需要架构决策
- 安全关键代码
降级到 Haiku 当:
- 简单的文件搜索
- 单文件小修改
- 文档更新
- 格式化任务
Subagent 降成本架构
原理
flowchart LR
subgraph 传统方式
A[主代理<br/>Opus] --> B[所有任务]
end
subgraph Subagent 架构
C[主代理<br/>Sonnet] --> D[探索 Haiku]
C --> E[实现 Sonnet]
C --> F[审查 Opus]
end
style A fill:#ffcccc
style C fill:#e8f5e9
成本对比
场景:实现一个新功能
| 方式 |
模型组合 |
Token 消耗 |
相对成本 |
| 单代理 Opus |
Opus 全程 |
100k |
100% |
| 单代理 Sonnet |
Sonnet 全程 |
100k |
33% |
| Subagent 架构 |
Haiku+Sonnet+Opus |
40k+30k+20k |
~30% |
配置示例
# 子代理模型配置
agents:
explorer:
model: haiku
tools: [Read, Grep, Glob]
implementer:
model: sonnet
tools: [Read, Write, Edit, Bash]
reviewer:
model: opus
tools: [Read, Grep]
工作流程
1. Explorer (Haiku) - 探索代码库结构
→ 返回摘要,消耗 ~5k tokens
2. Planner (Sonnet) - 制定实现计划
→ 返回计划,消耗 ~10k tokens
3. Implementer (Sonnet) - 执行实现
→ 返回代码更改,消耗 ~30k tokens
4. Reviewer (Opus) - 质量审查
→ 返回审查结果,消耗 ~15k tokens
总计: ~60k tokens (vs 单代理 Opus 100k+)
mgrep vs grep
为什么 mgrep 更好?
| 特性 |
grep/ripgrep |
mgrep |
| Token 消耗 |
高(返回大量上下文) |
低(智能摘要) |
| 语义理解 |
无 |
有 |
| 结果质量 |
需要人工筛选 |
AI 过滤 |
| 节省比例 |
- |
~50% |
基准测试
在 50 任务基准测试中:
传统 grep:
- 平均 Token 消耗: 8000
- 任务完成率: 70%
mgrep:
- 平均 Token 消耗: 4000
- 任务完成率: 72%
Token 节省: 50%
质量相当或更好
使用方法
# 安装
claude plugin marketplace add Mixedbread-Grep
claude plugin install mgrep@Mixedbread-Grep
# 本地搜索
/mgrep "function handleSubmit"
# 网络搜索
/mgrep --web "Next.js 15 app router changes"
模块化代码库优势
为什么模块化节省 Tokens?
flowchart TD
subgraph 单体代码库
A[大文件 1000+ 行] --> B[需要读取整个文件]
B --> C[高 Token 消耗]
end
subgraph 模块化代码库
D[小文件 100-300 行] --> E[按需读取]
E --> F[低 Token 消耗]
end
对比
| 代码库结构 |
读取策略 |
Token 消耗 |
| 单体 (5个 1000 行文件) |
全部读取 |
~50k |
| 模块化 (20个 200 行文件) |
按需读取 5 个 |
~10k |
最佳实践
✅ 推荐
- 单个文件 ≤ 300 行
- 函数 ≤ 50 行
- 类职责单一
- 高内聚低耦合
❌ 避免
- "上帝类" 1000+ 行
- 深度嵌套
- 过长函数
定价参考
Claude 模型定价(2026)
| 模型 |
输入价格 |
输出价格 |
上下文窗口 |
| Haiku |
$0.25 / 1M tokens |
$1.25 / 1M tokens |
200k |
| Sonnet |
$3.00 / 1M tokens |
$15.00 / 1M tokens |
200k |
| Opus |
$15.00 / 1M tokens |
$75.00 / 1M tokens |
200k |
月度成本估算
场景:全职开发者
pie title 月度 Token 使用分布
"Sonnet 输入" : 35
"Sonnet 输出" : 25
"Haiku 输入" : 10
"Haiku 输出" : 5
"Opus 输入" : 15
"Opus 输出" : 10
估算:
- 日均输入:50k tokens
- 日均输出:30k tokens
- 工作日:22 天
| 模型比例 |
月度成本 |
| 100% Opus |
~$60 |
| 100% Sonnet |
~$25 |
| 混合(推荐) |
~$15 |
Token 优化 Mermaid 图
flowchart TD
A[Token 优化策略] --> B[模型选择]
A --> C[工具优化]
A --> D[架构优化]
A --> E[代码组织]
B --> B1[Haiku: 简单任务]
B --> B2[Sonnet: 标准任务]
B --> B3[Opus: 复杂任务]
C --> C1[mgrep 替代 grep]
C --> C2[禁用未用 MCP]
D --> D1[Subagent 架构]
D --> D2[并行执行]
E --> E1[文件 ≤300 行]
E --> E2[函数 ≤50 行]
style A fill:#e3f2fd
style B fill:#e8f5e9
style C fill:#fff3e0
style D fill:#fce4ec
style E fill:#f3e5f5
最佳实践总结
1. 选择正确的模型
简单任务 → Haiku(节省 90%)
标准任务 → Sonnet(默认选择)
复杂任务 → Opus(按需升级)
2. 使用 Subagent 架构
探索 → Haiku 子代理
实现 → Sonnet 子代理
审查 → Opus 子代理
3. 优化工具使用
搜索 → mgrep(节省 50%)
MCP → 禁用未使用的
Hooks → 自动化重复任务
4. 模块化代码
大文件 → 拆分为小模块
长函数 → 提取为小函数
小结
关键要点
- ✅ 默认使用 Sonnet,复杂任务升级 Opus
- ✅ Subagent 架构可以降低 50%+ 成本
- ✅ mgrep 比 grep 节省约 50% tokens
- ✅ 模块化代码库显著减少读取消耗
- ✅ 定期审计 MCP 和 Plugin 使用
系列导航: