AI智能体“记忆”之战:MemGPT作者怒批Mem0数据造假,争论焦点何在?

AI记忆框架MemGPT指控Mem0捏造基准数据,引发AI智能体记忆评估标准大辩论。

原文标题:4万星开源项目被指造假!MemGPT作者开撕Mem0:为营销随便造数据,净搞没有意义的测试!

原文作者:AI前线

冷月清谈:

本文聚焦AI智能体记忆框架MemGPT与Mem0间的激烈争议。MemGPT团队(Letta AI)公开指责Mem0在基准测试中数据造假,通过不当配置竞争对手的测试,得出误导性“SOTA”结果,尤其是在LOCOMO基准上。MemGPT团队通过实验展示,即便仅使用简单的文件系统工具,其智能体也能在LOCOMO上取得比Mem0宣称更优的成绩

这一争议引出对当前AI智能体记忆评估的深刻反思。Letta AI指出,记忆性能并非简单取决于记忆工具本身的复杂性,而更在于智能体如何有效管理上下文和调用工具。文章强调,智能体对简单工具如文件操作的熟练运用,往往比复杂的知识图谱更有效。Letta AI进一步提出,评估智能体记忆应侧重其在实际任务中的整体表现,并推荐其自有的Letta Memory Benchmark等新评估方法,以更全面地衡量智能体真实记忆及长期任务处理能力。

怜星夜思:

1、这次MemGPT和Mem0的争议,揭示了AI创业圈为了融资、为了营销,在数据上“注水”的现象。 大家觉得,这种行为在AI领域有多普遍?又该如何规范和避免呢?
2、文章里Letta团队说,简单的文件系统工具在特定基准测试里表现比复杂图数据库还好。这给我们开发AI智能体记忆系统啥启示?是不是越高级、越复杂的记忆方案,就一定越好用、效率越高?
3、作为想用AI智能体或者想开发AI智能体的普通开发者/用户,面对这些五花八门的记忆解决方案和互相矛盾的性能宣传,我们到底该怎么判断哪个才靠谱?有没有啥实用的方法或者经验,能帮我们‘避坑’?

原文内容

整理 | 褚杏娟

“我真的厌倦了看到那些急于求成的科技初创公司,为了讨好风投而在数据上撒谎,还贴上‘SOTA’的标签。”有网友吐槽。

