Skip to content

附录 C:性能基准参考

本附录提供常见 Claude Code 任务类型的典型 token 用量、成本估算和性能特征参考数据。所有数字均为近似值,代表真实开发工作流中观察到的典型范围。


按任务类型划分的 Token 用量

Token 计数代表完成一项任务的总 token 数(输入 + 输出),包括 context 累积。实际用量因代码库大小、CLAUDE.md 长度和对话历史而存在显著差异。

探索与理解类任务

任务典型 Token 范围备注
解释单个 100-200 行文件3,000–6,000一次文件读取 + 解释
理解一个模块(5-10 个文件)10,000–25,000多次文件读取、交叉引用
绘制完整子系统架构图(20+ 个文件)30,000–80,000深度探索;建议用子 agent 隔离
回答关于某个函数的问题1,500–4,000定向读取
端到端解释陌生代码库50,000–150,000范围极广;计划压缩 context
Git 日志分析(最近 50 次提交)5,000–15,000随提交信息长度变化

代码编写类任务

任务典型 Token 范围备注
为某个函数编写单元测试2,000–5,000一次读取 + 生成
实现简单工具函数1,500–4,000通常无需读取文件
实现 CRUD 接口(标准模式)5,000–15,000读取 schema + 现有处理器
实现中等规模功能(3-5 个文件)15,000–35,000多次读取、多次写入
实现复杂功能(10+ 个文件)40,000–100,000考虑用子 agent 分解
为一个模块编写完整测试套件10,000–30,000模块读取 + 测试生成
将文件迁移到新 API/库5,000–20,000取决于文件大小和库复杂度

Bug 修复类任务

任务典型 Token 范围备注
修复简单 bug(已提供错误信息)3,000–8,000定向文件读取
调试复杂多文件问题20,000–60,000探索密集;context 很快填满
追踪性能问题15,000–50,000取决于分析深度
修复失败测试(原因不明显)5,000–20,000测试文件 + 相关源文件
修复安全漏洞10,000–30,000安全分析 + 多个文件

代码审查与分析类任务

任务典型 Token 范围备注
审查小型 PR(1-3 个文件)5,000–12,000Diff + 文件 context
审查中型 PR(5-10 个文件)15,000–35,000较大 diff + 跨文件分析
审查大型 PR(20+ 个文件)40,000–100,000考虑用子 agent 审查
模块安全审计15,000–40,000模块内所有文件 + 分析
性能审计10,000–30,000代码 + 查询分析
依赖漏洞扫描5,000–15,000package.json + npm audit 输出

自动化与脚本类任务

任务典型 Token 范围备注
编写 shell 脚本2,000–6,000通常无需读取文件
创建 CI/CD 工作流文件3,000–8,000若有现有配置则读取
配置 GitHub Actions 工作流4,000–10,000
批量重命名/重构(10 个文件)10,000–25,000并行方式更高效
为单个文件添加类型注解3,000–8,000取决于文件大小
为模块生成文档5,000–15,000模块读取 + 文档生成

成本估算

以下估算基于 2025 年初 Anthropic API 的近似定价。订阅计划(Pro、Max)按固定费率收费,此处数字不适用于订阅用户——仅反映 API(按量付费)的使用成本。

定价档位(近似值,以实际为准):

模型输入 token(每百万)输出 token(每百万)缓存读取(每百万)
Claude Haiku 4.5~$1~$5~$0.10
Claude Sonnet 4.6~$3~$15~$0.30
Claude Opus 4.6~$5~$25~$0.50

Prompt 缓存是自动的——Claude Code 会缓存 CLAUDE.md、系统提示和其他稳定内容。缓存读取费用约为正常输入价格的 10%,在长 session 中大量复用相同 context 时可显著降低成本。

典型任务成本(Sonnet,近似值):

任务预估成本
快速提问 / 解释单个函数$0.01–$0.05
编写单元测试$0.03–$0.10
实现 CRUD 接口$0.10–$0.30
实现中等规模功能$0.30–$0.80
调试复杂问题$0.40–$1.50
完整 PR 审查(大型 PR)$0.80–$2.50
架构规划 session$1.00–$4.00

