一周省下3亿Token,Anthropic工程师的Claude Code缓存指南

marsbit發佈於 2026-05-24更新於 2026-05-24

文章摘要

这篇文章分享了Anthropic工程师通过有效利用Claude Code的Prompt缓存机制,一周内节省超过3亿Token的经验。核心观点是,缓存的Token成本仅为普通输入的10%,因此提高缓存复用率能显著降低使用成本并延长会话额度。 缓存机制依赖“前缀匹配”,分为系统层、项目层和对话层三层。只要会话前缀与已缓存内容一致,Claude即可直接复用,无需重新处理。Claude Code订阅版的缓存有效时间(TTL)为1小时,而API默认为5分钟。 文章强调了几个关键的使用习惯以避免“打断”缓存: 1. 不要让会话空置超过1小时,否则缓存过期,重新开始成本更低。 2. 切换任务时,建议进行清晰的会话交接(如使用自定义的handoff技能总结进度后新建会话),而非使用可能破坏缓存的`/compact`命令。 3. 避免在会话中途切换模型(包括开启“Opus plan”模式),因为不同模型使用独立缓存,切换会导致缓存失效。 4. 大文档应放入Projects中管理,而非反复粘贴进对话,以获得更好的缓存优化。 此外,文章提到Anthropic内部会监控缓存命中率,因为这直接影响服务成本和用户体验。通过理解并遵循这些简单的原则,用户可以在不改变使用习惯的情况下,更高效地利用Claude Code,节省Token消耗。

编者按:很多人使用 Claude Code 时,最直观的感受是 Token 消耗太快、长会话很容易吃额度。但从 Anthropic 工程师的视角看,真正影响成本的,往往不是你写了多少代码,而是系统有没有持续复用已经处理过的上下文。

本文分享的核心,就是如何通过缓存机制节省 Token。作者一周内通过缓存复用了超过 3 亿 Token,单日缓存量达到 9100 万。由于缓存 Token 的成本只有普通输入 Token 的 10%,这意味着 9100 万缓存 Token 实际计费约等于 900 万普通 Token。Claude Code 长会话之所以显得更「耐用」,不是因为模型免费工作,而是大量重复上下文被成功复用了。

Prompt caching 的关键在于「不要打断缓存」。Claude Code 会把系统提示、工具定义、CLAUDE.md、项目规则和历史对话分层缓存;只要后续请求的前缀保持一致,Claude 就可以直接读取缓存,而不是重新处理整段上下文。Anthropic 内部也会监控 prompt cache 的复用率,因为它不仅影响用户额度,也直接关系到模型服务成本和运行效率。

对普通用户来说,不必理解所有底层细节,只需要掌握几个关键习惯:不要让会话空置超过 1 小时;切换任务时做好 session handoff;避免频繁切换模型;大文档尽量放进 Projects,而不是反复粘贴进对话。

这篇文章与其说是在讲一个省 Token 技巧,不如说是在提供一套更接近工程师思维的 Claude Code 使用方法:把上下文当作资产管理,让缓存持续复用,让长会话少做重复计算。

以下为原文:

我这周省下了 3 亿 Token,单日 9100 万,一周超过 3 亿。

我没有改动任何设置。这只是 prompt caching 在后台正常发挥作用。

但当我真正理解了缓存是什么,以及怎样避免把缓存「打断」之后,在同样的使用额度下,我的会话可以持续更久。所以,这里整理一份 Claude Code prompt caching 的 80/20 入门指南,不涉及 API 层面的深度细节。

TL;DR

缓存 Token 的成本只有普通输入 Token 的 10%。9100 万缓存 Token,实际计费大约相当于 900 万 Token。

Claude Code 订阅版的缓存 TTL 是 1 小时;API 默认是 5 分钟;Sub-agent 永远是 5 分钟。

缓存分为三层:系统层、项目层、对话层。

会话中途切换模型会破坏缓存,包括开启「opus plan」模式。

缓存到底怎么算钱?

每一个被缓存的 Token,成本都是普通输入 Token 的 10%。

所以,当我的仪表盘显示某一天有 9100 万 Token 命中了缓存时,实际计费大概只相当于处理了 900 万 Token。这也是为什么和没有缓存相比,长时间使用 Claude Code 时,会让人感觉会话几乎是「免费」延长的。

仪表盘里有两个数字值得重点关注:

Cache create:把内容写入缓存时产生的一次性成本。它会在下一轮对话中开始发挥作用。
Cache read:Claude 从缓存中复用的 Token,比如你的 CLAUDE.md、工具定义、此前的消息等。相比重新作为输入处理,成本便宜 10 倍。

如果你的 Cache read 数字很高,说明你正在有效利用缓存;如果这个数字很低,就意味着你在为同一批上下文反复付费。

