核心概念

Agent 记忆(Agent Memory)

也叫: 智能体记忆 · AI Agent 记忆

Agent 记忆指的是智能体记住并在之后复用信息的能力,覆盖的范围超出单次提示词能装下的内容——既包括一个任务内部的多个步骤,也包括跨越多次独立会话。

工作记忆长期存储事件日志Agent 记忆
智能体会根据需要的是当前任务的工作状态、可持久保存的事实,还是过去事件的记录,读写不同类型的记忆。

单次模型调用本身是没有记忆的——它对当前对话『知道』的一切,都得靠每次调用时重新塞进上下文窗口的文字来提供。Agent 记忆就是智能体用来绕开这个限制的一整套办法:决定哪些信息值得往后带、装不下上下文的时候存到哪里、需要的时候怎么把它找回来。

这个问题通常以两种形态出现。同一个任务内部,一个要跑很多步的智能体需要记住自己已经试过什么、发现了什么、还剩什么没做——这部分通常叫工作记忆,大多数情况下就直接活在不断增长的上下文窗口里(上下文窗口涨大之后怎么管理,见 context-engineering)。跨会话的场景——用户第二天回来接着聊,或者一个长期运行的智能体要接着之前的进度往下走——智能体就需要一个在任何单次上下文之外都能持久存在的地方,通常叫长期记忆

这两种记忆都没有统一必须遵循的架构。长期记忆常见的做法包括:把原始文本或摘要存进一个可检索的存储(常见的是向量数据库,按语义相似度检索),或者把过去发生的事按结构化记录逐条追加成一份事件日志(episodic log)供之后查询。具体选哪种,取决于智能体主要需要回忆的是事实、过去做过的决定,还是具体的历史交互内容。

怎么运作

实际落地时,记忆最终几乎都要回到上下文窗口里——把信息存在外部只有在智能体能把相关的那一小块找回来、再以文字(或结构化数据)的形式塞进后续的提示词时才有意义。所以一套记忆机制通常有一条『写入路径』(判断什么值得存、存成什么形式)和一条『读取路径』(判断当前这一步该取回哪些内容,通常按和当前任务的相关度或对历史条目做相似度检索)。写入路径判断错了,智能体会忘掉重要的事;读取路径判断错了,要么漏掉关键上下文,要么把提示词塞满不相关的历史信息。

举个例子

一个跨多个会话为同一个项目工作的编程 Agent,可能会把此前已经做过的架构决策摘要存进长期存储里,这样新开一次会话时不用从头重新推导一遍、也不用重读整个代码库——同时,它还是会用普通的工作记忆(也就是上下文窗口)来追踪当前这个任务本身的执行步骤。

和相关概念的区别

Agent 记忆常和上下文工程被混为一谈。上下文工程管的是当前这一步的上下文窗口里该放什么;Agent 记忆则是那个(往往是外部的、持久的)存储本身,上下文工程决定的是要不要、以及什么时候从这个存储里把信息取进上下文窗口。

常见误解

常被以为: Agent 有记忆,意味着它像人一样持续保持对过去的感知。
实际上: 大多数 Agent 记忆是被动存储、按需检索——只有当某次查找恰好把相关内容取回给当前这一步时,智能体才算『记得』,并不是持续在感知。
常被以为: 长期记忆就等于向量数据库。
实际上: 向量数据库是实现语义检索的一种常见选择,但普通的结构化日志、键值存储,甚至一份摘要文本,都可以根据实际需要回忆的内容类型,充当智能体的长期记忆。

常见问题

Agent 记忆有什么用?
它让智能体能够回忆超出当前上下文窗口容量的信息——不管是一个多步任务内部,还是跨越多次独立会话——而不用每次都从零开始。
Agent 记忆是不是就是向量数据库?
不是。向量数据库只是实现长期记忆的一种常见工具,记忆本身是更宽泛的概念——指的是保留和取回信息的机制,具体可以用好几种不同方式实现。
是不是每个 AI Agent 都需要长期记忆?
不是——很多智能体只需要工作记忆(也就是上下文窗口)来完成单个任务,不需要跨会话保留任何东西;只有当智能体需要衔接之前、独立发生过的交互内容时,长期记忆才真正重要。

最近核实: 2026-08-28

相关术语