Agent 情景记忆(Episodic Memory)保存过去发生过的具体事件或任务经历,例如当时的目标、环境、行动、观察和结果。它回答的是“之前发生过什么、在什么条件下做了什么、结果如何”,而不是只保存从经历中抽象出的事实。
情景记忆借用了认知科学术语,但在 Agent 工程中通常表示可检索的运行经历。它可以帮助 Agent 参考成功案例、避开已经验证失败的路径,或为当前决策提供带上下文的先例。
记录内容
一条可复用的情景记忆可以包含:
- 事件或任务的时间与作用域;
- 当时的目标、约束和输入条件;
- 采取的行动、工具调用和关键参数;
- 环境返回的观察、错误和反馈;
- 最终结果及其验证方式;
- 与原始轨迹、文件或审计记录的定位信息。
只有结果而没有条件和过程,容易让后续 Agent 在不适用的场景中照搬结论。只有完整原始日志又可能过大且难以检索,因此常同时保留结构化摘要和可回查的原始证据。
形成过程
情景记忆通常从运行轨迹中选择形成:
- 识别具有复用价值的成功、失败或异常事件;
- 去除与未来决策无关的噪声和敏感数据;
- 提取目标、条件、关键行动、结果与验证证据;
- 标记适用范围、时间和置信信息;
- 保存摘要,并保留回到原始轨迹的引用;
- 在事后评测确认错误时更新或失效。
不是每一次工具调用都值得成为长期情景记忆。过度记录会增加检索噪声,并可能让偶然成功被误认为稳定做法。
检索与使用
检索情景记忆时,相关性不仅来自文本相似,还取决于任务类型、约束、工具、环境版本和期望结果。系统可以把选出的经历转换为少量示例、风险提示或候选步骤,再由当前任务的真实状态决定是否采用。
情景记忆与少样本示例常有联系:过去的输入、行动和输出序列可以作为示范,帮助模型理解如何处理类似任务。但示例只是先例,不是权限,也不能替代对当前外部事实的验证。
Generative Agents展示了一种将经历保存在记忆流中、按相关性等条件检索,并从经历形成更高层反思的架构。该研究说明了事件记录、检索和反思可以协同工作,但不意味着所有 Agent 都需要保存完整经历。
与相邻概念的区别
- 运行轨迹是任务实际发生的完整或近完整事件序列,主要用于执行、审计和调试;
- 情景记忆是从轨迹中筛选并整理、准备在未来复用的具体经历;
- 语义记忆保存从一个或多个经历中提炼出的事实与概念;
- 程序性记忆保存完成任务所依据的规则、指令或技能。
例如,“上次调用某接口时因权限不足而失败”是情景记忆;“该接口需要管理员权限”在经过权威文档或多次证据确认后,可以成为语义记忆。
风险与治理
情景记忆可能包含用户内容、工具输出、文件路径和环境细节。写入前应按作用域和数据政策过滤,检索时也要执行同样的访问控制。旧经历中的凭据、授权和外部状态不能在新任务中自动沿用。
由模型生成的经历摘要可能遗漏失败条件或把推测写成事实。重要记忆应能回查原始证据,并允许根据后续验证进行修正、降权或删除。
评测
情景记忆评测可以检查:
- 能否从轨迹中选出真正有复用价值的经历;
- 摘要是否保留条件、行动、结果和证据;
- 是否能为相似任务找回合适先例;
- 是否会因表面相似而错误套用旧经验;
- 失败经历能否阻止重复同一错误;
- 权限与用户边界是否在保存和检索两端一致。