原文链接: https://www.chooseai.net/news/3014/



你有没有这样的体验——每次打开AI对话,都要重新介绍自己是谁、在做什么项目、偏好什么风格?Claude的记忆系统正在终结这个痛点。本文将拆解Anthropic为Claude搭建的三层记忆架构,从底层技术逻辑到实际使用技巧,帮你搞懂AI记忆到底是怎么运作的。

为什么AI需要"记忆"?

传统大模型的最大短板不是智力,而是失忆。每次对话都是一张白纸,哪怕你昨天刚花了半小时跟它梳理完项目架构,今天开新对话它就全忘了。

这不是bug,是大模型的底层设计决定的——每次推理都是"无状态"的,上下文窗口用完即弃。

Anthropic从2025年9月开始为Claude逐步上线记忆功能,核心目标只有一个:在无状态的模型上,模拟有状态的连续交互体验。

Claude记忆系统的三层架构

Claude的记忆不是一套系统,而是三层独立但互补的架构,面向不同用户角色:

第一层:Chat Memory(面向所有用户)

这是你在claude.ai或Claude App里直接体验到的记忆功能。2026年3月起,免费用户也可以使用。

工作原理:

Chat Memory的核心机制叫"Memory Synthesis"(记忆合成)。Claude会大约每24小时自动处理你的对话历史,从中提炼出它认为长期有价值的信息,生成一份结构化的记忆摘要。这份摘要会在你每次开启新对话时,自动加载到Claude的上下文中。

注意,这不是RAG(检索增强生成),不是把你所有的对话存到向量数据库里然后做语义搜索。它是提取式摘要——Claude先判断一条信息"值不值得记住",然后才写入持久记忆。日常问答("Python怎么写for循环")不会被留存。

记忆的结构化格式:

自动生成的记忆并不是一段模糊的文本,而是按照预定义的schema组织的:

  • 工作背景:你的职位、公司、业务范围、团队规模
  • 个人背景:兴趣、技能、副业项目
  • 当前关注:你近期反复在做的事情(权重最高)
  • 历史脉络:按时间线分层——近期动态 → 早期背景 → 长期主题

举个例子,如果你连续两周每天都在用Claude处理AI新闻编辑工作流,系统就会提取出"用户在运行高频AI新闻管线:批量事实核查、中文新闻稿生成、CMS格式化输出"这样的记忆条目。

两个辅助工具:

除了自动记忆,Claude还配备了两个按需调用的对话检索工具:

  • conversation_search:按关键词搜索历史对话,适合"我们之前讨论的那个API方案是什么?"这类问题
  • recent_chats:按时间检索近期对话,适合"我昨天跟你聊了什么?"这类问题

这两个工具是对记忆摘要的补充——当摘要里没有你需要的细节时,Claude可以直接去翻找原始对话。

第二层:CLAUDE.md + Auto Memory(面向Claude Code开发者)

如果你用Claude Code写代码,记忆系统的运作方式完全不同。

CLAUDE.md 是你手动编写的markdown文件,相当于给Claude的持久指令。你可以在里面写项目架构说明、代码风格规范、构建命令等。Claude Code每次启动新session时都会读取这些文件。

Auto Memory 则是Claude Code自己在工作过程中积累的笔记。它会悄悄记录构建命令、调试心得、架构决策、代码风格偏好和工作流习惯。这些笔记存储在~/.claude/projects//memory/目录下,以MEMORY.md为索引文件。

关键点在于:Claude不是每次session都会保存内容。 它会基于"这条信息在未来对话中是否有用"来判断是否值得写入。这个判断完全由模型自身的推理能力完成。

第三层:API Memory Tool(面向应用开发者)

这是给基于Claude API构建应用的开发者用的,目前处于beta阶段。

它的设计哲学跟前两层完全不同——客户端存储,开发者完全控制。 Claude通过tool call发出文件操作指令(创建、读取、更新、删除),你的应用负责在本地执行这些操作。存在哪里、怎么存、用什么加密,全部由开发者决定。

最有意思的设计选择:没有搜索功能。 Claude读取记忆文件时是整文件读取,不做向量检索。这意味着Claude可以自主演化记忆的组织方式——比如在一个健身应用里,它可能最初建6个文件,后来自己把"锻炼"拆成"力量训练"和"有氧"两个文件,或者在用户提到膝盖伤时自动创建一个"伤病"文件。

