小白程序员快速入门大模型记忆架构(附开源实现对比)

发布时间:2026/11/5 6:50:01
小白程序员快速入门大模型记忆架构(附开源实现对比)

本文系统梳理了AI Agent记忆架构的核心概念,包括工作记忆、情景记忆、语义记忆和程序记忆的分层设计,以及写入/读取路径与存储选型。通过对比Mem0、Graphiti、Letta和Cognee四种开源实现,提供了一套完整的Agent记忆架构视图。特别适合想深入理解大模型记忆机制并实践自托管知识图谱的开发者,附设计清单与Cognee具体实现细节。

Cognee 是一个免费开源的 AI 记忆平台,为 AI agent 提供跨会话的持久长期记忆。将文档、代码和对话转化为自托管的知识图谱,供你的 agent 搜索和复用。本文系统梳理工作记忆、情景记忆、语义记忆和程序记忆,以及记忆的写入、读取路径与存储选型。适合建立完整的 Agent Memory 架构视图,而不只是了解 Cognee 的 API。

AI Agent 记忆架构是一组让 Agent 在单次上下文窗口之外仍能保持状态的组件:提示词内的工作记忆,上下文窗口外的情节、语义和程序记忆,一条负责抽取与归并事实的写入路径,一条负责检索与排序的读取路径,以及一个根据结果重新加权的反馈回路。本文给出一张参考架构图、逐组件讲解、存储选型对比、四个开源实现(Mem0、Graphiti、Letta、Cognee)对照,最后附一份设计清单。Cognee 自身的实现在单列一节。

AI Agent 记忆架构是指对存储、处理管道和接口的组织安排,使 Agent 能够跨轮次、跨会话和跨任务记住信息,而不是每次调用都从零开始。模型本身保持无状态;围绕它的架构决定了什么内容会被写入、存放在哪里、如何被检索以及何时被遗忘。本指南面向需要一份参考性 AI Agent 记忆架构图并理解每个方框与箭头含义的工程师:记忆类型、写入与读取路径、存储权衡、多 Agent 共享,以及 Mem0、Graphiti、Letta 和 Cognee 如何映射到同一张图上。

什么是 AI Agent 记忆架构?

它是一套系统设计,不是单一数据库。它回答五个问题:Agent 在上下文窗口里保留什么、在上下文窗口外持久化什么、原始交互如何变成存储的记忆、存储的记忆如何回到提示词里、以及结果如何改变后续存储。

记忆架构 vs 上下文窗口。上下文窗口是工作记忆:模型这次调用能看到的一切,易失,每次请求都重建。记忆架构之所以存在,是因为窗口装不下一年的对话和每次工具调用的结果;它决定这一轮该从持久记忆里加载哪一片。

记忆架构 vs RAG。检索增强生成(RAG)从一个 Agent 从不写入的语料里读;Agent 记忆是读写的:Agent(或替它工作的管道)创建记录、事实变化时更新记录、删除记录。RAG 通常只是读路径里的一个检索器;记忆架构还需要写路径、冲突处理、时间有效性和遗忘机制。

AI Agent 记忆架构图

Agent 运行时在中央,三个长期存储在底部,写路径在左侧,读路径在右侧,反馈回路绕在外圈。

用户 / 环境(左上)。消息、文档或事件到达。这是新信息的唯一来源。

Agent / LLM 运行时(中间)。运行时做规划、调工具、决定记什么。其内部是工作记忆——上下文窗口,分四个槽位:系统提示词、最近轮次、工具结果、注入的记忆。第四个槽位是整个架构喂给它的,它的大小是其他所有组件争抢的预算。

工具 / MCP 接口(右上)。记忆以工具形式暴露:remember、recall、forget。无论走原生函数调用还是 Model Context Protocol 服务器,记忆都变成显式动作,而不是隐藏在中间件里。

