语音摘要 — 点击播放以跟读:正在朗读的行会保持在顶部附近。
每次向Claude发送请求时都有一个上下文窗口。一百万tokens听起来很多,但在实际部署智能体时消耗得比想象中快。这就是上下文管理的意义所在:确保重要内容不丢失的同时保持在窗口限制内。
上下文包含的内容
上下文是Claude在单次交互中看到的所有内容:
- 系统提示词
- 历史对话记录
- 工具定义及工具运行结果
- 附件文件与技能
- 思考模块
上下文五大组成部分示意图:系统提示词、历史对话、工具、文件与技能、思考模块
这些都会计入每次API调用的输入。输入输出都会消耗token额度。一旦窗口耗尽,请求就会失败。
所以目标不是塞进所有内容,而是保留最关键的内容。
Anthropic发布了四种模式来管理长期运行智能体的上下文。其中三种是API原生功能,一种是设计模式。
四种上下文管理模式示意图:即时上下文、压缩、缓存、记忆
模式一:即时上下文
不要一次性加载所有内容。按需加载当前所需,其余通过工具调用获取。
以合规审查智能体为例,它不会在系统提示词中塞入整部建筑规范——而是在需要特定章节时调用lookup_building_code工具。这是四种模式中的设计模式:无需特殊API支持,只需精心规划内容加载时机。
模式二:服务端压缩
当对话过长时,Anthropic的服务端压缩功能会将旧对话总结为单个模块。通过在请求中添加context_management键值来启用:
当输入达到触发阈值时,API会自动执行摘要。您无需自行跟踪对话长度。
模式三:提示词缓存
提示词缓存允许标记请求中的稳定部分(系统提示词、工具定义、长文档等),以极低成本跨调用复用。
其经济价值远超表面:如果系统提示词占4000 tokens且每小时调用100次,启用缓存前后就是可用账单与财务部来电的区别。
模式四:记忆工具
有些上下文需要跨会话留存:用户偏好、智能体运行笔记、上周的决策等。推荐使用记忆工具作为基础组件。
工作原理:
- Claude通过工具调用读写记忆目录
- 存储后端由您实现——文件系统、数据库、加密存储等任选
- Anthropic会自动注入系统指令,要求Claude开始工作前先检查记忆目录
浏览器中查看的记忆目录界面,包含incidents和saas-pricing文件夹,以及上次会话保存的事件记录
模式组合应用
生产级应用通常需要组合所有模式。合规审查智能体会缓存系统提示词和工具定义,并通过lookup_building_code按需获取建筑规范章节。
每种模式解决不同痛点:成本、窗口大小、无状态性。根据实际瓶颈选择对应方案。
要点回顾
- 上下文即Claude单次交互所见全部内容——既非免费也非无限。窗口耗尽则请求失败。
- 即时上下文:按需加载当前内容,其余通过工具获取。这是四种模式中的设计模式。
- 服务端压缩:添加context_management键值,当输入超过阈值时API自动执行旧对话摘要。
- 提示词缓存:标记请求中的稳定部分跨调用复用,显著降低成本。
- 记忆工具:Claude通过工具调用读写记忆目录;存储后端由您实现,实现跨会话上下文留存。
- 四种模式,一个目标。可以手动组合,或直接使用默认启用缓存和压缩的Claude托管智能体。