跳转到内容

9.4.1 记忆路线图:写入、检索、遗忘

记忆不是为了让 Agent 看起来像人,而是为了服务任务:减少重复沟通、保留有用上下文、复用经验,并避免过期信息或隐私泄露。

Agent 记忆系统分层图

Agent 记忆系统章节学习顺序图

Agent 记忆写入与检索闭环图

核心决策不是“全部保存”,而是什么该保存、何时检索、何时更新、何时遗忘。

只有稳定偏好和可复用事实才适合进入长期记忆。

events = [
{"type": "preference", "text": "prefers short examples"},
{"type": "temporary", "text": "debugging one local error"},
{"type": "fact", "text": "project uses Python"},
]
memory = []
for event in events:
if event["type"] in {"preference", "fact"}:
memory.append(event["text"])
print("saved:", memory)
print("count:", len(memory))

预期输出:

Terminal window
saved: ['prefers short examples', 'project uses Python']
count: 2

如果一条记忆不有用、不新鲜、没权限或检索不到,它可能比没有记忆更伤害 Agent。

步骤阅读实操产出
1记忆概览区分上下文窗口、短期记忆、长期记忆
2短期记忆跟踪跨轮次的当前任务状态
3长期记忆保存稳定偏好、事实和项目背景
4情节记忆与程序记忆区分发生过什么和下次怎么做
5记忆工程设计写入、检索、更新、过期和删除规则

学完这一页,至少保留这张证据卡:

记忆类型
短期、长期、情景或程序性
写入规则
在内存创建或更新时
检索规则
查询、相关性、时效性和权限检查
失败检查
过时记忆、隐私泄漏、矛盾或过度检索
清理动作
总结、合并、过期、删除或请求确认

如果你能解释为什么“记更多”不等于“表现更好”,就通过了本章。

本章出口小项目是一套学习规划助手记忆规则:什么保存、什么确认、什么临时保留、什么删除。

检查思路与讲解
  1. 合格答案要描述 agent 循环:目标、计划、工具调用、观察结果、记忆或状态更新,以及停止条件。
  2. 证据应包含另一个开发者可以检查的 trace,而不只是最终回答。
  3. 自检时要能说出一个安全或可靠性控制,例如工具 schema、权限边界、重试、评估用例或人工复核点。