Anthropic 的 Thariq 有一句话让我印象很深:「我们实际上会监控 prompt cache 的命中率,一旦命中率过低,就会触发警报,甚至宣布 SEV 级别的事故。」

他还写过一篇很好的 X 文章。当缓存命中率高时,会同时发生四件事:Claude Code 体感更快,Anthropic 的服务成本下降,你的订阅额度显得更耐用,长时间编码会话也变得更现实。

但如果命中率很低,所有人都会吃亏。

所以,双方的激励其实是一致的:Anthropic 希望你的缓存命中率更高,你自己也希望命中率更高。真正会拖后腿的,只是一些看似不起眼、却会悄悄重置缓存的小习惯。

缓存是如何在每一轮对话中增长的?

缓存依赖的是 prefix matching,也就是「前缀匹配」。

不用陷入太深的技术细节,你只需要理解一点:只要某个位置之前的内容和已经缓存的内容完全一致,Claude 就可以复用这部分缓存 Token。

一次全新的会话,大致是这样展开的:

根据 Claude Code 文档,一个全新会话通常是这样运行的:

第一轮对话:还没有任何缓存。系统提示词、你的项目上下文(比如 CLAUDE.md、memory、规则),以及你的第一条消息,都会被重新处理一遍,并写入缓存。

第二轮对话:第一轮中的所有内容现在都已经被缓存。Claude 只需要处理你的新回复和下一条消息。这一轮成本就会低很多。

第三轮对话:逻辑相同。之前的对话仍然保留在缓存里,只有最新的一轮交互需要重新处理。

缓存本身可以分成三层:

来自 Thariq 的 X 文章:

系统层(System layer):包括基础指令、工具定义(read、write、bash、grep、glob)和输出风格。这一层是全局缓存的。

项目层(Project layer):包括 CLAUDE.md、memory、项目规则。这一层按项目缓存。

对话层(Conversation):包括回复和消息,会随着每一轮对话不断增长。

如果在会话中途,系统层或项目层的任何内容发生变化,所有内容都必须从头重新缓存一遍。这就是最「贵」的操作。可以想象一下:你已经聊到第 16 条消息,这时突然改了系统提示词,或者中途停了一个小时,那么从第 1 条消息开始的所有 Token 都要被重新处理一遍。

1 小时和 5 分钟的混淆

这是最容易让人误解的地方。

Claude Code 订阅版:默认 TTL 是 1 小时。

Claude API:默认 TTL 是 5 分钟。你可以付出更高成本,把它提升到 1 小时。
任何计划下的 Sub-agent:永远是 5 分钟。

Claude.ai 网页聊天:官方没有明确记录。可能和订阅版一样,但我还没有确认。

几个月前,很多人抱怨 Claude 订阅额度消耗得太快。当时有人以为 Anthropic 悄悄把 TTL 从 1 小时降到了 5 分钟,而且没有通知用户。但事实并不是这样,Claude Code 的 TTL 仍然是 1 小时。

问题在于,Claude Code 和 API 的文档是分开放的,而这两者本来就是完全不同的东西,于是造成了不少混淆。

如果你在大量运行 Sub-agent 工作流,或者直接使用 API,那么 5 分钟这个数字很重要。但对于 95% 的 Claude Code 用户来说,真正需要关注的,其实只有那个 1 小时窗口。

覆盖 95% 用户的三个习惯

下面这些,是我觉得日常使用中真正有用的部分。

不要暂停太久

如果你已经空闲超过一个小时,之前的内容基本都已经从缓存里过期了。你的下一条消息会重新构建缓存。这种情况下,与其继续恢复一个已经「变凉」的旧会话,不如做一次清晰的交接,然后开启一个新会话,成本通常更低。

切换任务时,直接重新开始

/compact 或 /clear 本来就会破坏缓存,所以不如趁这个节点真正重置一次。

我自己做了一个 session handoff skill,用来替代 /compact。它会总结我们已经完成了什么、还有哪些待定决策、哪些文件最重要,以及接下来应该从哪里继续。然后我执行 /clear,把这份总结贴进去,就可以像什么都没中断一样继续推进。

compact 命令有时候运行得也很慢。而这个 handoff skill 通常不到一分钟就能完成。

在 Claude 聊天里,大文档尽量放进 Projects

Claude.ai 上的缓存机制没有非常详细的官方说明,但 Projects 显然和普通对话线程采用了不同的优化方式。所以,如果你要粘贴很大的文档,最好把它们放进 Project,而不是直接塞进对话里。

哪些操作会悄悄破坏缓存?

有几件事会在没有明显提醒的情况下,把缓存全部重置。

