Agent 的记忆应该如何管理?

未标记

询问 AI

考查重点:记忆写入、召回与失效。短期状态保存当前任务,长期记忆只写可复用事实并附来源;按相关性检索,过期或冲突信息更新或删除

本题目录

参考答案

核心回答

Agent 的记忆要围绕写入、使用和维护管理。先区分当前会话的短期状态与跨会话保留的长期信息:前者保存任务进度、消息和工具结果,后者选择性保存以后仍有价值的用户偏好、事实或经验。

写入时判断信息是否值得长期保留,并记录来源、时间和适用范围;使用时先按用户、项目等范围筛选,再检索与当前任务相关的记忆,控制进入上下文的内容;维护时处理纠错、冲突、过期、去重和删除。最后用多轮任务验证能否记对、用对、改对、忘掉,而不只检查“数据是否存进了向量库”。

例如用户平时要求中文报告,这可以成为长期偏好;本次临时要求英文,应覆盖当前任务的输出语言,但不应直接改掉长期偏好。

先确定记什么、保存在哪里

短期状态围绕一次会话或任务。 可以保存最近消息、已经调用的工具、阶段成果和未完成事项。状态可用消息历史或 checkpointer 管理;线程标识用于找回对应状态,身份认证与可访问范围仍由应用控制。

长期记忆围绕跨会话仍有用的信息。 例如用户明确表达的稳定偏好、持续中的项目背景、经过核实的工作约定。一般会给记忆增加用户、项目等命名空间,再用键值、文档或向量索引等方式组织。需要按语义查找时才引入向量检索,按确定键读取的偏好不必先做向量搜索。

在 LangGraph 的常见设计里,checkpointer 保存线程状态,Store 可以保存跨线程信息。这里的“长期”首先描述使用范围;InMemoryStore 或 InMemorySaver 仍然是内存实现,需要重启后保留时,应选择持久化后端。

写入:把候选信息变成可维护的记忆

不要把每一轮对话都自动变成长期事实。写入前至少判断信息是否与未来任务有关、是否稳定、依据是否明确,以及它只适用于本次任务、某个项目还是用户全局。

例如“这份报告用英文”属于任务约束;“以后我的报告默认用中文”才明确表达了长期偏好。模型从一次行为推测出的偏好,可以先作为待确认候选,而不是直接覆盖既有记录。

一条记忆除了正文,还应保留来源、创建或更新时间、适用范围,以及按需设置的有效期或失效条件。这样发现回答过时时,能够追到它依据哪次交流,而不只是看到一条来源不明的向量。

简单而明确的偏好可以同步写入;从长任务里提炼经验可以在任务完成后异步处理。选择方式取决于下一轮是否马上要用,以及额外延迟是否值得,不必每轮都增加一次提取模型调用。

使用:从存储中取出,再构建本次上下文

一次合理的使用过程是:先确认可访问的用户和项目范围,再按问题检索候选,过滤过期、重复和不适用的信息,最后在上下文预算内选取内容。命名空间有助于分组,但命名空间字符串本身不会自动完成权限校验。

已经存储,不代表本轮全部交给模型。 原始历史、摘要和检索到的长期记忆,可以按任务需要组合;要保留关键约束、必要证据以及调用与结果的对应关系。上下文压缩方法可结合长对话中的上下文管理展开。

记忆也不是实时业务状态的权威来源。用户之前提到订单未发货,可以帮助识别查询目标;回答“现在发货了吗”时,应查询订单系统。语义相似只说明可能相关,不能证明内容仍然正确。

维护:让变化真正影响后续回答

纠错和冲突要结合来源与范围处理。 用户明确修改长期偏好,可以更新当前有效记录,必要时保留变更依据;临时任务要求只在本次生效。来自另一篇文档的矛盾说法,不能只因为时间较新就覆盖已确认事实,应结合来源、版本和适用条件核对。

去重、整合与过期处理用于降低噪声。 同一事实的多种表达可以合并,但应保留必要出处。旧项目版本、临时安排等信息应能失效;摘要也要随原事实变化,避免原文已经改了,摘要仍持续注入旧结论。

删除要覆盖实际使用链路。 删除主记录后,还应处理向量索引、派生摘要和缓存中的相关内容,或通过统一的失效标记阻止它继续被使用。删除流程应能验证,而不是只返回一个成功提示。

怎样验证管理机制有效?

可以准备一组连续场景:先记住默认中文;另开会话检查是否能取回;本次要求英文,检查是否仅影响本次;再明确修改长期偏好,检查旧记录是否失效;最后删除该偏好,检查后续检索与回答是否仍使用它。

同时加入另一个用户和项目的样本,验证检索范围是否正确。观察有效记忆能否召回、过期或错误记忆是否被引用、回答是否遵守当前要求,以及引入的延迟和 token 成本。指标要与这些场景对应,不能仅用记忆条数增加证明效果提升。

对应教程