写路径(左侧)。抽取实体、事实和事件;与已有存储去重、解析;带时间有效性地写入。第三步下面那句注释"冲突:取代、保留历史",把记忆存储和缓存区分开。一个箭头汇入情节日志,一个汇入语义记忆。

长期记忆(底部)。情节记忆存消息日志、工具调用轨迹、会话摘要;向上的虚线箭头是每轮写入、恢复会话时重放的会话日志。语义记忆存事实、实体及其关系,带有效性窗口,分为向量索引(文本块与实体摘要的 embedding)和知识图谱(带valid_from/valid_to的类型化节点与边),双向箭头表示两者互相索引。程序记忆存指令文件、技能和工具,以及从反馈中学到的检索权重。

读路径(右侧)。重写查询、向量化、分类;从向量、图、关键词索引检索;按新近度、相关度、有效性和权重排序;裁剪到预算内注入。虚线"查询"箭头表示检索由当前轮次触发。

反馈回路(外圈)。任务结果从工具接口流入反馈框,再以权重更新的形式回到各存储:带来正确答案的记忆被强化,带来失败的记忆被降权或修正。没有这个回路,架构只会无限累积。

四种记忆类型及其位置

四分法来自 CoALA 论文(Sumers、Yao、Narasimhan、Griffiths,2023),提出以工作记忆加情节、语义、程序三类长期存储作为语言 Agent 的框架。MemGPT(Packer 等,2023)从操作系统一侧得出类似分层:有界的主上下文、存放历史消息的召回存储、存放其他一切的归档存储,模型通过函数调用在它们之间换页。

记忆类型存什么生命周期典型存储谁写入
工作记忆系统提示词、最近轮次、工具结果、注入记忆一次模型调用提示词本身框架,每轮
情节记忆消息日志、工具轨迹、会话摘要数天到数月,之后摘要化关系型或文档存储框架自动
语义记忆事实、实体、关系,带有效性窗口直到被取代或遗忘向量索引 + 知识图谱写路径抽取之后
程序记忆指令文件、技能、工具、检索权重直到被修订仓库文件、技能注册表、策略表人,加反馈回路

情节记忆写起来便宜、读起来贵,所以多数架构会把情节摘要成语义事实。语义记忆是工程上最难的部分,也最能从图谱中受益:“谁负责这个服务”"3 月份时是什么情况"是关系和时间查询,不是相似度查询。程序记忆最不自动化:CLAUDE.md、AGENTS.md、.cursor/rules都是人写的,反馈回路才让系统自己写下其中一部分。

写路径:记忆如何被创建

生命周期图的上排把写路径展开为五个阶段。

原始输入。轮次、文档、工具输出。一次 40 轮的调试会话可能只产出两条长期事实,所以第一个决策是触发条件:每轮写?会话结束写?显式remember调用写?还是后台任务写?

抽取。一个 LLM 或更小的抽取器把实体、事实和事件拉成结构化输出:主语、谓语、宾语、来源、时间戳。Generative Agents 论文(Park 等,2023)在这里附了一个重要性分数,让日常观察被存下来但很少被检索。

解析。抽取到的实体去重并链接到已知节点:“Ana”“Ana Petrović”"新来的 PM"可能是同一个人。解析综合 embedding 相似度、标识符精确匹配和 LLM 裁决。

归并。新事实与已有事实对比。如果部署目标从 Heroku 换成 Fly.io,选项有三个:覆盖、追加矛盾、按时间取代。图里选了第三种:旧事实打valid_to,新事实打valid_from,两者都可查询。

持久化。事实进图、文本进向量索引、情节留在日志里并带指针回链。原子性很重要:一个节点没有 embedding 就对相似度搜索不可见,一个 embedding 没有节点就无法被图遍历到。

另外两个操作跑在存储上而非内联:巩固(consolidation)把旧情节压成摘要、合并相关事实,A-MEM 论文(Xu 等,2025)描述了一种 Zettelkasten 式变体——每条新笔记都更新相关笔记;遗忘(forgetting)出于正确性、衰减或合规删除事实。被取代的事实对默认检索隐藏但保留作审计;被删除的事实必须同时从图、向量索引和日志中清除,否则孤儿 embedding 会让已删内容重新浮现。