切换模型:因为缓存依赖前缀匹配,而每个模型都有自己的缓存。只要切换模型,下一次请求就会在没有任何缓存命中的情况下,重新读取完整历史。

「Opus plan」模式:这个设置会在规划阶段使用 Opus,在执行阶段使用 Sonnet。我之前在一些 token 优化视频里推荐过它,是有原因的。但需要理解的是,每一次切换 plan,本质上都是一次模型切换,也就意味着要重新建立缓存。从长期看,它仍然有助于延长会话额度,但你需要知道底层到底发生了什么。

会话中途编辑 CLAUDE.md 是可以的:这个修改不会立刻生效,要等下一次重启才会应用。因此,当前正在运行的缓存不会受到影响。

我的免费 Token 仪表盘

我前面展示的截图,来自一个 token dashboard。

这是一个很简单的 GitHub 仓库。你把链接交给 Claude Code,让它在本地 localhost 上完成部署,它就会读取你过去所有的会话记录,而不是从空白状态开始统计。你一上来就能看到每天的 input、output、cache create 和 cache read 数据。

不过有一点需要注意:这个仪表盘统计的是本地设备上的 Token 数据。如果你从台式机切换到笔记本,数字就不会完全一致。每台设备都有自己的一套统计视图。

总结

Prompt caching 是一个可以研究得很深的东西。Thariq 那篇文章讲得比这里更完整,如果你想看全貌,值得去读。

但你不需要完全理解所有细节,才能从中受益。你只需要掌握最关键的 80/20:缓存 Token 比普通 Token 便宜 10 倍;Claude Code 的 TTL 是 1 小时;切换模型会破坏缓存;在任务之间做好清晰交接,通常比让一个旧会话放到「过期」后再硬接着用更划算。

熱門幣種推薦

相關問答

QClaude Code中的Prompt Caching机制主要通过什么方式来帮助用户节省成本?

APrompt Caching通过将已处理的系统提示、工具定义、项目规则和对话历史等内容进行分层缓存。只要后续请求的前缀与缓存内容一致,Claude就可以直接从缓存中读取并复用这些Token,而无需重新处理。被缓存的Token成本仅为普通输入Token的10%,从而大幅降低了使用成本。

Q影响Claude Code缓存复用的主要因素有哪些?请列举至少两点。

A主要影响因素包括:1. 会话空置时间过长:Claude Code订阅版的缓存TTL(生存时间)为1小时,超过此时间缓存会过期,需要重新构建。2. 切换模型:包括切换基础模型和开启‘Opus plan’模式,因为缓存依赖前缀匹配,每个模型有独立缓存,切换会导致缓存失效。

Q根据文章,Claude Code的缓存分为哪三个层次?

A缓存分为三层:1. 系统层:全局缓存,包括基础指令、工具定义和输出风格。2. 项目层:按项目缓存,包括CLAUDE.md、memory和项目规则。3. 对话层:随着每轮对话增长,缓存之前的回复和消息内容。

Q为了有效利用缓存、节省Token,普通用户应养成哪两个关键习惯?

A用户应养成两个关键习惯:1. 不要让会话空置超过1小时,否则缓存过期需重新付费处理。若已超时,建议开启新会话而非恢复旧会话。2. 在切换任务时,做好清晰的会话交接(例如使用自定义的session handoff技能总结进度),然后执行/clear并粘贴总结,这比使用/compact或让旧会话过期更划算。

Q文章中提到‘Cache create’和‘Cache read’两个指标,它们分别代表什么含义?

A‘Cache create’代表首次把内容(如系统提示、项目上下文、第一条消息)写入缓存时产生的一次性处理成本。‘Cache read’代表Claude在后续对话中从缓存中成功复用的Token数量。‘Cache read’数值高,说明缓存复用效率高,成本节省显著;数值低则意味着在为相同的上下文反复付费。

你可能也喜歡

SpaceX交易权限现已开放:WEEX上线SPCXON交易对

2026年6月,SpaceX完成了史上最大规模的IPO,但大量投资者因券商限制、开户障碍和地域壁垒而无法参与。加密货币交易所WEEX推出了解决方案SPCXON/USDT现货交易对。SPCXON是一种基于Ondo代币化股票框架构建的产品,旨在为美国以外的合格交易者提供追踪SpaceX经济收益的途径,以USDT结算,交易便捷,无传统券商门槛。 SpaceX IPO定价为135美元,首日收盘接近161美元,随后一度冲高至225美元,公司估值约1.75万亿美元。看涨理由基于星链收入增长、无可匹敌的发射频率以及星舰里程碑。看跌观点则认为,其估值已达营收的90-110倍,且存在流通股稀少和即将到来的内部持股解锁等风险。 需注意,SPCXON提供的是价格敞口,而非股票所有权,不包含投票权和直接股息。其价格可能相对净资产价值出现溢价或折价,交易者需关注价差。 WEEX平台整合了包括SpaceX、MicroStrategy和Micron在内的多种代币化股权产品,用户可在统一账户内交易加密货币和股权敞口。平台还提供高达400倍杠杆的加密货币期货交易。 WEEX成立于2018年,全球用户超过620万,提供超过1200个现货交易对,并设有1000 BTC保护基金。平台亦提供跟单交易和AI工具等功能。 免责声明:本文内容不构成投资建议。

