Agent Memory 实战指南:在 awesome-agentic-ai-zh 学习路径中构建「只记该记、允许记、删得掉」的跨会话记忆
教程文档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),仅供参考

相关新闻

FilmCraft 贡献者工程指南:环境搭建、质量门禁、Never-Crash 规则与扩展开发

FilmCraft 贡献者工程指南:环境搭建、质量门禁、Never-Crash 规则与扩展开发

【免费下载链接】filmcraft An open-source, clean-room reimplementation of Adobe Premiere Pro built in pure Rust. 项目地址: https://gitcode.com/gh_mirrors/fi/filmcraft 点击查看 免费下载 本文基于 FilmCraft 仓库的贡献文档 CONTRIBUTING.md 及其指认的…

2026/10/9 12:12:20 阅读更多 →
Guerrilla Checkers 环境实战指南:PufferLib 中不对称棋类自对弈的训练、检查点兼容与基准评估

Guerrilla Checkers 环境实战指南:PufferLib 中不对称棋类自对弈的训练、检查点兼容与基准评估

强化学习深度学习人工智能 【免费下载链接】PufferLib Puffing up reinforcement learning 项目地址: https://gitcode.com/gh_mirrors/pu/PufferLib 点击查看 免费下载 Guerrilla Checkers 是 PufferLib 内置的一款棋盘类强化学习环境,它把 Checkers&a…

2026/10/9 12:11:19 阅读更多 →
体系3.枚举、查找算法讲义

体系3.枚举、查找算法讲义

目录 第一部分 知识与方法1.1 枚举算法1.2 查找算法1.3 二分答案第二部分 例题精讲第三部分 分类拓展第四部分 总结梳理 壹 第一部分 知识与方法 1.1 枚举算法(穷举法 Enumeration) ① 基本思想 枚举就是把问题所有可能的解,按照某…

2026/10/9 12:11:19 阅读更多 →

最新新闻

Loop Engineering实战:用Claude Code、Codex、Cursor搭建AI编程闭环

Loop Engineering实战:用Claude Code、Codex、Cursor搭建AI编程闭环

1. 从"写提示词"到"搭回路":Loop Engineering 到底在解决什么问题 如果你最近在折腾 Claude Code、Codex、Cursor 这类 AI 编程工具,大概率经历过这样一个阶段:一开始觉得"哇,一句话就能生成代码"&…

2026/10/9 12:51:26 阅读更多 →
openGauss数据库源码解析:核心特性、架构与编译入门

openGauss数据库源码解析:核心特性、架构与编译入门

从去年年底开始,我把openGauss的源码当成了主要研究对象。这篇是系列文章的第二篇,继续把openGauss这个数据库的底子摸一遍,讲清楚它的核心特性、整体架构、源码目录和编译体验,算是给后面的源码解析铺路。上一篇讲了openGauss的来…

2026/10/9 12:51:26 阅读更多 →
Text-to-CAD实战:用自然语言生成可编辑STEP模型

Text-to-CAD实战:用自然语言生成可编辑STEP模型

做了十年机械设计,再往前数几年,天天跟CAD打交道最烦的三件事:装完CAD发现缺 SHX 字体,图纸莫名打不开;想卸载重装又卸不干净,二次授权直接卡住;画个法兰盘改了三版尺寸,模型树里全…

2026/10/9 12:51:26 阅读更多 →
CAXA电子图板2026箭头全攻略:从尺寸标注到打印缩水一次解决

CAXA电子图板2026箭头全攻略:从尺寸标注到打印缩水一次解决

搞机械设计和工程制图的,谁没跟箭头打过交道?可越是常见的东西,越容易被草率处理。前几天帮朋友看图纸,一套泵体零件图,尺寸标注的箭头歪歪扭扭,引出线的箭头指向了空气,序号线缠在一起——问题…

2026/10/9 12:51:26 阅读更多 →
模板编译期计算:从模板元编程到constexpr的进阶实践

模板编译期计算:从模板元编程到constexpr的进阶实践

模板编译期计算:把“计算”这件事彻底塞给编译器写过几年C的老哥应该都有这种体会:很多代码写出来,其实根本不是给运行时的CPU跑的,而是写给编译器看的。你想要的不是“程序运行时算出一个结果”,而是“代码编译期间就…

2026/10/9 12:51:26 阅读更多 →
Flink数据倾斜实战:定位热点Key与加盐两阶段聚合治理

Flink数据倾斜实战:定位热点Key与加盐两阶段聚合治理

做实时数仓的同行,大概率都经历过这样的深夜:一个运行了半年的 Flink 数据倾斜问题突然爆发,某个并行子任务 CPU 直接打满,Kafka 消费延迟像坐火箭一样往上蹿,而相邻的 TaskManager 却闲得发慌。群里开始刷屏&#xff…

2026/10/9 12:50:25 阅读更多 →

日新闻

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API这个话题,隔三差五就会在群里被翻出来讨论一次。上周还有个同事线上处理一个订单超时问题,排查到最后发现是ZonedDateTime序列化后时区丢了,用户在下单当天晚上看到的时间整整差了8个小时。这类问题几乎每个做Java开发的人都遇到过…

2026/10/9 0:00:49 阅读更多 →
EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

前几个月我手头有好几台机器需要互相访问:办公室台式机、家里 NAS、还有一台云主机。如果只是偶尔传个文件倒还好,问题是工作场景经常要在几处环境之间来回切换,每次都先登录跳板机再层层代理,实在折腾。我先后试过端口映射、自建…

2026/10/9 0:00:49 阅读更多 →
AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent 这个词在过去一年里被反复提及,但真正动手搭过一套能跑起来的 Agent 系统的人都知道,从"知道它是什么"到"让它稳定干活"之间隔着一整套工程决策。我前后参与过几个 Agent 项目的落地,从最初用现成框架拼装&…

2026/10/9 0:01:50 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:40 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 21:13:17 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 6:17:20 阅读更多 →