当前位置: 首页 > news >正文

蚂蚁二面:怎么省Claude Code缓存,我说了四点:用Subagent、一次性装好MCP、配好claude.md、开1小时TTL。面试官点头,说我有工程深度.

前几天有个粉丝去面蚂蚁,岗位是大模型应用开发,简历上写"熟练使用 Claude Code 进行日常开发"。一面聊项目聊得挺顺利,面试官对他做的 Agent 方案挺感兴趣,追问了好几个细节,他都答上来了。气氛不错,他心里还暗暗松了口气。

然后面试官话锋一转,问了一句:“你 Claude Code 用了三个月了,那你知道怎么省缓存吗?”

这个他背了一些,然后自己呢确实积累了一些实操经验,就直接慢慢说说:“嗯……我平时会用 Subagent 隔离不同模型,MCP 一次性装好不中途加,任务开始前把 claude.md 配齐,还有开 1 小时的 TTL……”

他说的时候其实心里没底,感觉逻辑也不够清晰。但面试官听到第二条的时候就开始微微点头了,等他说完,面试官笑了笑说:“工程深度不错,这几个点很多人用了半年都没总结出来。”

他后来跟我复盘这段的时候说,他自己都不知道答得对不对,但面试官的反应让他意识到——这些看起来不起眼的操作细节,恰恰是区分"会用"和"用得好"的分水岭。

今天就把这四个缓存优化的点展开讲清楚,看完你就知道面试官为什么频频点头了。

说个真事哈。很多人拿 Claude Code 去跑那种比较复杂的任务,然后一看账单,好家伙,高得吓人。但是你问他为啥这么贵呢,他自己也说不清楚。其实问题往往不在于任务本身到底有多重,而在于一些你压根没注意到的操作,把好不容易攒下来的缓存给悄悄清掉了。

那命中率为啥会下降呢?你得先去理解缓存的结构是怎么回事。

1. 缓存的整体结构

每一次请求发送过去的上下文呢,它是从左到右依次排列的。排列顺序大概是这样的:先是工具定义,也就是 Tools 那部分。然后是系统提示词,就是 System。再然后是注入的上下文,比如 claude.md 啊、Skills 列表这些东西。最后才是对话历史,也就是 Messages。

所以说呢,越靠左的内容,越要锁死不动。这一点真的不是建议,而是最基本的原则。

2. 四大"缓存杀手"

这也是我核心框架——他当时就是按这四条来回答的。大家可以记一下,大标题记住就好好

· 第一名:切模型——这个是最狠的

很多人以为切模型嘛,无非就是换个"更聪明"的或者"更便宜"的选项,代价顶多就是回答质量上的一些权衡。但实际上呢,完全不是这么回事。缓存存储的根本就不是文本,而是 Transformer 架构里 Attention 层算出来的那个 K/V Cache,也就是每一层的 Key 和 Value 张量。Opus 和 Sonnet 这两个模型呢,它们的架构不一样,权重也完全不相同,所以它们的 K/V Cache 天然就不兼容。就好比什么呢?就好比你拿一个 Word 文件去用 Pages 打开一样,格式根本就对不上。

所以切模型的真实代价是啥呢?就是你跟 Opus 聊了十万 Token 积累下来的缓存呢,一换回 Sonnet 之后就全部归零了。所有的 Token 都要重新去计算,账单直接从 0.1 倍的基础价飙回到 1.25 倍的全价。这个差距是非常大的。

那真正正确的做法是什么呢?是用 Subagent 把它隔离出去。主对话继续在 Opus 上面跑,K/V Cache 纹丝不动。你需要跑另一个模型的时候呢,就开一个 Subagent 去把活干完,然后输出一段交接消息就行了。Claude Code 自己其实就是这么设计的——Web Search 啊、Explorer 这些子工具呢,它们用的都是 Haiku,主上下文始终保持不动。

这就是那个粉丝回答的第一条,面试官听到 Subagent 隔离模型的时候就开始点头了——因为他一下就听出来这是有实际踩坑经验的人才会总结出来的做法。