TheNewsCrypto10 小時前

SpaceX交易权限现已开放:WEEX上线SPCXON交易对

TheNewsCrypto10 小時前

Gate 研究院:加密金融产品掀起“华尔街化”浪潮,是竞争还是融合?

2009年比特币的创世区块暗含对传统金融体系的批判,其理想是建立去中心化、去中介、去银行的点对点金融系统。然而十七年后,比特币现货ETF获批、贝莱德等巨头发行相关产品、CME推出受监管衍生品、RWA(真实世界资产)和代币化国债市场快速增长等现象,显示传统金融正系统性地介入加密资产的发行、定价、托管和分销环节,引发了加密市场是否“华尔街化”的讨论。 文章认为,这并非单方面的吞并,而是加密体系与传统金融的双向融合与互补。加密领域提供无许可开放性、24小时交易和可编程结算,但缺乏合规通道、机构级托管和主流分销网络;传统金融则拥有牌照、信任、资金和渠道,但受限于交易时间、跨境门槛和结算效率。双方正朝彼此的核心优势靠拢。 这种融合体现为两条路径:一是以Gate为代表的加密交易所,逐步从提供代币化美股、CFD差价合约,发展到接入真实股票、港股、韩股交易,成为连接加密账户与传统券商基础设施的前端入口;二是以Robinhood为代表的传统券商,通过收购加密交易所、推出股票代币和建设自有Layer 2,将加密资产和链上代币化产品整合进其平台。两者的共同目标是争夺下一代综合金融账户的入口,让用户在一个界面内交易多种资产。 同时,RWA和链上国债作为资产层的融合正在加速。尽管规模尚小,但代币化国债等产品为链上提供了低波动收益资产,并吸引JP摩根、贝莱德等传统机构参与,测试未来资本市场的底层结算方式。 最终,加密与华尔街并非谁征服谁,而是在共同塑造一个更高效、全球化的统一资本市场。用户未来或将在同一个账户中自由交易比特币、股票、ETF、链上国债等多种资产,体验无缝的跨资产配置。去中心化的理想仍在底层协议中延续,而在应用层,一个融合了双方优势的新金融形态正在形成。

marsbit11 小時前

Gate 研究院:加密金融产品掀起“华尔街化”浪潮,是竞争还是融合?

marsbit11 小時前

交易

現貨

熱門文章

如何購買PEOPLE

歡迎來到HTX.com!在這裡,購買ConstitutionDAO (PEOPLE)變得簡單而便捷。跟隨我們的逐步指南,放心開始您的加密貨幣之旅。第一步:創建您的HTX帳戶使用您的 Email、手機號碼在HTX註冊一個免費帳戶。體驗無憂的註冊過程並解鎖所有平台功能。立即註冊第二步:前往買幣頁面,選擇您的支付方式信用卡/金融卡購買:使用您的Visa或Mastercard即時購買ConstitutionDAO (PEOPLE)。餘額購買:使用您HTX帳戶餘額中的資金進行無縫交易。第三方購買:探索諸如Google Pay或Apple Pay等流行支付方式以增加便利性。C2C購買:在HTX平台上直接與其他用戶交易。HTX 場外交易 (OTC) 購買:為大量交易者提供個性化服務和競爭性匯率。第三步:存儲您的ConstitutionDAO (PEOPLE)購買ConstitutionDAO (PEOPLE)後,將其存儲在您的HTX帳戶中。您也可以透過區塊鏈轉帳將其發送到其他地址或者用於交易其他加密貨幣。第四步:交易ConstitutionDAO (PEOPLE)在HTX的現貨市場輕鬆交易ConstitutionDAO (PEOPLE)。前往您的帳戶,選擇交易對,執行交易,並即時監控。HTX為初學者和經驗豐富的交易者提供了友好的用戶體驗。

930 人學過發佈於 2024.12.12更新於 2026.06.02

如何購買PEOPLE

相關討論

歡迎來到 HTX 社群。在這裡,您可以了解最新的平台發展動態並獲得專業的市場意見。 以下是用戶對 PEOPLE (PEOPLE)幣價的意見。

活动图片