Agent 语义记忆

agent_semantic_memory2026-09-20 14:30:21

Agent 语义记忆(Semantic Memory)保存从交互、任务或资料中形成的事实、概念及其关系。它回答的是“什么是真的、某个对象有什么属性、概念之间如何关联”,而不是记录某一次事件的完整经过。

在 Agent 系统中,语义记忆可用于保存已经确认的用户偏好、组织规则、项目事实或领域概念。它通常属于长期记忆,但具体保存范围可以是某个用户、组织、项目、Agent 或应用。

与语义搜索的区别

语义记忆是一类被保存的信息;语义搜索是一种按照含义相似度寻找内容的检索方法。语义记忆可以通过键值、过滤条件、全文检索、图关系或向量检索取回,不要求一定使用 Embedding。反过来,向量数据库中的资料也不一定都是 Agent 记忆,它可能只是外部知识库。

表示方式

语义记忆常见两种组织方式:

  • 结构化档案:把一个主体的稳定事实保存在带 Schema 的对象中,例如语言偏好、时区或项目角色;
  • 事实集合:把每条事实作为独立记录保存,并带有主体、来源、时间、作用域和置信信息。

结构化档案便于整体读取和校验,但档案过大时容易在更新中覆盖细节。事实集合便于增量写入和分别失效,却需要处理重复、冲突、关系和检索排序。实际系统可以组合两者:用小型档案提供概览,用可追溯事实集合保存细节。

形成与验证

对话中的一句话不能自动成为可靠事实。语义记忆写入通常需要:

  1. 识别候选事实及其主体;
  2. 区分用户明确陈述、外部来源、模型推断和临时计划;
  3. 检查是否需要用户确认或权威来源验证;
  4. 记录来源、时间、适用范围与置信信息;
  5. 与已有事实比较,处理重复和冲突;
  6. 在事实变化时更新、失效或删除旧版本。

从多个情景记忆中归纳规律时,应保留归纳依据,并避免把一次偶然结果升级为通用规则。高风险事实在使用前还需要重新向权威系统查询。

检索与使用

语义记忆的检索应先限制身份和作用域,再结合当前任务选择少量相关事实。常见排序信号包括相关性、重要性、可信来源、更新时间和有效期。检索结果应明确标注来源,不应与系统指令混合。

在生成回答或计划前,Agent 可以用语义记忆补充背景;当记忆与实时 API、数据库或权威文档冲突时,应优先核验当前事实,而不是依赖旧记忆。LangGraph 的记忆概览将事实与概念归入语义记忆,并展示了档案与文档集合两种管理方式。

与知识库和用户记忆的关系

检索增强生成(RAG)常从共享知识库取回文档片段;语义记忆则更强调从 Agent 过去交互或任务中保留、可在未来使用的事实。二者可以使用相似的检索组件,但在写入权限、数据来源、生命周期和隐私要求上不同。

用户记忆可以包含语义记忆,例如用户明确确认的稳定偏好;也可以包含具体经历等其他类型。语义记忆描述信息的性质,用户记忆描述信息所关联的主体和使用场景。

风险与治理

语义记忆的主要风险包括错误抽取、无来源断言、过期事实、主体混淆和跨用户泄露。系统应提供可审计的写入记录、细粒度作用域、冲突处理、版本与有效期,以及查看、更正和删除机制。

对用户或组织有实际影响的决策,不应仅凭模型生成的语义记忆执行。需要把记忆视为候选背景,并在必要时通过权威数据源重新确认。

评测

语义记忆评测可以检查:

  • 事实抽取是否准确,主体和作用域是否正确;
  • 是否拒绝保存推测、凭据和无复用价值的信息;
  • 冲突事实能否被识别并正确更新;
  • 查询能否取回相关事实而不混入其他用户信息;
  • 过期或已删除事实是否停止影响后续任务;
  • 回答能否区分记忆内容、实时证据和模型推断。

相关词条

参考资料

本页目录