· 第二名:装新的 MCP

MCP 工具是挂在 Tools 数组里面的。你新增一个 MCP 呢,就会改变 Tools 的哈希值,下面的 System 和 Messages 全部都会跟着失效。不过这里有个很容易被忽略的细节:MCP 只在 Claude Code 启动的时候读一次,启动之后中途装的 MCP 对当前 Session 是不生效的。那真正的破坏往往出现在什么地方呢?出现在之后的 resume 或者 reload plugin 操作——这两个操作会触发 Tools 数组重新组装,之前积累的缓存就全部作废了。

换句话说呢,装 MCP 本身的问题其实不大,真正的问题是装完之后重载了环境。你想想看嘛,你在一半的工作完成了之后才发现缺少某个工具,这个时候你把它装上再 resume,之前的缓存就彻底白费了。

那正确的做法是啥呢?就是在开始任务之前呢,像做手术前的器械准备一样,一次性把所有需要的 MCP 都装好。磨刀不误砍柴工嘛,这一步耽误的那点时间呢,远比你任务中途重载损失的缓存要小得多。

· 第三名:改 claude.md 或者装新的 Skills

claude.md 本质上就是一条 User Message,排在 Messages 数组的特定 Block 里面。Skills 列表呢则更靠前一些,在 Block 2 的位置。跟 MCP 一样,它们也是只在启动的时候读入的,中途修改对当前 Session 是没有效的。

那真正的问题同样出在 resume 上面。你装完 Skill 再去 Resume 的话呢,Claude Code 就会重新组装 Messages 数组。内容变了,之前的缓存就对不上了,整段 Messages 都要从零开始重建。从直觉上来看呢,这个其实挺违反预期的——你只是加了一个工具而已,为什么要付出全部缓存的代价呢?但这正是线性前缀匹配的本质嘛:任何靠左的变化呢,都会把它右边的所有东西拖入冷缓存。

所以正确的做法是啥呢?就是在任务启动之前呢,就想好需要哪些 Skills、claude.md 里面有没有缺失的关键上下文,一次性都准备好。任务中途去修改这些内容呢,代价往往比你多走几步弯路要大得多。

· 第四名:活干到一半中断超过 5 分钟

这个门槛呢,比大多数人预想的要苛刻一些。默认的 TTL 是 5 分钟,从最后一次缓存命中开始计时,每次成功的命中呢都会重置计时器。只要你保持活跃,缓存就一直活着。但你只要停下来 5 分钟——去喝杯水啊、看看 Claude 返回的结果啊、在纸上推敲一下下一步该怎么做——缓存就没了。下一次请求呢就要重新付全价去写入。

有一点需要特别注意哈:TTL 的行为呢,它会因为认证方式的不同而存在差异。你要是用 Claude 的订阅方案,比如 Max 的话呢,Claude Code 会自动请求 1 小时的 TTL。因为它是按套餐计费而不是按 Token 计费嘛,所以这个更长的 TTL 不会产生额外的费用。但你要是通过 API Key 来访问的话呢,默认 TTL 就只有 5 分钟。很多用 API Key 的开发者呢,以为自己享受的是跟订阅用户一样的缓存窗口,但实际上并不是这样的。

那如果你是用 API Key 跑复杂任务的话呢,应该怎么做呢?应当在任务开始之前手动去开启 1 小时的 TTL。具体操作就是在终端里输入这样一行命令:

export ENABLE_PROMPT_CACHING_1H=1

1 小时 TTL 的写入费用呢确实比 5 分钟版本要高一些。5 分钟的写入溢价是 25%,1 小时的话会略高一点。但是在长任务场景下呢,这笔额外的写入成本远小于缓存反复过期重建的代价。值得一提的是呢,这个环境变量是 2026 年 4 月的 Claude Code 更新中才引入的,它适用于 API Key、Bedrock、Vertex 和 Foundry 等多种配置。

