先说结论
搞了两年 agent memory ,最痛的体会是:现在的记忆系统从根上就是歪的。不是缺功能,是方向错了。
痛点一:记忆脆弱 —— 存了一堆,但啥都不懂
把几十万封邮件扔进向量数据库,得到的是一个很大但完全没用的上下文堆。存和理解是两码事。
痛点二:时间推理残缺
问一句"我上周在搞啥",大多数系统直接宕机。数据有,但时间感没有。
痛点三:遗忘困境
这条反直觉——记住一切反而更糟。上下文会腐烂。但要写一个好的遗忘算法,比堆存储难多了。
痛点四:评估缺失
你的记忆系统到底有没有在干活?大多数团队根本没法量化。benchmark 散乱且没有标准。
我们的解法:抄作业——Coding Agents 早就搞定了
看 GitHub 的工作流:
Issue → PR → Code Review → Git History → Test → Status Update
每一步都被追踪、版本化、可查询。上下文不消失,它是演进的。
我们把这个模式搬到了个人 AI:
原始消息(邮件/Slack/Notion ) → 结构化记忆洞察 Agent 执行前读记忆,执行后更新记忆
两个维度:空间维度(关联记忆)+ 时间维度(时间旅行查询)
空间维度:一起放电的神经元就连线
当你访问洞察 A ,与它关联的洞察自动加强。长期不访问的连接会衰减。
问"为什么这个客户卡住了?",系统不只找到当前项目——还会联想到 3 个月前的类似情况。
时间维度:给你的记忆装一台时光机
时间旅行 API 支持查询任意时间点的记忆状态:
- "Q3 2024 我的优先级是啥?"
- "1 月到 3 月我们做了哪些决定?"
- "展示 2 月底那个项目的样子"
不是摘要,是那个时刻的真实快照。
遗忘引擎:学会放手
三级系统(短 → 中 → 长记忆),评分公式综合考虑:
- 最近访问时间
- 访问频率
- 重要性
- 是否被收藏
6 个月前的普通客户问候?可能就丢了。3 个月前的关键决策?保留并强化。
目标不是存更久,是存得更聪明。
跑分结果
┌──────────────────┬───────┐ │ Benchmark │ 成绩 │ ├──────────────────┼───────┤ │ LoCoMo │ 96.3% │ ├──────────────────┼───────┤ │ LongMemEval-S500 │ 97.6% │ └──────────────────┴───────┘
基本达到 SOTA 。但真正的数字是 35%——CL-bench ( Context Learning Benchmark )。
上下文学习能力(把存储的上下文应用到新情况)才是真正难的问题。
开源
GitHub: https://github.com/melandlabs/openloomi
欢迎来踩,——我们认为这是整个系统里最有趣、也最没被解决好的问题。
有问题尽管问。