参考资料

  • 国内:JavaGuide:Agent 记忆系统:借鉴记忆写入、检索、整合和遗忘的组织方式,说明记忆需要持续管理,而非只保存历史消息。
  • 国内:zero2Agent:记忆与上下文:参考长期记忆的写入条件,以及旧偏好与当前请求的处理方式,解释什么值得长期记住、临时要求如何生效。
  • 国内:Hello-Agents:第八章 记忆与检索:借鉴教学实现中会话历史、记忆管理与检索组件的分工,说明正文中记忆记录、管理和按需使用各自的职责。
  • 国外:LangChain:Short-term memory:依据线程状态和 checkpointer 的说明,解释会话状态如何保存,以及它与本轮发给模型的内容有什么区别。
  • 国外:LangChain:Long-term memory:参考跨会话存储与命名空间的设计,说明长期记忆如何划分存储范围,并与存储后端配合。

相关面经

59 篇

美团

一面
查看原面经 →
技术选型,比如多agent和单agent,微调和rag,llm记忆(其实就是prefill阶段)

灵犀互娱

AI 应用开发工程师
校招秋招
查看原面经 →
传统的 Agent 设计里,记忆层应该怎么设计?

蚂蚁集团

面经合集
查看原面经 →
你是怎么设计agent的记忆系统?

百度

面经合集
查看原面经 →
Agent记忆模块如何设计?

上海联蔚数科

AI 工程实习生(Agent 方向)
实习
查看原面经 →
你的coding agent没有用框架,那你是怎么实现上下文压缩,记忆处理的。
展开剩余 54 篇面经

百度

Agent 开发工程师
日常实习
查看原面经 →
项目追问
你的长期记忆是怎么做的?

上海九云数智

大模型应用开发工程师(RAG 方向)
查看原面经 →
项目追问
你这里有用向量数据库进行存储吗,记忆系统是怎么做的

百度

Agent 应用开发工程师
秋招一面
查看原面经 →
Memory 是怎么设计的?

科大讯飞

Java 开发工程师
秋招一面、二面
查看原面经 →
项目追问
记忆怎么做的

万仞

全栈开发工程师
实习二面
查看原面经 →
你项目里的agent memory是怎么做的?记忆做了几层?

VITURE

Agent 平台开发工程师
社招一面
查看原面经 →
这个记忆如何管理。

智元机器人

前端开发工程师
实习一面
查看原面经 →
你的Agent相关实现目前是什么程度?有做记忆吗?

去哪儿

前端开发工程师
一面
查看原面经 →
Agent记忆模块如何设计?

去哪儿

AI 全栈开发工程师
查看原面经 →
你的记忆架构设计是怎么做的

百度

后端开发工程师(Agent)
一面
查看原面经 →
该 Skill 使用了 Memory 或第三方知识吗?

快手

Agent 应用开发工程师
一面
查看原面经 →
延伸问题
长期记忆如何处理?

百度

Agent 应用开发工程师
秋招一面
查看原面经 →
Agent记忆模块如何设计?

腾讯

软件开发工程师
秋招一面
查看原面经 →
coding agent的记忆怎么做的

深圳璇溟科技有限公司

Agent 开发工程师
实习
查看原面经 →
追问
你是怎么存Agent 记忆的

阿里巴巴(淘天)

Agent 开发
社招一面
查看原面经 →
Memory 最佳实践怎么搞?

鼎捷数智

Agent 开发工程师
实习
查看原面经 →
记忆模块是怎么设计的

转转

FDE
社招
查看原面经 →
怎么做用户的记忆管理

蚂蚁集团

全栈开发工程师
社招一面
查看原面经 →
agent的memory怎么做

浦发银行

AI 应用开发工程师
社招一面
查看原面经 →
用户级的 Memory怎么做

字节跳动

社招一面、二面、三面
查看原面经 →
有设计memory 吗? 做的话你会考虑什么? 你了解业界最新的这块内容咋做的吗?

快手

AI Agent 开发
一面
查看原面经 →
记忆机制是怎么做的?

百度

后端开发
秋招一面
查看原面经 →
Memory 怎么设计?

哔哩哔哩(B站)

多屏客户端开发工程师
实习二面
查看原面经 →
那我们在实际开发中的话,自己开发 agent 的时候怎么设计这个记忆系统呢

快手

AI 应用 / Agent 开发
日常实习一面
查看原面经 →
memory模块是你在设计吗?讲一下

百度

Agent 应用开发工程师
一面、二面
查看原面经 →
上下文记忆的关键是什么

招银科技

后端开发工程师(AI / Agent 方向)
社招
查看原面经 →
agent记忆设计的理解

未知公司

查看原面经 →
记忆机制的设计

小红书

AI 全栈开发工程师
二面
查看原面经 →
项目追问
项目里LangChain做了哪些工具调用,有没有实现memory相关功能,还是只做prompt编排?

字节跳动

Agent 应用开发工程师
二面
查看原面经 →
长短期记忆怎么设计的?

字节跳动

全栈开发工程师(Agent)
一面
查看原面经 →
agent的memory是如何进行管理的?都存在哪些地方?

华为

AI 基础设施工程师(模型训练与推理)
实习一面、二面
查看原面经 →
记忆系统怎么做

