十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Claude Code的上下文管理机制

Claude Code的上下文管理机制 Claude Code的上下文管理机制上下文与其管理方案Claude Code的上下文管理实践最近终于按下心来打算记录一下大模型应用开发相关的知识了。那么提到agent必然绕不开Claude Code这样一个编程助手神作。上下文与其管理方案上下文是大模型一次推理可以见到的全部token空间包括系统和用户提示词、工具调用信息等。目前大模型窗口普遍达到1M但是大量的工具调用结果比如文件读取、构建日志和堆栈报错体量较大且轨迹累积因此上下文容易撑爆并且模型对于早期重要约束的注意力会下降、加上中间状态可能干扰判断从而导致执行质量下降。既然空间是有限的并且质量和成本及时间都随上下文增长而增长token计算的时间复杂度是O(N2)那么就需要管理空间内的信息以决定哪些信息值得留下来、哪些要丢弃。常见方案有以下5种滑动窗口满了丢弃最早的简单但是容易丢弃最初目标、重要约束、关键决策等任务背景。摘要压缩将历史对话总结为短文本压缩力度有了但是粒度没了很可能丢失细节且不保留结构化的可供继续执行的任务状态。而agent需要的是任务状态快照。RAG检索基于相关性算法检索知识片段并塞入prompt适合补充相关知识但是不能稳定召回关键状态比如任务目标、已修改文件状态等执行轨迹。长期记忆比如CLAUDE.md和memory适合存放稳定的规则约束比如编码规范、目录结构、项目技术栈但是不适合放临时任务状态。subagent隔离比如派出subagent去探索项目返回精简结果它是上下文管理的一部分但是不能替代主agent的上下文管理主agent依然要读取结果、决定下一步。其实也可以看出来任何一个方案单独拿出来对于执行长线任务的agent都不够用所以上下文管理要多维度控制。Claude Code的上下文管理实践精准定位上下文。Claude Code采用Glob找文件-Grep找关键词-Read读相关内容的三步走策略来只读取精准上下文。裁剪工具结果。每次工具调用超过硬上限时会通过截断预览的方式裁剪工具结果。subagent探索去隔离噪音。将大范围探索变为小体积结论。稳定规则放CLAUDE.md和memory。这样在Auto-Compact压缩之后会重新注入稳定规则而不会丢失。Auto-Compact压缩。在留有摘要空间的时候将执行轨迹压缩成Agent可以继续执行的结构化任务状态快照从工具输出提炼关键状态结论保留任务目标、任务进度、关键决策、已修改文件、未完成事项等丢弃重复日志、无关搜索和已被结论覆盖的中间过程等。核心思想是丢弃噪音保留状态。
返回列表