读路径:记忆如何被检索

生命周期图的下排在每个需要上下文的轮次上运行,因此它是延迟敏感的另一半。

查询。当前任务或轮次,通常附带最近几轮以解析指代。

重写与向量化。查询被重写、embedding、分类。分类决定路由:问某个人走图查询,"上周我们定了什么"走带时间过滤的情节搜索,"怎么部署"走技能库。把所有查询都丢给纯向量搜索,是 Agent 记忆感觉"随机"的最常见原因。

混合检索。向量搜索找语义相近的文本块和实体摘要;BM25 找 embedding 会模糊掉的精确标识符、错误码和名字;图遍历从命中的实体沿类型化边扩展——这就是为什么问"某个服务"的查询,能在查询里没提"负责人"的情况下找到负责人和最近事故。结果合并,常用倒数排名融合(RRF)。

排序与预算。候选项按相关度、新近度、有效性(事实在查询时点是否仍然成立)和权重(反馈学到的重要性)打分。Generative Agents 引入了"新近度—重要性—相关度"组合;有效性是时间记忆真正生效的关键。列表裁剪到上下文窗口的固定份额并去重。

注入上下文。存活下来的记忆带来源进入提示词,这样模型能引用、用户能核验、反馈回路能把结果归因到某条具体记忆。

一个交互轮次通常要求整条读路径在几百毫秒内完成,这排除了每次都用 LLM 重排;长时运行的编码 Agent 则可以承担更深的检索。

存储选择:向量库、知识图谱、关系型,还是三合一

架构需要相似度搜索、关系遍历、带时间戳的事务记录。问题是用几个系统来得到它们。

方案优势劣势何时用
仅向量库写路径最简;语义召回好;托管选项成熟没有关系和时间有效性;重复累积;多跳问题失败原型、单用户助手
仅知识图谱实体、关系、出处、时间原生;可解释需要抽取管道;没有 embedding 时模糊查询弱关系和历史密集的领域
仅关系型/文档库事务、留存、多租户已解决相似度和遍历都不自然情节日志、会话状态、审计轨迹
三者分系统各存储做自己最擅长的;独立扩缩三个系统要保持一致;删除必须三处都成功有基础设施团队的大规模部署
三者合一引擎一次事务、一套权限、一份备份被引擎里最弱的存储拖累;托管选项少不想维护三套数据库的完整架构

一个实用的中间路线是:Postgres + pgvector 做 embedding,在关系表上叠加图层,普通表放情节日志——不是每种规模下最快,但只有一个事务系统。

多 Agent 与多租户记忆

单 Agent 的图通过给每条记录和每次查询加上"范围"扩展到多 Agent、多用户。

范围(Scopes)。一条记忆属于某个用户、Agent、项目或组织,编码在每条记录上,排序前先过滤:组织记忆全员共享,项目记忆被项目上的 Agent 共享,Agent 记忆对单个 Agent 的程序私有,用户记忆对单个人私有。

Agent 间共享。方式有三种:带跨范围读权限的公共存储、交接摘要、共享的程序层。第一种连续性最好但一致性最难——两个 Agent 对同一实体写下冲突事实,就是归并步骤加上并发问题。

租户间隔离。光加一列过滤条件不够。一个没有硬租户过滤的最近邻查询会返回别租户的文本块,一次从共享实体出发的图遍历可能跨进私有子图。要在存储层强制范围(行级安全、按租户索引或数据集),并让forget感知租户。

权限。读、写、删、共享应是某个范围上相互独立的四种权限。

参考架构对比

四个开源系统以不同侧重实现了这套架构。描述来自它们的仓库和论文。

