Agent 记忆(Agent Memory)
也叫: 智能体记忆 · AI Agent 记忆
Agent 记忆指的是智能体记住并在之后复用信息的能力,覆盖的范围超出单次提示词能装下的内容——既包括一个任务内部的多个步骤,也包括跨越多次独立会话。
单次模型调用本身是没有记忆的——它对当前对话『知道』的一切,都得靠每次调用时重新塞进上下文窗口的文字来提供。Agent 记忆就是智能体用来绕开这个限制的一整套办法:决定哪些信息值得往后带、装不下上下文的时候存到哪里、需要的时候怎么把它找回来。
这个问题通常以两种形态出现。同一个任务内部,一个要跑很多步的智能体需要记住自己已经试过什么、发现了什么、还剩什么没做——这部分通常叫工作记忆,大多数情况下就直接活在不断增长的上下文窗口里(上下文窗口涨大之后怎么管理,见 context-engineering)。跨会话的场景——用户第二天回来接着聊,或者一个长期运行的智能体要接着之前的进度往下走——智能体就需要一个在任何单次上下文之外都能持久存在的地方,通常叫长期记忆。
这两种记忆都没有统一必须遵循的架构。长期记忆常见的做法包括:把原始文本或摘要存进一个可检索的存储(常见的是向量数据库,按语义相似度检索),或者把过去发生的事按结构化记录逐条追加成一份事件日志(episodic log)供之后查询。具体选哪种,取决于智能体主要需要回忆的是事实、过去做过的决定,还是具体的历史交互内容。
怎么运作
实际落地时,记忆最终几乎都要回到上下文窗口里——把信息存在外部只有在智能体能把相关的那一小块找回来、再以文字(或结构化数据)的形式塞进后续的提示词时才有意义。所以一套记忆机制通常有一条『写入路径』(判断什么值得存、存成什么形式)和一条『读取路径』(判断当前这一步该取回哪些内容,通常按和当前任务的相关度或对历史条目做相似度检索)。写入路径判断错了,智能体会忘掉重要的事;读取路径判断错了,要么漏掉关键上下文,要么把提示词塞满不相关的历史信息。
举个例子
一个跨多个会话为同一个项目工作的编程 Agent,可能会把此前已经做过的架构决策摘要存进长期存储里,这样新开一次会话时不用从头重新推导一遍、也不用重读整个代码库——同时,它还是会用普通的工作记忆(也就是上下文窗口)来追踪当前这个任务本身的执行步骤。
和相关概念的区别
Agent 记忆常和上下文工程被混为一谈。上下文工程管的是当前这一步的上下文窗口里该放什么;Agent 记忆则是那个(往往是外部的、持久的)存储本身,上下文工程决定的是要不要、以及什么时候从这个存储里把信息取进上下文窗口。
常见误解
常见问题
Agent 记忆有什么用?
Agent 记忆是不是就是向量数据库?
是不是每个 AI Agent 都需要长期记忆?
最近核实: 2026-08-28