Anthropic详解Claude Code省钱方法:别让上下文白烧Token

Anthropic详解Claude Code省钱方法:别让上下文白烧Token

N
News Editor
2026-08-16 00:05:10
Anthropic发布博客,集中说明Claude Code的成本结构与控制办法,给出6条降低 token 开销的具体建议,包括及时 /clear、固定模型与推理强度、使用 @ 引用文件、为高输出命令加静默参数、在缓存有效期内执行 /compact,以及把大输出任务交给子 Agent。博客还解释了输入与输出 token 的计价差异、提示缓存的工作方式与失效场景,并列出 Opus 5、Sonnet 5、Haiku 4.5 的定价。

Anthropic 发布了一篇新博客,主题很直接:别再把 Claude Code 的 token 成本白白烧掉。

这篇文章把 Claude Code 的计费逻辑、缓存机制和上下文膨胀问题拆开讲清楚,并给出 6 条官方省钱建议,目标是让开发者在同样任务下少花一些 token。

Anthropic列出的6条省钱建议

Anthropic 在博客中先给出 6 条做法:

  • 任务做完就执行 /clear。修完一个 bug 后清掉当前对话,避免上一个任务读过的文件和命令输出继续留在后续上下文里。
  • 会话一开始就确定模型和推理强度(effort level)。中途切换会让之前积累的提示缓存失效,整段对话历史需要按全价重新计算。
  • @ 引用文件,不要手动输入路径。这样可以把文件直接附到消息里,减少 Claude 为查找文件而执行额外工具调用的机会。
  • 给高输出命令加 quiet flag。Anthropic 提到,可以在 CLAUDE.md 中加入类似 --reporter=dot 的配置,让测试输出变成几行摘要,而不是几百行详情。
  • 在休息前执行 /compact。如果对话仍在缓存期内,压缩成本只有正常值的十分之一;等缓存过期后再压缩,就要按全价重读一遍再处理。
  • 把大输出任务交给子 Agent。子 Agent 在独立上下文窗口里运行,完成后只把结果传回主对话,中间读取的文件和命令输出不会进入主上下文。

Claude Code的费用从哪里来

按照文中介绍,Claude Code 既可以按 API 用量计费,也有订阅制,月费分为 3 档,从 20 美元到 200 美元。

Anthropic 的测算显示,开发者日均消耗约 13 美元 token,月均支出在 150 美元到 250 美元之间。不过文章也强调,即便是修同一个 bug,提问方式不同,花费也可能相差数倍。

原因之一是,会话每进行一轮,前面所有轮次的内容都会被重新发送。会话越长,每一轮越贵。

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 3

输入token和输出token的差别

Anthropic 把一次请求拆成两个阶段。

第一步是预填充(prefill),也就是模型读取完整请求,包括系统提示词、CLAUDE.md、用户消息,以及之前对话里积累的全部内容。这部分属于输入 token。

第二步是解码(decode),也就是模型逐个生成 token 的过程,其中包括思考内容、工具调用和最终输出文字。这部分属于输出 token。

文中指出,两者的计算方式并不一样。预填充是并行完成的,一次性让 GPU 处理所有输入 token;解码则是串行的,每生成 1 个 token 都要再跑一次模型。以 200 个 token 的回复为例,对应的是 200 次独立运算。

这也是为什么输出 token 的价格会比输入 token 高 5 倍。

模型单价与推理强度共同决定账单

博客给出了几组模型价格:

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 4

  • Opus 5:输入 5 美元 / 百万 token,输出 25 美元 / 百万 token
  • Sonnet 5:输入 2 美元 / 百万 token,输出 10 美元 / 百万 token
  • Haiku 4.5:输入 1 美元 / 百万 token,输出 5 美元 / 百万 token

除了模型单价,另一项变量是推理强度。Anthropic 表示,一个会话里大部分输出 token 都是思考 token,推理强度控制的就是这一部分的数量。强度越高,模型思考越久,输出的思考 token 越多;max 和 low 之间的差距可能达到数倍。

博客给出的建议是,简单任务使用 Sonnet,难度高的任务再切到 Opus,避免为不需要的能力支付更高成本。

提示缓存是成本控制中的关键变量

Anthropic 认为,token 定价体系里另一个影响极大的因素是缓存。

Claude Code 的请求通常都以相同前缀开头,包括系统提示词、工具定义、CLAUDE.md 和对话历史。如果这次请求的前缀与上次逐字节一致,服务器就不需要重新计算,而是直接读取上次的计算结果。

文中给出的数字是:缓存读取的价格只相当于正常输入价格的 0.1 倍,可节省 90%;缓存写入价格更高,最高可达 2 倍,但写入只发生一次,之后每一轮都可以按 0.1 倍读取。

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 5

Anthropic 用一个例子说明这个差异。假设某段对话历史达到 5 万个 token,如果不走缓存,每一轮都要按全价重新读取这 5 万个 token;如果命中缓存,同样的 5 万个 token 只需要十分之一的成本。对一个持续 20 轮或 30 轮的会话来说,累计差距会非常大。

6种会让缓存失效的情况

不过,缓存有一个限制:它要求从请求的第一个字节开始连续匹配。只要中间有一处变化,从变化位置开始,后续缓存都会失效。