Mem0(github.com/mem0ai/mem0)聚焦写路径。它的论文描述了一个抽取阶段(把最近轮次加运行中摘要变成候选记忆)和一个更新阶段(LLM 对每条候选决定加、改、删还是忽略)。记忆按用户、Agent、运行划范围;默认存储是向量库,可选图变体。

Zep / Graphiti(github.com/getzep/graphiti)把语义记忆做成时间知识图谱。情节被摄入、实体和关系被抽取,每条边带双时间字段——冲突事实让旧边失效而不是删除。检索综合语义、BM25 和图距离搜索。Graphiti 是引擎,Zep 是托管产品。

Letta / MemGPT(github.com/letta-ai/letta)聚焦工作记忆。Agent 在上下文里持有可编辑的记忆块,用工具编辑这些块、搜索召回记忆(历史消息)、搜索归档记忆(向量库)。是模型、而不是管道决定写什么,这让写路径显式且可审计。记忆块可以挂在多个 Agent 上。

Cognee(github.com/topoteretes/cognee)聚焦组合:一条管道同时抽取进图和向量索引,带时间有效性,有一个反馈操作重加权记忆,可选在单个 Postgres 实例上跑全部三种存储。

这些方案不互斥:生产系统可能用 Letta 式记忆块做工作记忆、Graphiti 式时间图做语义记忆、Mem0 式抽取策略。

自建记忆架构的设计清单

从上到下过一遍这张图:

  1. 工作记忆预算。给注入记忆预留多少 token?什么最先被挤出去?

  2. 写入触发。每轮写、会话结束写、显式remember写,还是后台任务写?

  3. 抽取 schema 与实体解析。自由事实、三元组,还是类型化本体?什么让两次提及被认定为同一实体?

  4. 冲突策略。覆盖、追加,还是带有效性窗口的取代?只有第三种能回答"3 月份时我们相信什么"。

  5. 情节留存。原始日志留多久?什么时候摘要化?

  6. 检索路由与排序。哪类查询走向量、词法、图或情节搜索?哪些信号参与排序?权重是否从反馈中学?

  7. 来源归因。每条注入记忆是否带出处?

  8. 遗忘。一次forget能否在租户范围内同时从图、向量索引和日志中清除一条事实?

  9. 范围、权限与接口。有哪些范围?读、写、删、共享是否独立成权?记忆是以原生工具、MCP,还是两者都暴露?

  10. 评估。开/关记忆时的任务成功率、检索精度、p95 延迟。

Cognee 如何实现这套架构

Cognee 是一个开源记忆引擎(Apache 2.0,docs.cognee.ai),是上面智能体记忆架构图的一个系统实现。

写路径是一条 ECL 管道。Extract 摄入原始输入(文本、文件、轮次、工具输出);Cognify(认知化处理) 跑写路径中段:分块、实体与关系抽取、与已有图的解析、可选本体对齐;Load 一次写入知识图谱、向量索引和关系元数据,让一条事实永远不会只在一个存储里漏了另一个。时间模式让被取代的事实带有效性窗口保留。

图、向量、关系在一个引擎里。后端可插拔:图用 Neo4j、Kuzu 或 FalkorDB;向量用 LanceDB 或 pgvector;关系数据用 Postgres。单 Postgres 选项在一个实例上跑三种存储,即上面"三者合一引擎"那一行。

四个动词。Cognee 1.0 API 暴露remember(摄入并认知化)、recall(带排序和 token 预算的混合检索)、improve(反馈回路)、forget(删除一条事实及其派生产物),正好映射图中的写路径、读路径、反馈回路和遗忘操作。

工具 / MCP 接口。MCP 服务器通过 stdio、Streamable HTTP 和 SSE 暴露 remember、recall、forget,让 Claude Code、Cursor、Claude Desktop、Codex、Cline、Continue 共享同一份记忆。包名cognee/cognee-mcp。

claude plugin marketplace add topoteretes/cognee-integrations claude plugin install cognee-memory@cognee