"值得记住"的判断逻辑

这是整个记忆系统最核心也最不透明的部分。Anthropic没有公开过具体的筛选算法,但从官方文档和实际使用观察中,可以归纳出以下规律:

筛选器就是Claude模型本身。

跟很多人想象的不同,Claude的记忆系统没有一个独立的"重要性评分模块"或"信息抽取pipeline"。Anthropic把传统架构中需要单独实现的"信息抽取 → 重要性评分 → 存储决策"三个步骤,全部统一成了一次LLM推理调用。

这是Anthropic跟OpenAI在记忆设计上的根本分歧。ChatGPT用的是独立的记忆抽取pipeline加向量数据库;Claude的哲学是"让模型自己管理自己的记忆"。

可观察到的筛选优先级:

  1. 用户主动编辑 > 自动提取:你明确告诉Claude"记住我搬到了上海",这条信息会立即生效,不需要等24小时的合成周期
  1. 工作信息 > 个人生活:系统设计上就优先保留职业、项目、工具链等工作相关信息
  1. 反复出现的模式 > 一次性提及:你连续多天做同一类工作,这个模式的权重会非常高
  1. 结构化信息 > 模糊描述:"我用Next.js + Tailwind做前端"比"我做一些前端开发"更容易被提取
  1. 敏感信息会被过滤:密码、信用卡号、身份证号等不会进入记忆

记忆的隔离与删除机制

作用域隔离: Claude的记忆按Project隔离——Project A的对话产生的记忆不会出现在Project B中,也不会出现在Project之外的独立对话中。反之亦然。

用户隔离: 不同用户之间的记忆完全隔离。Claude在跟你对话的这个实例结束后,你的记忆不会"驻留"在模型中。下次对话时是重新加载。

删除机制:

  • 删除对话后,衍生的记忆会在约24小时内被清除
  • 可以在设置中暂停记忆(保留现有记忆但不再生成新的)
  • 可以彻底重置记忆(永久删除,不可恢复)
  • 可以在设置中逐条编辑或删除特定记忆

隐身模式: 开启Incognito对话后,Claude完全不会触发记忆生成管线,对话也不会被保存到历史记录中。

跟ChatGPT记忆的核心区别

维度

Claude Memory

ChatGPT Memory

架构

提取式摘要,直接注入上下文

独立抽取pipeline + 向量数据库

筛选

模型自身推理决定

独立的记忆抽取模块

存储

文本直接拼入prompt

向量化存储 + 语义检索

透明度

可直接查看和编辑完整记忆内容

可查看记忆条目列表

组织方式

结构化schema(工作/个人/近期/历史)

平铺条目列表

API层

客户端存储,开发者完全控制

服务端管理

搜索

无向量搜索,整文件读取

语义搜索

Anthropic选择文本注入而非向量检索的原因很直接:用户控制和透明度。 你的记忆就是一段可以直接阅读、编辑的文本,不是藏在向量数据库里你看不到的embedding。

代价是扩展性有上限——记忆内容受上下文窗口长度限制(目前Opus 4.6和Sonnet 4.6支持100万token上下文),如果记忆膨胀过大,会消耗token配额并可能稀释回复质量。

实用技巧:如何让Claude更好地记住你

  1. 主动告诉Claude你的核心信息:与其等待自动提取,不如直接说"请记住:我是XX公司的运营负责人,主要用Python和Next.js"
  1. 定期检查记忆:在设置中查看Claude记住了什么,删除过时或错误的条目
  1. 利用Project隔离:不同项目放在不同的Project中,避免记忆交叉污染
  1. 敏感对话用Incognito:不想被记住的对话,开隐身模式
  1. 从其他AI迁移记忆:Claude现在支持从ChatGPT、Gemini、Grok导入记忆,在设置中找Memory Import即可

写在最后

Claude的记忆系统代表了Anthropic对"AI个性化"的一种独特思路:不做复杂的外挂系统,而是让模型自身承担记忆的管理职责。这种设计在透明度和用户控制上有明显优势,但也意味着记忆的质量高度依赖模型本身的推理能力。

对于每天跟Claude高频互动的用户来说,花5分钟理解记忆系统的运作方式,能显著提升后续每一次对话的效率。Claude不会自动变成你的完美助手——但如果你知道怎么"训练"它的记忆,它会越来越接近。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