Agent 上下文工程:用记忆与检索支撑长任务

举报
L2 发表于 2026/08/18 10:23:36 2026/08/18
【摘要】 本文从上下文预算、即时检索、压缩、结构化笔记和记忆治理五个方面,给出长任务 Agent 的上下文工程实践清单。

当 Agent 从几轮对话走向几十分钟甚至数小时的任务时,瓶颈往往不是模型不会推理,而是上下文被噪声淹没。上下文工程关注的是:每次推理前,如何持续整理真正有用的信息,而不只是把提示词写得更长。

一、把上下文当作有限预算
上下文窗口越大不等于效果越好。历史消息、工具结果、系统规则和外部资料都会消耗注意力,冗余内容还可能让关键事实被忽略。实践上应保留能改变决策的约束、目标、最新状态和证据;重复日志、已处理的原始输出则应压缩或清理。

二、从预加载转向按需检索
与其把整个知识库一次塞给 Agent,不如先提供轻量索引,例如文件路径、查询标识或网页链接,再让 Agent 在需要时通过工具加载细节。这种“即时取用”方式能减少过时内容,也方便按任务逐层建立理解。工具返回结果时,应优先给结构化字段、摘要和下一步可用的标识,避免返回大段无关文本。

三、让长任务跨越上下文窗口
1. 压缩(compaction):接近窗口上限时,总结目标、已验证事实、关键决策、未解决问题和下一步,开启新上下文继续工作。
2. 结构化笔记:把里程碑、依赖、约束、失败原因和待办事项写入持久化笔记;每次恢复时先读笔记,再读取少量最新资料。
3. 专业子 Agent:把检索、代码分析或数据核验交给独立上下文的子 Agent,只返回经过提炼的结论,让主 Agent 保持清晰。

四、记忆应该保存什么
高价值记忆不是完整聊天记录,而是不容易从原始资料推断出的修正和规则,例如某个指标的特殊过滤条件、用户确认过的定义、某次失败的根因以及下次必须遵守的边界。写入前应让用户确认或由策略审查,按项目、团队和个人范围隔离,并支持过期、删除和追溯,避免错误记忆长期污染后续任务。

五、一个可落地的分层方案
可以把上下文拆成六层:数据或工具元数据、领域人员注释、代码推导出的语义、组织知识、持久化记忆和实时运行状态。离线流程负责整理稳定资料并建立索引;运行时只检索最相关片段,必要时再访问实时系统验证新鲜度。OpenAI 分享的内部数据 Agent 就采用了类似分层思路,并让记忆记录用户纠正过的筛选条件,从而减少重复犯错。

六、上线前检查清单
• 每个工具是否有清晰、互不重叠的职责?
• 压缩后是否仍保留目标、约束、决策和未决项?
• 记忆是否有来源、作用域、版本和失效策略?
• 检索结果能否追溯到原始证据,并在权限范围内返回?
• 是否用长任务样例验证上下文污染、错误记忆和恢复能力?

结语
可靠的长任务 Agent 依赖的不是无限上下文,而是持续的取舍:只把高信号信息放进当前工作区,把可复用知识写入可治理的记忆,并在需要时按证据重新检索。这样,Agent 才能在上下文重置后保持目标连续,同时降低成本和幻觉风险。

参考来源(均为国外公开资料):
1. Anthropic,Effective context engineering for AI agents:https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents
2. OpenAI,Inside OpenAI’s in-house data agent:https://openai.com/index/inside-our-in-house-data-agent/

【版权声明】本文为华为云社区用户翻译文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容, 举报邮箱:cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。