Anthropic 列出 6 种常见情况:

  1. /model 切换模型。每个模型的缓存相互独立,从 Sonnet 切到 Opus 后,整段历史要按 Opus 的价格重新预填充。
  2. /effort 切换推理强度。推理强度本身也是 cache key 的一部分,切换后整段历史都要重新计算。
  3. 开关 Fast mode。效果与前两种类似,会直接导致缓存失效。
  4. /compact 压缩对话。因为对话内容被改写成摘要,旧内容无法继续匹配。
  5. 时间过期。订阅用户缓存保活 1 小时,API 用户默认只有 5 分钟,超时后下一轮要全量重算。
  6. 恢复旧会话。间隔太久后,缓存大概率已经不存在,重新进入通常要按全价计算。

博客的建议是,在会话开始时就锁定模型和推理强度,整个任务过程中尽量不要切换;/compact 则尽量放到准备离开之前执行。

文章还特别提到一个隐藏成本:opusplan 模式会在进入和退出 plan 时切换模型。每切换一次,就会触发一次缓存失效,也就多出一笔全价 prefill 成本。

上下文会持续膨胀,成本接近O(n²)

缓存可以降低重复发送历史的价格,但解决不了另一件事:对话历史本身会越来越大。

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 6

Anthropic 解释说,每次 Claude 读取一个文件,文件内容会被追加进对话;每次运行一个命令,命令输出也会进入对话历史。从加入那一轮开始,这些内容会在后续每一轮中继续被重新发送。

这意味着,到第 40 轮时,会话实际上要再次发送第 1 轮到第 39 轮累计下来的全部内容。文章把这种增长描述为接近平方级别的 O(n²)

Claude Code 设有一个兜底机制:如果命令输出超过 30000 个字符,就不会直接塞进对话,而是写入临时文件,只在对话里保留一句摘要。但 30000 字符以下的输出不会被自动处理。

文中举例说,一个测试框架执行后打印 400 行通过记录,每行几十个字符,总量可能不到 3 万,因此无法触发这个阈值。这 400 行会完整保留在对话历史中,并在后续轮次反复发送。

Anthropic给出的上下文瘦身方法

围绕上下文膨胀,Anthropic 在博客里又给出几种更细的做法。

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 7

@引用文件

与其手动输入路径让 Claude 自己查找,不如直接用 @ 引用文件。这样可以避免 Claude 先用 grep 搜索、再打开多个文件逐一确认;这些搜索和试探一旦发生,都会进入对话历史,增加成本。

给高噪声命令加 quiet flag

博客举例称,可以在 CLAUDE.md 中写入「run tests with npx vitest run <file> --reporter=dot」,让测试命令只输出几行点状结果,而不是几百行详细日志。一次简单配置,后续每个会话都可以减少数百行上下文。

用subagent隔离高输出任务

subagent 在独立上下文窗口中执行任务,结束后只把结果带回主会话,过程中读取的大文件或冗长命令输出不会进入主对话。Anthropic 给出的适用场景包括检查日志异常、浏览大文件等任务,用户只需要结论,不需要完整过程。

任务切换时执行/clear

Anthropic 把 /clear 放在很重要的位置。修完一个 bug 后就清空当前任务相关内容,上一个 bug 的文件、命令输出和中间探索过程如果继续留在上下文里,后面每一轮都会继续占用 token。

如果不想完全清空,也可以使用 /compact。博客提到,一段 10000 到 20000 个 token 的对话,可以被压缩到 1000 到 3000 个 token。

/rewind可以删除跑偏的几轮

博客还提到一个相对冷门但不额外收费的命令 /rewind。如果最后几轮对话跑偏,可以直接删掉这些轮次,而前面的缓存不受影响。

Anthropic详解Claude Code省钱方法:别让上下文白烧Token 8

Anthropic把Token管理视为新的开发能力

文章最后把这些技巧归结为一类新的开发者能力:不是框架或编程语言本身,而是知道该选什么模型、怎样管理上下文、如何保住缓存,以及把推理强度开到什么程度。

Anthropic 认为,这类能力在一年前并不存在,但现在已经会影响同一个任务究竟花 3 美元还是 30 美元。

文中还提到,Anthropic 自身有 80% 的代码依靠 AI 编写,代码合并量一年增长 8 倍,基准测试加速 52 倍。在这种使用强度下,如果不控制 token 成本,推理开销会迅速侵蚀预算。

从 Anthropic 这篇博客的表述看,它讨论的不只是几条省钱技巧,而是 AI 编程环境下的一套日常操作习惯:开发者需要知道每一步操作消耗了什么,以及如何让同样的预算完成更多工作。

参考资料为 Anthropic 博客《maximizing the value of your claude code sessions》;本文源自微信公众号「新智元」,作者为「ASI启示录」,MarsBit 编辑署名为「摩西」。

本文最初由 Bit.Fan 发布。 欲了解更多加密货币新闻与市场洞察,请访问 www.bit.fan.
130

免责声明:

本平台展示的市场信息、项目资料与第三方内容仅用于行业信息分享,不构成任何形式的投资建议或收益承诺。

加密资产交易具有较高风险,用户应充分评估自身风险承受能力并独立作出决策,相关盈亏及法律责任由用户自行承担。