Appearance
为什么改程序三四个小时,API 消耗的 Token 居然有 1.7 亿多?一个简单的"Model ID"请求,为什么消耗十几万 Token?
答案:Claude Code 每次 API 调用,不只是把你输入的文字发过去。它背后有一套复杂的系统,这些东西加起来才是真正的消耗大头。
6大 Token 消耗来源
1. System Prompt:每次都要发送的"系统介绍信"
| 内容 | Token 消耗 |
|---|---|
| 身份声明和基本规则 | ~500 |
| 任务执行指南(20多条) | ~1500 |
| 工具使用说明 | ~500 |
| 输出格式要求 | ~500 |
| 语气风格规范 | ~500 |
| 总计 | 3,000-3,500 |
如果连接了 MCP 服务器,System Prompt 还会更长。
2. Tool Definitions:每个工具的"使用说明书"
Claude Code 支持几十种工具:Bash、Read、Write、Edit、Glob、Grep、Agent、TaskCreate...
| 项目 | 说明 |
|---|---|
| 每个工具 | 100-300 Token |
| 工具数量 | ~50 个 |
| 总计 | 5,000-15,000 Token |
这还是在你一个工具都没用到的情况下。
3. CLAUDE.md:项目级记忆
| 项目 | Token 消耗 |
|---|---|
| 每次请求都会读取 | 1,000-2,000 |
| 大型项目 CLAUDE.md | 更高 |
4. Global Rules:全局规则集
| 规则类型 | Token 消耗 |
|---|---|
| Claude Code 内置规则 | 14,000-20,000 |
这是 Claude Code 自带的规则,会影响每次 API 调用。
5. 记忆系统:对话上下文
| 记忆类型 | Token 消耗 |
|---|---|
| 工作记忆 | 1,000-2,000 |
| 上下文历史 | 取决于对话长度 |
6. Extended Thinking:推理思考(最大消耗!)
| 模式 | Token 消耗 |
|---|---|
| 简单问题 | 5,000-20,000 |
| 复杂问题 | 50,000-100,000 |
| 超复杂问题 | 200,000+ |
这是消耗最大的部分。Extended Thinking 让你看到 AI 的推理过程,但代价是 Token 消耗剧增。
Token 消耗总结表
| 消耗来源 | 消耗范围 | 是否可控 |
|---|---|---|
| System Prompt | 3,000-3,500 | ❌ 固定 |
| Tool Definitions | 5,000-15,000 | ⚠️ 可优化 |
| CLAUDE.md | 1,000-2,000 | ✅ 可精简 |
| Global Rules | 14,000-20,000 | ⚠️ 可精简 |
| 记忆系统 | 1,000-2,000 | ⚠️ 可清理 |
| Extended Thinking | 5,000-200,000+ | ✅ 可关闭 |
基础消耗:~23,000-39,500 Token(不包含 Extended Thinking)
带 Extended Thinking:~28,000-239,500+ Token
4种降耗方法
方法1:关闭 Extended Thinking
效果:节省 5,000-200,000+ Token
bash
# 关闭 Extended Thinking
claude --no-extended-thinking
# 或在 Claude Code 设置中关闭
Settings → Extended Thinking → Off适用场景:简单任务、调试、不需要看推理过程
方法2:精简 Global Rules
markdown
# CLAUDE.md 中精简规则
## 不要写太多
- 保持简洁
- 只写必要的效果:减少 14,000-20,000 Token
方法3:用 --bare 模式
bash
# bare 模式:最小化系统提示
claude --bare "你的问题"效果:
- 跳过大部分系统提示
- 跳过 Global Rules
- 只保留核心功能
适用场景:简单问答、不需要复杂功能
方法4:设置 Token 预算
bash
# 设置最大 Token 数
claude --max-tokens 10000 "你的问题"效果:强制限制单次消耗上限
降耗效果对比
| 方法 | 节省比例 | 适用场景 |
|---|---|---|
| 关闭 Extended Thinking | 20%-80% | 简单任务 |
| 精简 Global Rules | 15%-25% | 所有场景 |
| --bare 模式 | 50%-70% | 简单问答 |
| 设置 Token 预算 | 取决于设置 | 需要控制成本 |
最佳实践建议
场景1:日常调试
bash
# 关闭 Extended Thinking
claude --no-extended-thinking "帮我看看这个报错"场景2:复杂重构
bash
# 可以开启 Extended Thinking
claude "帮我重构用户认证模块"场景3:简单问答
bash
# 用 bare 模式
claude --bare "这个函数是干什么的"常见问题
Q:一个简单请求到底消耗多少?
A: 基础消耗 ~23,000-39,500 Token,加上 Extended Thinking 后可达 200,000+。
Q:Extended Thinking 有什么用?
A: 让你看到 AI 的推理过程,适合复杂任务,但代价是 Token 消耗剧增。
Q:怎么选择是否开启 Extended Thinking?
A: 简单任务关闭,复杂任务开启。
Q:Token 消耗怎么算钱?
A: 取决于你的 API 套餐。DeepSeek 最便宜,约 1 元/百万 Token。
一句话总结
Claude Code Token 消耗 = System Prompt + Tools + CLAUDE.md + Rules + 记忆 + Extended Thinking。
降耗三板斧:
- 关闭 Extended Thinking(效果最大)
- 用 --bare 模式(简单问答)
- 精简 CLAUDE.md 和规则(长期节省)
