资讯动态

Agent Memory 实战指南:在 awesome-agentic-ai-zh 学习路径中构建「只记该记、允许记、删得掉」的跨会话记忆

发布时间:2026/10/9 12:12:27 来源:尧图企业网站定制
教程文档AI Agent人工智能大模型【免费下载链接】awesome-agentic-ai-zhA trilingual (繁中 / English / 简中) learning roadmap for agentic AI: from LLM basics to multi-agent systems, with 240 curated resources and hands-on examples. 中文 AI agent 學習地圖。项目地址https://gitcode.com/gh_mirrors/aw/awesome-agentic-ai-zh点击查看免费下载Agent Memory代理记忆是 Stage 6RAG and Memory 的两条核心主线之一RAG 解决「答案需要更好外部证据」的问题Memory 解决「助手下次要能读回自己的状态」的问题。本文以仓库中 Agent Memory 学习页 为骨架结合 Stage 6 的 长期记忆练习 及其实测用例完整覆盖四类概念的区分、短期/长期与三类记忆内容、写入到删除的完整生命周期、最小可测试设计、安全底线与工具选型让你读完即可上手实现并验证一个合规、可隔离、可删除的跨会话记忆层。 先把四样东西分开Chat History、Context、RAG、Memory很多项目失败的起点是把这四个概念混为一谈。本页用一张对照表给出精确定义核心术语通俗画面精确含义Chat History聊天纪录这次对话的逐字稿消息记录不代表每一条消息都应永久保存或塞进模型 context。Context上下文这一时刻放在桌上的资料本次模型调用实际看到的 instructions、messages、工具结果与取回内容。RAG有问题时去书架找资料从外部知识来源取回证据再交给模型回答。Memory记忆助手留给下次的短笔记跨步骤、thread 或 session 仍需读回的状态必须有写入与治理规则。关键判断产品手册放知识库RAG当前任务做到哪一步放短期 state只有经用户同意保存的偏好才可能进入长期 memory。仓库在 资源总览页 与 术语表 中同样强调Memory 有两个正交分类轴——按持续时间分短期/长期按内容分 episodic/semantic/procedural二者是不同维度不可混为一谈。⏱ 两种时间范围短期不等于 RAM长期不等于永不删除Short-term Memory短期记忆只服务一个 thread 或当前任务例如消息、上传文件、工具结果与任务进度。LangGraph 通常通过checkpointer把它保存在 thread-scoped state 中。Long-term Memory长期记忆跨 thread 或 session 仍需要例如用户批准的偏好、项目事实或可复用经验必须用namespace隔离不同用户与不同应用。区分二者的本质是取回范围与生命周期而不是「存内存还是存硬盘」这种存储设备的名称。换句话说短期记忆也可能落盘为了崩溃恢复长期记忆也可能有过期删除策略为了合规与避免污染。 三种内容类型Semantic、Episodic、Procedural类型记什么例子风险Semantic Memory语义记忆相对稳定的事实用户偏好简短回答项目使用 Python 3.13事实会过期或互相冲突Episodic Memory情节记忆发生过的事件与结果上次部署在哪一步失败、哪个修法有效成功一次不代表永远适用Procedural Memory程序记忆做事的规则与步骤发版前要跑哪些 gate恶意内容可能污染未来行为一个高频混淆点semantic memory语义记忆和 semantic search语义搜索不是一回事。前者是「存的内容类型」后者是「按意思相近来检索的取回方法」。仓库 术语表 对 episodic memory 也有补充Reflexion 这类方法把「前几次尝试、反馈与反思」作为 episodic memory 存下来供后续尝试复用——但反思内容只有被持久保存后才真正成为跨 session 记忆。 一笔 Memory 的生命周期从提议写入到删除遗忘把记忆当作「有管理规则的笔记本」其生命周期共 8 步提议写入先判断是否真的需要跨 session 使用只在确认「下次还要用」时才写。取得同意敏感数据或个人偏好必须让用户知道保存目的并获得同意。正规范化保存简短事实不要把整段聊天当作记忆。加上 metadata至少包含owner、source、created_at、updated_at、expires_at与sensitivity。隔离保存用 user / workspace / agent 三种 namespace 分开查询前先应用权限。搜索与使用只取回与当前任务相关的少量记忆并保留来源source。更新或解决冲突新信息不能悄悄与旧信息并存要标记版本或取代关系。删除与遗忘用户可查看、修改、删除过期数据自动清除备份也要有处理规则。 先选最简单的设计再谈工具问题先用什么何时升级字段固定例如语言、时区、通知偏好直接状态表字段种类变多或需要模糊搜索时内容较自由例如短摘要或可复用经验可搜索文字 memory关系、时间与冲突成为主要问题时人、事件与关系会随时间改变Temporal Knowledge Graph时序知识图谱只有测试证明普通数据表/搜索不够时只需恢复同一个工作流程Checkpoint / thread state真正需要跨 thread 分享时原则先从数据表开始。能用明确字段保存的内容不必先做向量搜索能用短期 state 解决的问题不必先做永久记忆。仓库在 Stage 6 主页面 也给出同样的选择表短数据且只需本次答案用长上下文Long context文档多、问题来了才知道要哪段用 RAG下次还要记得偏好/任务状态/结果才用 Memory。️ Memory 安全底线默认不存、取回前鉴权、删除要彻底默认不保存密码、API key、付款资料、医疗秘密或未经同意的个人数据。不共享未隔离的 namespace不同用户、tenant、workspace 或 agent 必须隔离。取回前做权限检查不能先取出秘密再靠 prompt 要求模型「不要说出去」。记忆内容是不可信输入写入前检查 schema、来源与 prompt-injection 风险。每笔记忆要能回答谁写的owner、从哪来source、何时更新updated_at、何时删除expires_at / 删除策略。删除必须覆盖主存储、搜索索引、cache 与按政策管理的备份。 一个最小 Memory 练习用固定测试锁定「该记的找得到、不该记的不留下」本页给出一个只保存一项非敏感偏好的最小练习——例如「回答先给短版」写入偏好及user_id、来源、时间、保存期限。用另一个 thread 搜索并读回。把偏好改成「先给表格」确认旧值不再被使用。删除偏好再搜索一次结果必须为空。用另一个user_id查询不能看到第一位用户的内容。完成条件add、search、update、delete 与 user isolation 五项测试全部通过只会add不算完成。仓库中与之一一对应的可运行实现是 Exercise 5: Making an Agent Remember Next Time。其 starter.py 的核心结构如下memory MemoryStore(path.stage06-memory) # 磁盘持久化的 Chroma PersistentClient memory.remember(User prefers Python.) # 写入一笔事实 recalled memory.recall(Which language should I learn?) # 按语义取回 top-k该实现的调用链值得对照本页概念逐条理解MemoryStore.__init__用chromadb.PersistentClient(path...)打开磁盘目录配合SentenceTransformerEmbeddingFunction(sentence-transformers/all-MiniLM-L6-v2)——这就是「长期记忆落盘、按语义检索」的最小落地。remember(fact)先查重同一事实只存一份再写入uuid4生成的 id——对应生命周期第 3 步「正规范化」与第 7 步「避免冲突并存」。recall(query, top_k3)先查collection.count()为空直接返回[]否则做向量查询取回少量相关记忆——对应第 6 步「只取回少量相关记忆」。chat()把取回的记忆拼进system promptRelevant memories: ...而不是把整个聊天历史塞进上下文——这正是本页「短期 state 与长期 memory 分开」原则的直接体现。maybe_remember_fact()用I am / I like / I prefer等触发词做启发式筛选——只保存「关于用户的陈述」对应「先判断是否值得记」。对应测试 test.py 覆盖了本页要求的验证点test_memory_remember_and_recall写入多笔事实后recall能命中「Python」偏好该找的找得到。test_memory_empty_recall空库取回返回[]。test_reopening_same_store_keeps_memory/test_persistent_store_survives_new_process用两个全新 Python 进程对同一PersistentClient写读验证「关闭程序后记忆还在」。test_remember_deduplicates_exact_fact同一事实重复写入返回同一 idcollection 计数仍为 1不堆积。test_maybe_remember_fact_triggers_on_self_statements/test_maybe_remember_fact_skips_non_self_statementsI live in Taipei会触发写入Whats the weather?不会。test_chat_uses_memory_in_prompt通过 mock LLM 断言 system prompt 中确实包含被召回的记忆内容。这些测试普遍注入内存版FakeCollection/FakeClient与 fake LLM只有持久化检查会在系统临时目录创建真实PersistentClient运行后自动清理——与仓库 测试计划 强调的「可重跑、不污染项目目录」一致。Hot path、Background 与冲突处理写入方式优点代价Hot-path write回答前立刻写结果最新延迟增加写入错误直接影响用户Background write回复后异步整理交互更快必须处理失败、重试与晚到更新同一事实存在新旧版本时要保存时间、来源与有效范围不能只凭向量相似度随机挑一版。对高风险内容先把「模型建议的 memory」放入待确认区再由规则或用户核准后再正式写入。常见失败与排查顺序找不到依次检查 namespace、权限、filter 与保存是否成功。找到旧数据检查 update 是否留下互相冲突的版本、cache 是否刷新。记太多提高写入门槛、缩短保存期限不要只靠扩大 context window 硬扛。记错保留来源与置信度允许用户更正不要把模型推测直接当事实。删不干净沿着主库、索引、cache、事件流与备份逐层追踪删除路径。 精选 Projects 与学习资源先选 Memory 形状再选工具仓库给出的评分代表「对这张学习地图的教学价值」并非项目质量排行榜建议先按上一节选好 memory 形状数据表 / 可搜索文本 / 时序图谱 / checkpoint再挑选具体实现。Memory layer记忆层Mem0⭐⭐⭐⭐⭐适合第一次做跨 session memory学习 library、server、cloud 与搜索生命周期Apache-2.0注意区分 OSS 与托管能力边界。LangMem⭐⭐⭐⭐适合已在用 LangGraph 的团队学习 hot-path / background memoryMIT但应先理解 LangGraph store。Letta 项目入口⭐⭐⭐⭐先分清 Letta 的产品边界确认现行安装、文档与源码去向注意其入口目前是 landing page退役的 V1 server 只保留在 archive branch。Letta Code⭐⭐⭐⭐适合构建 stateful agent 或 App Server学习 agent harness、git-backed MemFS 与长期 identity属产品型 agent harness不是通用 memory 数据库。deja-vu⭐⭐⭐⭐先用磁盘上已有的 coding-agent session 文件构建 episodic memory默认用词法检索BM25、不需要 embedding可选deja embed追加语义召回MIT默认只在本机运行远程 embedding 端点会收到已遮蔽凭据的索引文本本机 Ollama/LM Studio 则数据不离开本机。时间与关系Time and relationshipsGraphiti⭐⭐⭐⭐⭐适合关系随时间变化的应用学习 bi-temporal facts 与时序图Apache-2.0需要图数据库与治理。Zep examples⭐⭐⭐适合评估 Zep Cloud 的团队作为整合与示例入口原 Community Edition 已迁移至 legacy/deprecated。LangChain Memory overview⭐⭐⭐⭐⭐适合先学概念的读者覆盖 thread state、store 与三种 memory 类型属框架文档概念可移植API 随版本变化。研究与评测Research and evaluationCoALA⭐⭐⭐⭐⭐研究 agent-memory 架构的统一分析框架working、episodic、semantic、procedural不是可安装产品。Generative Agents⭐⭐⭐⭐⭐研究反思与记忆取回的经典论文覆盖 recency、importance、relevance 三重评分是经典研究而非生产标准答案。Reflexion⭐⭐⭐⭐研究从经验中获得反馈的机制verbal feedback 与下一次尝试反思内容只有持久保存后才成为跨 session 记忆。Mem0 Memory Benchmarks⭐⭐⭐⭐测试 memory quality 的可重跑评测入口提供数据集与评测脚本由供应商维护建议自行补充隔离与删除测试。✅ 自我检查清单我不再把 Chat History、Context、RAG 与 Memory 当成同一件事。每笔长期 memory 都有 owner、source、时间与删除方法。我能解释 semantic memory 和 semantic search 的差别。我测过更新、删除、过期与跨用户隔离不只测写入和搜索。敏感数据默认不写入用户能看见并控制被保存的内容。下一步完成本页后回到 Stage 6 主页面 完成全部练习与自检即可进入 Stage 7 — Agent Production Engineering可测、可看、可停、可恢复。若你的问题在于「答案缺少更好外部证据」则应走同阶段的另一分支 Advanced RAG当两者都需要时先分别测试再连接。仓库在 freshness 模型配置 中为本页登记了agent_memory_fact_pack校验时间 2026-08-30范围覆盖 memory、privacy、retention、isolation、project-status读者可据此追踪该学习页的事实保鲜周期。赞分享教程文档AI Agent人工智能大模型【免费下载链接】awesome-agentic-ai-zhA trilingual (繁中 / English / 简中) learning roadmap for agentic AI: from LLM basics to multi-agent systems, with 240 curated resources and hands-on examples. 中文 AI agent 學習地圖。项目地址https://gitcode.com/gh_mirrors/aw/awesome-agentic-ai-zh点击查看免费下载相关推荐Cross-Session Memory 实战用 ADK 与 Vertex AI Memory Bank 构建跨会话记忆 AgentCross Session Memory 实战用 ADK 与 Vertex AI Memory Bank 构建跨会话记忆 Agent 导读 本指南以 core示例工程DLSS Swapper不更新游戏3 步免费换装新版 DLSS/FSR/XeSS DLLDLSS Swapper不更新游戏3 步免费换装新版 DLSS/FSR/XeSS DLL 想让旧游戏用上新版 DLSSDLSS Swapper 是一款免费桌面应用Agent Carnet 实战指南用 Markdown 笔记本为 Repomix 项目中的 AI Agent 构建跨会话记忆Agent Carnet 实战指南用 Markdown 笔记本为 Repomix 项目中的 AI Agent 构建跨会话记忆 导读 本指南基于 Repomix开发工具MCP 服务AI 应用上一篇wired-elements 中的 wired-video手绘风格视频播放器组件实战指南下一篇从 golden 参考章节读懂 Skill Seekers 的 EPUB 转技能管线输出格式、关键词分类与质量评分创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