高德

AI 应用 / Agent 开发
社招一面
查看原面经 →
猫猫的整体架构设计除了multi agent 还有 什么技术亮点 ? 记忆 ?能够讲讲你的记忆系统吗?

阿里巴巴

Agent 开发工程师
暑期实习一面、二面
查看原面经 →
拷打个人做的魔改Langraph项目,记忆系统的设计

腾讯音乐

后端开发
实习一面
查看原面经 →
介绍一下记忆模块怎么做的。

华为

网络安全工程师(AI 应用方向)
暑期实习
查看原面经 →
记忆模块怎么设计的,为什么要这么设计

阿里巴巴

Java 开发工程师
一面
查看原面经 →
对于长期有效的信息,会做什么特殊处理把它留存下来吗?

美团

Agent 开发工程师(智能客服)
二面
查看原面经 →
用一个例子解释一下你的 Memory 是怎么做的,以及怎么插入上下文的,怎么考虑上下文长度问题的?

字节跳动

大模型算法工程师
暑期实习一面、二面、三面
查看原面经 →
如何保持上下文记忆

Moka

后端开发工程师(AI)
实习
查看原面经 →
如何管理这个agent的多轮对话,记忆化

腾讯 WXG

AI 应用 / Agent 开发
社招面委会
查看原面经 →
记忆系统为什么这样设计?

阿里国际

AI 应用 / Agent 开发
一面、二面
查看原面经 →
记忆怎么设计

快手

Agent 应用开发工程师
实习一面
查看原面经 →
记忆机制是怎么做的?

懂车帝

Agent 开发工程师
实习一面
查看原面经 →
如果做一个通用Memory的功能

阿里巴巴

AI 应用开发工程师
实习一面
查看原面经 →
ai开发过程中,调用工具,记忆管理怎么实现的

阿里巴巴

Agent 开发工程师
实习一面
查看原面经 →
Agent的记忆怎么设计

快手

AI 应用 / Agent 开发
日常实习一面
查看原面经 →
聊聊记忆系统模块设计是怎么设计的?(这里我先讲的需求的背景和设计分析)

米哈游

AI 应用 / Agent 开发
查看原面经 →
记忆机制的设计?如果都放在一起怎么办

荣耀

大模型算法工程师
实习
查看原面经 →
它的记忆管理是如何做的?

未知公司

Agent 方向
一面
查看原面经 →
Agent memory 应该如何设计

得物

大模型算法工程师
实习
查看原面经 →
上下文 & 记忆机制

腾讯

Agent 应用开发工程师
实习
查看原面经 →
agent memory管理有哪些难点

字节跳动

Agent 开发工程师
一面、二面、三面
查看原面经 →
记忆管理

3K 游戏、中翔数据

面经合集
查看原面经 →
记忆机制是怎么做的

字节跳动

后端开发工程师
一面
查看原面经 →
项目追问
你的上下文管理和记忆系统采用了什么策略?

收录题集

26 份

开发岗专项面试题

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

算法岗精选复习题

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

Agent Memory 设计问答

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

公司案例问答汇编

阿东玩 AI · AgentGuide · 2 条原题

查看题集 →

开发岗精选复习题

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →
展开剩余 21 份题集

Agent Memory专题问答

阿东玩 AI · AgentGuide · 3 条原题

查看题集 →

Agent Memory进阶追问

阿东玩 AI · AgentGuide · 3 条原题

查看题集 →

Agent与工具调用

阿东玩 AI · AgentGuide · 3 条原题

查看题集 →

RAG与知识库

阿东玩 AI · AgentGuide · 2 条原题

查看题集 →

项目论文与经历

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

AI 系统设计

AMIT SHEKHAR · ai-engineering-interview-questions · 2 条原题

查看题集 →

Agent记忆与上下文工程

Rocky Ding · AIGC-Interview-Book · 3 条原题

查看题集 →

阿里巴巴问答汇编

Rocky Ding · AIGC-Interview-Book · 2 条原题

查看题集 →

百度高频面试题

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

字节跳动高频面试题

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

荣耀高频面试题

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

美团高频面试题

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

腾讯问答汇编

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

小红书高频面试题

Rocky Ding · AIGC-Interview-Book · 1 条原题

查看题集 →

AI 智能体与大模型应用开发面试题库

didilili · ai-agents-from-zero · 1 条原题

查看题集 →

Agent 面试题

Guide · JavaGuide · 1 条原题

查看题集 →

Agent 机制与项目追问

Guide · JavaGuide · 6 条原题

查看题集 →
展开其余 3 条原题

AI 编程与编码 Agent 问答

Guide · JavaGuide · 1 条原题

查看题集 →

Agent 面试题

小林 Coding · 个人整理 · 1 条原题

查看题集 →

记忆与上下文:长对话不丢信息的实战方案

Onefly · zero2Agent · 5 条原题

查看题集 →
展开其余 2 条原题

OpenClaw 教程面试题

Onefly · zero2Agent · 1 条原题

查看题集 →

相关题目

4 题

相关关键词:Agent Memory、长期记忆