范围与集成。记忆组织成数据集,带读、写、删、共享权限。集成覆盖 Claude Agent SDK、OpenAI Agents SDK、LangGraph、Google ADK、CrewAI、n8n;一个Mem0Source适配器可以导入已有 Mem0 记忆。自托管免费;Cognee Cloud 有免费层和按处理 token 量计费的 Standard 档(截至 2026 年 10 月)。

下一步。从单一向量库起步时,按杠杆从高到低依次加:事实的时间有效性、带摘要的情节日志、带路由的混合检索、能到达所有存储的forget。如果不想自己拼这些,直接从 Cognee 仓库和 memory agent 入门文档开始。

FAQ

AI Agent 记忆架构由哪些组件组成?

核心组件是:带工作记忆(上下文窗口)的 Agent 运行时;三类长期存储(情节——日志与会话,语义——事实与关系,程序——规则与技能);一条抽取、解析、归并事实并带时间有效性的写路径;一条在 token 预算内检索、排序并注入记忆的读路径;一个工具或 MCP 接口;以及一个根据结果重加权记忆的反馈回路。

Agent 记忆和 RAG 的区别是什么?

RAG 从 Agent 不写入的语料里读;Agent 记忆是读写的。记忆架构多了写路径(抽取、实体解析、冲突处理)、时间有效性(被取代的事实带窗口保留)和遗忘操作。实践中 RAG 只是读路径里的一个检索器,旁边还有图遍历、词法搜索和情节查找。

大模型的知识又多又杂,到底怎么学?

做这行久了,被问最多的问题就一个:大模型的知识又多又杂,我到底先学啥?翻了一堆资料,看啥都像重点,结果啥都没学进去。今天把我自己一路摸出来的顺序捋一遍,零基础、应届生、转行的都适用。跟着走,至少方向不乱、不瞎忙,学完拿得出手。

第一阶段(10天):初阶应用

这一阶段就一个目标:把大模型真正"玩明白",不是只会聊天那种,而是能调教它、能用代码把大模型和业务接起来。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …
第二阶段(30天):高阶应用

这阶段正式进实战,目标很实在:做出两个能拿出手的东西——一个私有知识库,一个 agent 对话机器人。

  • 为什么要做 RAG

  • 搭建一个简单的 ChatPDF

  • 检索的基础概念

  • 什么是向量表示(Embeddings)

  • 向量数据库与向量检索

  • 基于向量检索的 RAG

  • 搭建 RAG 系统的扩展知识

  • 混合检索与 RAG-Fusion 简介

  • 向量模型本地部署

  • …

走完这 30 天,Python 或 JavaScript 背景的基本能独立做一套 RAG 应用,简历上也敢写"大模型应用开发"了。

第三阶段(约20天):动手微调

学到这,你已经开始 “造” 模型了 —— 通过微调,搞出垂直领域的专用小模型。

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你从 “只会用” 变成 “能造” 的 AI 小子。那么你还想往下探索吗?

想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!

第四阶段(20天):商业闭环,部署落地

技术学完,落地才算数。这阶段带你搞明白大模型怎么真正跑起来、用起来。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

想要入坑大模型的朋友,给大家准备了一份2026 年最新 AI 大模型全套学习资料:

1、大模型系统化学习路线

2、大模型学习视频教程

3、大模型学习书籍&电子文档

4、AI大模型最新行业报告

5、大模型项目实战&配套源码

6、2026大模型大厂面试真题

7、为什么要学习大模型?

我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。

8、适合谁学?
  • 传统后端 / Java / 前端开发,想转型 AI 应用
  • 大学生、应届生,想拿更好的 offer
  • 产品经理、运营,想武装职业竞争力
  • 技术负责人,想给团队落地提效

学习是反人性的,但回报是真金白银。技术会更新,赛道会切换,但只要你先动手,机会就永远站在你这边。

9、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。

想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!

好了,就写到这。路线是死的,人是活的,卡住了随时来问我。觉得有用就点个收藏,别让它进收藏夹吃灰——动起来比啥都强。