事情源于高人气开源智能体记忆项目 Mem0 在今年 4 月底发布的一篇论文。论文中,该项目团队为可扩展的、以记忆为核心的架构 Mem0 提出了增强版本,并声称在 LOCOMO 上打败了所有人,其中,Mem0 在 “LLM-as-a-Judge” 指标上相较于 OpenAI 提高了 26%。(论文地址:https://arxiv.org/abs/2504.19413)

当地时间 8 月 13 日, 另一个高人气的智能体记忆框架 MemGPT 的创始团队 Letta AI ,其联合创始人兼 CTO Sarah Wooders 对此公开指控:

几个月前,Mem0 发布了 MemGPT 的基准测试数据,并声称在记忆方面达到了 “SOTA” 水平。


奇怪的是,我完全不知道他们到底是怎么跑这个基准测试的,如果不对 MemGPT 做重大修改,这个测试根本没法完成(他们没有回应我们关于实验具体运行方式的询问)。


arXiv 并不是经过同行评审的平台,所以不幸的是,近年来公司可以随意发布任何他们想要的“研究”结果来做市场营销。


我们很轻松就用一些简单的文件系统工具超过了他们的基准数据——这也说明这个基准测试本身并没有太大意义。

“Mem0 声称他们在 LOCOMO 上打败了所有人,但结果发现他们完全把竞争对手的实现搞砸了。然后还用这些糟糕的结果来证明自己的优势。等到 Letta 和 Zep 按正确方式跑了基准测试后,两者的得分都比 Mem0 的最佳成绩高出 10%。”网友评价道,“这个行业里的‘空气产品’多到离谱。我理解为了拿到风投,企业会夸大功能,但在科研论文里撒谎实在是可悲。”

两个“顶流”崛起

Mem0 和 Letta 的诞生都是为了解决大模型的长期记忆问题。

自 GPT-4 问世以来,大模型一直受限于固定的上下文长度。没有长期记忆,大模型和智能体会面临显著局限:它们会遗忘信息,无法随着时间学习和改进,并且在长时间、复杂的任务中会失去目标。

为此,在 2023 年,加州大学伯克利分校(UC Berkeley)的研究团队提出的一种创新型系统 MemGPT, 借鉴传统操作系统(OS)的理念,引入了智能体的记忆管理,通过构建记忆层级,让智能体主动管理哪些信息保留在即时上下文(核心记忆)中、哪些存储在外部层(对话记忆、归档记忆和外部文件),以便按需检索。这样,智能体可以在固定的上下文窗口内保持无限的记忆容量。

MemGPT 的研究迅速引起社区关注,MemGPT 论文的帖子在 Hacker News 首页上停留了 48 小时,开源后已累积 17.8k stars。

随着开源项目的推进,团队成立了名为 Letta 的公司,持续维护 MemGPT 开源框架,并推动其商业化和工程化落地。原来的 MemGPT 也升级成了 Letta。

这家由伯克利博士生 Sarah Wooders 和 Charles Packer 创立的 AI 初创公司备受期待。Letta 获得了由 Felicis 的 Astasia Myers 领投的 1000 万美元种子资金,本轮估值为 7000 万美元。此外,还得到了人工智能领域一系列天使投资人的支持,其中包括谷歌的 Jeff Dean、Hugging Face 的 Clem Delangue、Runway 的 Cristóbal Valenzuela 和 Anyscale 的 Robert Nishihara 等。

如今,许多智能体系统都实现了 MemGPT 的设计。

Mem0 则是由印度工程师 Taranjeet Singh 和 Deshraj Yadav 成立,源于他们构建开源检索增强生成 (RAG) 框架 Embedchain 的经验,该框架下载量超过 200 万次。

根据 YC 的介绍,Singh 曾作为首位增长工程师加入 Khatabook(YC S18),并迅速晋升为高级产品经理。他的软件工程职业生涯始于 Paytm(印度的 PayPal),亲历了其迅速崛起成为家喻户晓的品牌。他开发了一款由 AI 驱动的辅导应用,曾在 Google I/O 上亮相。他与 Deshraj 共同创建了 EvalAI,这是一个开源的 Kaggle 替代平台,GitHub 上获得了 1.6K stars。他还创立了首个 GPT 应用商店,用户规模突破 100 万。

Yadav 则广泛关注人工智能和机器学习基础设施领域,曾领导特斯拉自动驾驶的 AI 平台,支持特斯拉全自动驾驶开发中的大规模训练、模型评估、监控和可观测性。在此之前,Deshraj 在乔治亚理工学院完成硕士论文时创建了开源机器学习平台 EvalAI,并在 CVPR、ECCV、AAAI 等上发表过论文。

Mem0 认为,单纯地扩大模型的上下文窗口只会延缓问题的发生,模型会变得更慢、成本更高,而且仍然会忽略关键细节。团队选择通过一个通用、可扩展的记忆架构来解决问题,Mem0 充当了 AI 应用程序和大模型之间的记忆层,可以动态地从用户对话中提取、整合和检索重要信息。

Mem0 提供轻量级的记忆层 API 和向量检索,开源不到一天就获得了 9.7k stars,如今已累积 38.2k stars。Netflix、Lemonade 和 Rocket Money 等组织已采用 Mem0 来增强其 AI 系统的长期记忆能力。

此外,业内还出现了多种专用工具,将“记忆”作为可插拔的服务,为智能体提供存储与检索信息的能力,常见方式包括使用知识图谱或向量数据库等方案。

单独评估这些记忆工具的有效性极其困难。智能体的记忆质量往往更多取决于底层智能体系统管理上下文和调用工具的能力,而不是记忆工具本身。比如,即便一个搜索工具理论上性能更强,但如果智能体无法有效使用它,例如提示词设计差或训练数据中缺少相关示例,它在记忆场景下的表现也不会好。

因此,记忆工具的评估主要集中在类似 LoCoMo 这样的检索基准测试,而非真正的智能体记忆能力。

LoCoMo 是一个从长对话中进行检索的问答基准,专门用于评估大模型长期对话记忆能力,由 Snap Research 团队推出。每个样本包含两名虚构说话者和一份 AI 生成的带时间戳的对话记录,任务是回答关于说话者或对话中出现的事实问题。

分歧在哪里?

在 4 月底的论文中,Mem0 团队在之前的基础上引入了基于图的记忆表示,来增强关系建模能力。

之前,Mem0 的提取阶段处理消息和历史上下文以创建新的记忆;更新阶段则将提取出的记忆与相似的现有记忆进行比对,通过工具调用机制执行相应操作。数据库作为核心存储库,提供处理所需的上下文,并存储更新后的记忆。

引入基于图的记忆后,提取阶段利用大模型将对话消息转换为实体和关系三元组;更新阶段在将新信息整合到已有知识图谱时,采用冲突检测与解决机制。

在实际实现中,Mem0g 使用 Neo4j 作为底层图数据库 ,基于大模型的提取器和更新模块并借助具有函数调用能力的 GPT-4o-mini,从非结构化文本中进行结构化信息提取。通过将基于图的表示与语义嵌入以及基于大模型的信息提取相结合,Mem0 获得了复杂推理所需的结构丰富性和自然语言理解所需的语义灵活性。

在 LOCOMO 基准测试中,Mem0 表示其持续超越六种领先的记忆方法,表现为:响应准确率比 OpenAI 的提升 26% 、延迟比全上下文方法降低 91%、token 使用量节省 90%。

下图是不同记忆方法在 p50 和 p95 的总响应延迟比较,其中包括了大模型推理在内的延迟。

Mem0 团队认为,在 AI 智能体部署中,根据具体推理场景灵活调整记忆结构很重要:

Mem0 的稠密记忆管道擅长快速响应、简单查询,最大限度减少 token 消耗与计算开销;而改进后,Mem0 的结构化图表征能清晰解析复杂关系,支持复杂事件排序和丰富上下文整合,同时不牺牲实际效率。两者合力构建了一个多功能的记忆工具包,能够适应多样的对话需求,并具备大规模部署能力。

6 月时候,Sarah 在 GitHub 上询问 Mem0 是如何获得 MemGPT 的相关数据的,但没有回应。

“有一个记忆工具厂商 Mem0 发布了有争议的结果,声称在 LoCoMo 上运行了 MemGPT。但结果令人困惑,因为我们(MemGPT 的原团队)无法找到不进行大规模代码重构就将 LoCoMo 数据灌入 MemGPT/Letta 的方法。Mem0 并未回应我们对其基准测试计算方式的澄清请求,也没有提供支持 LoCoMo 数据回填的修改版 MemGPT 实现。”Letta 表示。

当地时间 8 月 12 日,Letta 发文称,Letta 在 LoCoMo 上仅通过将对话历史存储在文件中(而不是使用专门的记忆或检索工具),就达到了 74.0% 的准确率。这表明:

  1. 之前的记忆基准测试可能并不十分有意义;

  2. 记忆更多取决于智能体如何管理上下文,而不是所使用的具体检索机制。

Letta 表示,虽然 Letta 本身没有原生方式导入 LoCoMo 那样的对话历史,但其最近为 Letta 智能体(包括 MemGPT 智能体)增加了文件系统功能。“我们好奇,如果只是把 LoCoMo 的对话历史放进一个文件,而不使用任何专用记忆工具,Letta 的表现会如何。”

当文件被挂载到 Letta 智能体后,智能体可以使用以下文件操作工具:

  • grep

  • search_files

  • open

  • close

对话数据被放进一个文件并上传挂载到智能体中。Letta 会自动解析并嵌入文件内容,以便进行语义(向量)搜索。智能体可以用 search_files 做语义搜索,用 grep 进行文本匹配,再用 answer_question 回答问题。

为了与 MemGPT 的原实验保持一致,Letta 用 GPT-4o mini 作为模型。由于 GPT-4o mini 能力较弱,Letta 让智能体部分自治,通过规则限制其调用工具的模式:必须先调用 search_files 搜索文件,再不断搜索直到决定调用 answer_question 并结束。搜索什么、搜索多少次由智能体自行决定。

“这个简单的智能体在 GPT-4o mini 和最少提示调优的情况下,就在 LoCoMo 上取得了 74.0% 的成绩,明显高于 Mem0 报告的其最佳图记忆版本的 68.5%。”

Letta:能力比工具更重要

Letta 认为,如今的智能体在使用工具方面非常高效,尤其是那些很可能出现在训练数据中的工具,如文件系统操作。因此,很多原本为单跳检索设计的专用记忆工具,还不如直接让智能体自主迭代搜索数据来得有效。

智能体可以生成自己的搜索查询,而不仅仅是检索原始问题,例如将 “How does Calvin stay motivated when faced with setbacks?” 转化为 “Calvin motivation setbacks”,并且智能体可以持续搜索直到找到正确数据。

智能体是否“记住”了某事,取决于它能否在需要时成功检索到正确信息。因此,更重要的是考虑智能体是否能够有效使用检索工具(知道何时以及如何调用),而不是纠结于具体的检索机制(如知识图谱还是向量数据库)。

Letta 还提出,目前智能体能够非常高效地使用文件系统工具,在很大程度上是因为后期优化重点偏向智能体的编码任务。一般来说,越简单的工具越可能出现在智能体的训练数据中,也越容易被有效利用。虽然更复杂的方案(如知识图谱)在特定领域可能有用,但它们可能更难被 大模型(智能体)理解。

“智能体的记忆能力取决于智能体的架构、工具和底层模型。比较智能体框架与记忆工具,就像比较苹果和橘子,因为框架、工具和模型都是可以自由组合的。”Letta 说道。

那如何正确评估智能体记忆能力呢?

Letta 先推荐了自家的 Letta Memory Benchmark(Letta 排行榜) 提供了同类对比(apples-to-apples),在保持框架(目前仅 Letta)和工具不变的情况下,评估不同模型在记忆管理方面的能力。该基准在动态上下文中即时生成记忆交互场景,从而评估智能体记忆,而不仅仅是检索能力(如 LoCoMo)。

然后指出,另一种方法是直接评估智能体在需要记忆的具体任务中的整体表现。例如 Terminal-Bench,测试智能体解决复杂、长时间运行任务的能力。由于任务时间长且需要处理远超上下文窗口的信息,智能体可以利用记忆跟踪任务状态与进度。

最后,Letta 总结道,对于设计良好的智能体,即便是简单的文件系统工具,也足以在 LoCoMo 这样的检索基准中表现优异。

参考链接:

https://x.com/sarahwooders/status/1955352237490008570?s=46

https://www.letta.com/blog/benchmarking-ai-agent-memory

声明:本文为 AI 前线整理,不代表平台观点,未经许可禁止转载。

会议推荐

首届 AICon 全球人工智能开发与应用大会(深圳站)将于 8 月 22-23 日正式举行!本次大会以 “探索 AI 应用边界” 为主题,聚焦 Agent、多模态、AI 产品设计等热门方向,围绕企业如何通过大模型降低成本、提升经营效率的实际应用案例,邀请来自头部企业、大厂以及明星创业公司的专家,带来一线的大模型实践经验和前沿洞察。一起探索 AI 应用的更多可能,发掘 AI 驱动业务增长的新路径!


今日荐文

图片

你也「在看」吗?👇

这问题问到点子上了!我做开发也遇到过,有时候你辛辛苦苦搞一套分布式、高并发、微服务的架构,结果跑起来还没人家一个单体应用效率高。这里面核心是‘匹配度’。对AI智能体来说,‘记忆’就是工具,LLM怎么用这个工具是关键。如果大模型本身的‘悟性’和‘工具调用能力’还没进化到能驾驭复杂知识图谱的程度,那给它个简简单单的文件系统,反而能让它‘发挥稳定’。我觉得未来的开发方向,应该是在保证数据可达性的前提下,尽量让工具接口傻瓜化、通用化,把‘智能’的重心放在智能体自身的决策和规划能力上。复杂交给后处理,简单交给前端调用。

问我普不普遍?哈哈哈,你不觉得现在朋友圈里晒的AI应用都自带‘美颜滤镜’吗?跟买家秀和卖家秀一样!有些项目,你看到的数据比我头发都茂盛,结果一上手,跑得比乌龟还慢。我觉得吧,这就像在AI界搞‘p图大赛’,谁p得好谁拿融资。怎么避免?大概只能等着哪天这些‘数字模型’们集体大罢工,拒绝配合表演,才能真正看到谁在裸泳吧。或者,强制所有AI公司公布原始训练数据和测试环境,不然就是‘概念股’,股民先跑为敬!

哎呀,‘注水’这事儿哪行哪业没有啊?特别是现在AI这么火,钱又多,总有人想搭顺风车。你看前几年元宇宙也是,概念一大堆,落地没几个。我觉得吧,这跟‘内卷’也有关系,大家都在抢SOTA,抢曝光,不吹点牛咋办?解决办法嘛,可能就得等市场和用户更成熟点,能自己分辨真假,然后劣币自然就被淘汰了呗。毕竟,用户不是傻子,产品不行迟早露馅。

针对#AI智能体记忆#的讨论,Letta团队的发现确实引人深思。这并非简单地否定复杂方案,而是提醒我们需重新审视“复杂”与“有效”的关系。AI智能体的“记忆”能力,其核心在于信息的“检索效用”而非存储复杂性。如果智能体本身能通过简单的文件操作工具,高效地生成检索查询并迭代搜索,那么过早引入复杂的记忆结构,如知识图谱,反而可能因为LLM对这些高级工具的理解和使用成本更高而适得其反。未来的研究方向,或许应更侧重于提升LLM本身的“工具使用能力”和“上下文管理策略”,同时结合多模态、强化学习来动态调整记忆机制,而非盲目堆砌复杂的存储后端。简而言之,“巧用”比“拥有”更重要。

面对#AI智能体记忆选择之困#,作为开发者,首先,别轻信‘SOTA’。最稳妥的方法是进行自己的‘小规模验证测试’。可以针对你实际的应用场景,设计几组核心的、有代表性的任务,将不同记忆解决方案(如向量数据库、知识图谱、或简化的文件系统模拟)集成到你的代理中,在真实数据集上运行,横向比较它们的准确率、延迟、成本和鲁棒性。其次,关注其社区活跃度、文档完善度、以及是否有可靠的成功案例。最后,深入理解底层机制:它们如何处理信息提取、更新、冲突解决和检索,这比单纯看某个单一指标更重要。选择能与你现有技术栈无缝集成、有良好维护支持且能清晰解释其工作原理的方案。

这不就是‘大道至简’的道理嘛!我们总觉得搞个高科技,就得用最炫酷的、最复杂的。结果发现,有时候把最基础的工具用好,反而能出奇效。就像学武功,你把马步扎稳、基本拳练熟了,比那些花里胡哨的套路可能实战效果更好。搞不好AI也是这样,它现在就特别擅长‘读文件’、‘grep搜索’这些基础操作。所以科学家们,别老盯着那些听起来高大上的‘图数据库’了,先把‘扫地僧’(文件系统)的潜力挖干净了再说!

关于#AI数据造假#这个议题,从学术界视角来看,这种为了商业利益而罔顾科学严谨性的行为,无疑是对整个领域信任基础的侵蚀。其普遍性可能与当前AI领域迭代速度快、资本涌入、以及同行评审机制在某些非正式发布渠道(如arXiv)的滞后性有关。长远来看,除了加强伦理规范和行业自律,更关键的是建立独立、透明、可复现的基准测试平台,并鼓励开源社区对结果进行广泛验证,形成一个“人人可查证”的生态。此外,投资方也应提高对技术实测的鉴别能力,而非仅凭光鲜数据做决策。

Emmm,这个问题问得太实际了!我给你说个‘土办法’:别看广告看疗效!那些几万星的项目,可能只是社区点赞多,不代表真好用。我会先去GitHub上看看它的Issue区,是不是一堆bug,维护者回不回复?再看看最近代码是不是还在更新,项目是不是还活着。然后,如果有Demo一定得自己跑一下,别光看人家演示视频。最后,找几个也在用这玩意儿的朋友、同事聊聊,‘真人’的反馈永远比官方宣传稿靠谱。万一实在没头绪,就先从最简单的、最成熟的方案入手,至少试错成本低。毕竟,咱们不是科学家,咱们是要解决实际问题的。

这不就是现代人的‘选择困难症’吗?买个洗发水都得研究半天配方和是不是SOTA,何况是这么复杂的技术!我的建议是:抓阄!开玩笑啦。其实吧,你得先问自己几个问题:你的应用场景对实时性要求高不高?数据量有多大?预算够不够?如果只是小打小闹,拿个免费的开源方案随便玩玩得了,别指望它能记住你祖宗十八代。如果要搞大项目,那只能老老实实地:钱到位,找专家,花时间,自己测!毕竟,‘别人的SOTA’不一定是‘你的SOTA’。实在不行,就用最原始的文本文件,起码它不会骗你,因为它压根儿没说自己能记住啥!