这也是面试官最后频频点头的那一条——1 小时 TTL 是很多用了好几个月 Claude Code 的人都不知道的配置,能说出这个环境变量的,基本可以确定是真正跑过长任务、踩过坑的人。

3. 总结一下

第一个呢是中途切模型,这个伤害最大。第二个是中途装新的 MCP。第三个是改 claude.md 或者装新的 Skills。第四个是活干到一半中断超过 5 分钟。

4. 核心原则

核心原则其实就三条。第一条呢,开启一个任务之前,一次性把东西都配好。第二条,Session 里面尽量不要用 resume。第三条呢,复杂任务一定记得开 1 小时的 TTL,用 API Key 的用户尤其要注意这一点。

从我的经验来看呢,这四个缓存杀手里面,第四条也就是超时中断这一条,是最被低估的。前三条呢需要你主动去操作才会触发,但是 5 分钟 TTL 是被动流失的——你只是在认真检查 Claude 的输出呢,缓存就已经悄悄过期了。对于使用 API Key 的开发者来说呢,把 ENABLE_PROMPT_CACHING_1H=1 写进 shell profile 里面,是最值得做但最少被提到的一步配置。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

http://www.cnnetsun.cn/news/2814046.html

相关文章:

  • 从Pycharm到VSCode:不同IDE下Python环境与pip命令的联动配置避坑
  • PVZ Toolkit终极指南:3分钟掌握植物大战僵尸无限资源修改器
  • 如何用Montserrat字体让你的设计作品瞬间提升专业感?
  • 图灵机:什么是计算的本质?
  • 英雄联盟终极工具箱:League Akari 5分钟快速上手完全指南
  • 一文讲透AI产品经理必懂的10个Agent相关的核心概念
  • 基于InfiniBand Verbs和MAD的高性能文件传输程序设计与实现
  • League Akari:英雄联盟客户端工具集深度解析与实战指南
  • VS2015下可运行的MFC画图工具源码包,含放大镜、油漆桶、多笔型及完整图像格式支持
  • Vectorizer:基于Potrace的多色位图矢量转换技术深度解析
  • 042、NPU的硬件抽象层(HAL):跨平台移植的关键
  • 群晖NAS终极升级:Realtek USB以太网驱动完整实战指南
  • ComfyUI-Manager高效配置实战指南:深度解析AI工作流管理最佳实践
  • 抗辐照电子设计:从吸收剂量单位换算到器件选型实战指南
  • CSDN AI数字营销免费试用仅限首次注册?3类“伪新用户”被拒实录,第2种你可能正在踩雷
  • 磁珠等效电路与频率特性解析:从模型到EMC噪声抑制实战
  • 无线模组如何成为元宇宙的智能连接基石:从5G到AIoT的技术演进
  • STM32F103 KEIL工程:软硬双模I²C驱动24Cxx EEPROM + 实时LCD状态显示
  • PySD终极指南:如何在Python中快速构建系统动力学模型
  • 手把手教你搞定IEEE会议投稿:从LaTeX模板到PDF eXpress避坑全流程
  • 如何在macOS上实现NTFS读写:免费开源工具的终极解决方案
  • 告别命令行恐惧:用 SRA Toolkit 的 prefetch 和 fastq-dump 轻松下载并转换宏基因组数据
  • Node.js版本太低?手把手教你用NVM切换版本,解决NPM安装时的EUNSUPPORTEDPROTOCOL错误
  • Linux内核学习轨迹第五部:反向映射RMAP机制全解析(第八小节)
  • 寻找中文 AI 的救赎:递归自我改进(RSI)如何降维打击“网络黑话”与语料污染
  • SQL语言:数字函数
  • BMI体脂率与基础代谢综合计算接口接入实践:健康评估数据的工程化处理
  • GitOps CI/CD 流水线设计:从 Git 事件到生产部署的自动化闭环
  • 电子设备接地防雷与抗干扰:原理、误区与工程实践指南
  • AVR TWI中断驱动设计:从轮询到状态机的通信效率优化