淘天面试必考:Agent记忆机制保姆级教程(非常详细),看这篇就够了!

张开发
2026/4/19 22:54:47 15 分钟阅读

分享文章

淘天面试必考:Agent记忆机制保姆级教程(非常详细),看这篇就够了!
有在阿里淘天的林友跟我说今年阿里淘天的开发岗实习基本全都是 ai agent 开发了不区分前端和后端了。面试也开始逐步面了 ai agent 的面试题目前我也在持续更新这方面的面试题等后续整理差不多了沉淀到网站分享给大家学习。这次就来看看淘天一面「请你介绍一下 AI Agent 的记忆机制」 简要回答Agent 需要记忆才能在多步任务中保持状态、跨任务积累知识。记忆机制分四层感知记忆当前输入的原始内容、短期记忆context window 里的对话历史、长期记忆存在外部数据库、语义检索召回、实体记忆结构化提取的关键事实。实际设计时要解决三个核心问题存什么、怎么存、什么时候取出来用根据信息类型选合适的存储方式再搭配主动检索和按需检索两种策略使用。 详细解析没有记忆的 Agent 有多不好用要搞清楚记忆机制为什么重要得先感受一下「没有记忆」的 Agent 到底有多难用。你今天告诉 Agent「我喜欢代码风格简洁、变量命名用英文、不要过度注释」它帮你完成了今天的任务。明天你重新打开对话让它帮你写一个新功能它输出的代码风格完全和昨天说好的不一样中文注释一堆变量名也很啰嗦。你很困惑但对 Agent 来说昨天的对话压根不存在每次对话都是全新的开始之前达成的所有约定都消失了。这还只是「偏好记忆」的问题。更严重的是「任务状态」的问题Agent 在执行一个多步任务的过程中如果没有短期记忆来维持状态它就不知道自己上一步做了什么、当前处于哪个阶段、已经收集到了哪些信息。你让它「先查资料再整理成报告」没有记忆的话整理报告这一步根本不知道查到了什么。记忆是 Agent 从「单次问答工具」变成「真正助手」的关键分水岭。有了记忆它才能积累对你的了解才能在多步任务中保持连贯才能跨任务沉淀知识。四种记忆类型从最短暂到最持久记忆机制其实可以对应到人类的记忆系统来理解从最短暂到最持久分四个层次。第一层感知记忆Sensory Memory这是最短暂的一层就是「当前这次调用的原始输入」用户发来的这条消息、上传的截图、传入的文档。它的生命周期只有一次调用处理完就消失不会主动保留。类比到人你刚听到的一句话如果没有主动去记几秒后就忘了。感知记忆就是这个「刚进来还没处理」的原始感知。它存在的意义是模型需要一个「入口」来接收外部信息这就是感知记忆的角色。第二层短期记忆Short-term Memory这是 context window 里的messages列表维持着当前任务执行过程中的完整状态包括用户说了什么、模型输出了什么、工具调用返回了什么。只要任务还在进行这些信息就都在任务结束对话关闭这块记忆就清空了。类比到人这就像你的「工作台」桌上摆着的都是正在处理的东西。工作台有大小token 上限放满了就得清一清。工作台的特点是「随时可见」不需要去「找」直接读就行。第三层长期记忆Long-term Memory这是跨任务保留的信息存在外部数据库里通常是向量数据库、关系数据库或 Key-Value 存储。任务结束了信息不会消失下次需要时去检索拿回来用。类比到人这就是你的「档案室」东西放进去不会丢但要用的时候需要主动去翻。长期记忆的关键技术是向量数据库它支持「语义检索」你不需要知道存的时候用了什么关键词只要意思相近就能检索到相关内容。这比精确匹配灵活得多比如你存的是「用户不喜欢冗长的注释」用「代码风格偏好」去查也能找到它。第四层实体记忆Entity Memory这层比长期记忆更精炼它不是存原文而是把对话中出现的关键实体和事实主动提取出来存成结构化字段。比如「用户偏好 Python」「客户预算是 5 万」「项目截止日是 3 月底」这些是从对话里提炼出来的「结论」而不是原始对话本身。类比到人这就像医生的病历卡不是把问诊录音存起来而是结构化地记录「主诉头痛三天诊断偏头痛用药布洛芬」。信息密度高查询快而且不受原始表述方式影响。四层记忆横向对比类型载体容量生命周期访问方式感知记忆当次输入极小单次调用即时访问短期记忆context window受 token 限制一次任务直接读取长期记忆向量/关系数据库无限持久语义检索实体记忆结构化存储无限持久精确查询实际设计记忆模块的三个核心问题理解了四种记忆类型设计记忆模块时还要解决三个工程问题。第一个存什么不是所有内容都值得写入长期记忆存太多反而会引入噪音让检索的精准度下降。判断标准其实很简单「这条信息下次任务开始时如果知道会让 Agent 做得更好吗」通常值得存的有三类用户偏好和习惯语言风格、技术栈偏好、工作习惯、任务执行中产生的关键结论和决策比如「调研发现竞品 A 的定价策略是按用量收费」、以及外部知识产品文档、FAQ、历史案例。不值得存的中间推理过程、工具返回的原始数据日志太啰嗦、闲聊内容。这些存进去只会稀释有价值的记忆让检索的信噪比下降。第二个怎么存根据信息的类型选合适的存储介质而不是一刀切地全部塞进向量数据库需要语义检索的内容文档知识、对话摘要- 向量数据库用 embedding 存储检索靠相似度结构化的用户偏好、状态字段语言偏好、项目配置- 关系数据库或 Key-Value支持精确查询速度快整段文档或知识库 - 向量数据库配合 RAG 召回混合存储是主流做法结构化的偏好字段用关系数据库精确查非结构化的知识和历史用向量数据库语义检索两者配合使用。第三个什么时候取出来用两种策略实践中结合使用「主动检索」任务开始前用当前任务的描述去检索相关记忆把结果注入 system prompt 作为背景知识。这样 Agent 一开始就带着「历史记忆」进入任务不需要用户每次重新交代背景。「被动触发」Agent 在推理过程中判断当前步骤需要某类特定知识时主动发起检索把「查记忆」封装成一个 Tool让 Agent 自己决定什么时候调。这种方式更灵活但依赖模型判断什么时候该去查。实践上两种结合session 开始时做一次主动检索把关于用户偏好和背景的记忆加载进 system prompt任务执行过程中遇到需要专业知识或历史数据的步骤再让 Agent 按需检索。完整记忆模块的配合方式把四层记忆和三个核心问题放在一起来走一遍一次完整任务里它们是怎么协作的。整个过程可以用「读 - 用 - 写」三个阶段来描述。第一阶段任务开始前先「读」记忆用户发来一个新请求Agent 不是立刻开始干活而是先去「翻档案」从实体记忆里取出用户的结构化偏好语言偏好、风格要求、过往决策再用任务描述作为查询词去长期记忆里做一次语义检索拿回最相关的历史背景。把这两部分信息拼进 system prompt 的开头Agent 进入任务时就已经带着完整的「用户画像」不需要用户重复交代背景。第二阶段任务执行中持续「用」记忆任务开始执行短期记忆messages 列表全程工作用户的每一条消息、模型的每一次输出、工具调用返回的每一个结果都追加进 messages。每次调用 LLM 都把这份完整历史带上Agent 始终知道自己做到哪一步、前面发现了什么。如果某个执行步骤需要特定的专业知识比如查某个 API 的文档、回想某次历史决策Agent 可以临时发起一次长期记忆检索把「查记忆」封装成一个 Tool用当前上下文作为查询词把检索结果注入到这一步的 context 里用完即走不需要永久保留在 messages 中。第三阶段任务结束后主动「写」记忆任务完成进行最后一步把本次任务产生的新知识写回持久化存储。具体来说如果用户在对话中表达了新的偏好「以后写函数都要加类型注解」就更新实体记忆的对应字段如果任务产生了有价值的结论「竞品 A 的定价是按用量收费」就把这条摘要写入长期记忆embedding 后存入向量数据库供下次检索。最后短期记忆messages 列表清空工作台恢复干净等待下一个任务。用流程图来看整条链路是这样的「读 - 用 - 写」三个阶段形成完整闭环每次任务开始时把历史积累读进来执行中靠短期记忆保持连贯结束后把新知识写回去沉淀。Agent 用得越多积累越厚越来越「了解」用户这才是记忆系统真正的价值所在。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章