模型选择的成本影响: 使用 Opus 4.6 与 Sonnet 4.6 执行同一任务,每 token 成本约相差 1.7 倍。但 Opus 会话因更深度的推理往往消耗更多 token,实际成本差异通常在 2-3 倍。对于 Sonnet 能产出满意结果的任务,一个月高强度使用的成本差异仍然可观。


速度基准

延迟主要由输出长度决定。首 token 时间通常为 1-3 秒,完整响应时间取决于输出长度。

任务典型总耗时(Sonnet)
简短解释3–8 秒
编写一个函数5–15 秒
编写一个测试文件10–30 秒
实现中等规模功能30–120 秒
大型重构(10+ 个文件)2–8 分钟
复杂调试 session5–20 分钟(交互式)

并行 agent 加速效果:

对于独立任务,运行 3 个并行子 agent 相比顺序执行可提供约 2.5–3 倍的速度提升(含编排开销)。对于可完全并行化的任务(如审查 30 个文件),并行执行能显著减少实际等待时间。


Context 窗口参考

Claude 各模型有不同的 context 窗口大小。截至 2026 年初:

模型Context 窗口备注
Claude Haiku 4.5200,000 tokens标准
Claude Sonnet 4.6200,000 tokens标准
Claude Opus 4.6200,000 tokens标准
Claude Opus 4.6(1M)1,000,000 tokensMax/Team/Enterprise 自动启用;可通过 CLAUDE_CODE_DISABLE_1M_CONTEXT=1 禁用

200,000 tokens 看似很大,但实际上比预期填满得更快:

内容近似 Token 数
1,000 行 TypeScript~6,000 tokens
一个 CLAUDE.md(200 行)~1,500 tokens
100 条对话消息~20,000–60,000 tokens
完整测试套件输出(200 个测试)~15,000–30,000 tokens
大型 PR diff(500 行变更)~10,000–20,000 tokens

持续高质量输出的实际上限: Claude Code 通常在 context 窗口容量的 60-70% 以内保持高质量输出。超过这个比例后,质量开始出现可感知的下降;超过 90% 后,下降较为明显。

对于 200K 窗口,这意味着:

  • 舒适工作区间:最多约 130,000 tokens
  • 质量开始下降:130,000–180,000 tokens
  • 应压缩或清空 context:超过 180,000 tokens

基准对比:子 Agent vs 顺序处理

对于涉及大量文件的任务,使用子 agent 能带来显著的性能优势:

场景:审查 10 个文件的安全问题

方式实际耗时消耗的主 Context质量
顺序处理(全在主 context 中)3-5 分钟~30,000-50,000 tokens后期文件质量下降
每文件一个子 agent(并行)1-2 分钟~5,000 tokens(仅摘要)全程保持一致

场景:实现需要大量代码库探索的功能

方式实现后 Context 占用可用于迭代的 Context
全在主 context 中探索80,000-120,000 tokens有限
用子 agent 探索,摘要返回主 context20,000-30,000 tokens充裕

在拥有大量相关文件的大型代码库中,将探索任务委托给子 agent 的效率提升最为显著。


降低 Token 消耗的技巧

以下习惯可在典型工作流中减少 30-60% 的 token 用量:

  1. 明确指定要读取的文件。 "读取 src/auth/session.ts,特别是 refreshToken 函数",而不是"读取 auth 模块"。

  2. 在不相关任务之间使用 /clear 开始新任务前清除 30,000 tokens 的无关对话,在 API 计划下可节省真实的成本。

  3. 主动压缩 context。 在 context 达到 50% 时压缩,比等到 90% 再压缩能产生更好的摘要。

  4. 用子 agent 处理探索任务。 一个读取 20 个文件的子 agent 消耗的总 token 数相同,但可以将其中 80% 的 token 隔离在主 context 之外。

  5. 保持 CLAUDE.md 简洁。 CLAUDE.md 的每一行在每次 session 开始时都会消耗 token。一个 400 行的 CLAUDE.md 每次 session 可能消耗约 3,000 tokens——每月 100 次 session 就是 30 万 tokens 的纯开销。

  6. 避免重复读取未变更的文件。 如果 Claude 在本次 session 中已读取过某个文件,直接引用其中的信息,而不要要求 Claude 重新读取。

  7. /btw 进行快速查询。/btw 浮层中回答的快速参考问题,不会消耗任何主 context token。

Released under CC BY-SA 4.0.