我曾以为Markdown记忆对智能体足够用了。结果它变成了提示债。
摘要
作者反思了将扁平化Markdown文件用作智能体长期记忆的局限性,随着记忆增长,这导致了提示债,并提倡使用基于图的记忆表示方法,动态检索相关上下文。
我曾一度认为Markdown记忆对智能体足够用了。在我的OpenClaw设置中,智能体记忆基本就是Markdown文件。可读、可编辑、易于备份,没有奇怪的供应商锁定。老实说,这感觉像是正确但乏味的答案。
然后它增长到80多个md文件,字符数超过500万。从技术上讲,是的,它们都还在“那里”。但每次运行都开始感觉像:“请扫描这堆巨大的笔记,然后以某种方式猜出哪些部分仍然重要。”这就是一直困扰我的地方。存储解决了,但记忆没有。
扁平文本记忆的烦人之处在于,它在某个规模下运行良好,然后悄无声息地变成了提示债。项目事实、旧bug、决策、人员、偏好、半死不活的计划……它们都作为文本块等在那里,等待着被重读,仿佛它们具有同等重要性。
最后让我恍然大悟的是——奇怪的是在洗澡时,哈哈——我想要的不是一个更好的笔记本。而是希望智能体能够为当前任务呈现记忆中的相关部分。所以我最终转向了图记忆:每个记忆作为一个节点,关系存储为边,检索变成“地图的哪个部分现在应该亮起?”而不是“把前10条相似的笔记塞进上下文。”
不是说Markdown不好。我仍然喜欢它作为归档/导出格式。我只是不认为长期智能体记忆在足够庞大后还能保持纯粹的文本形态。
相似文章
@DanKornas:大多数智能体不需要更多提示词。它们需要的是适合任务的记忆。Agent Memory Techniques 是一个实操 GitHub 指南……
一份实操 GitHub 指南,包含 30 个可运行的 Jupyter notebook,涵盖 LLM 智能体的记忆模式,按短期记忆、长期记忆、认知架构、检索、框架和评估/生产等部分组织,并提供决策树和对比矩阵。
我曾询问是否存在一种以本地优先的 Markdown 记忆服务器。你们给出了约 20 个建议。以下是我逐一调研后的发现。
全面回顾以本地优先的 AI 智能体记忆系统,对比了 mem0、Hindsight 和 mnem 等选项,最终推荐 Engram,因为它独特地结合了本地存储和人类可读的 Markdown 文件。
@mem0ai: https://x.com/mem0ai/status/2054580022049198513
这篇文章解释了Codex CLI(OpenAI的开源编码代理)中的记忆机制。它描述了基于markdown文件的记忆架构、包含分阶段提取和整合的写入路径,以及使用关键词搜索的读取路径,所有设计都是为了可预测性和低检索成本。
@tricalt: https://x.com/tricalt/status/2057173322924806651
一位创始人讨论了在生产环境中使用Markdown文件作为AI代理记忆的扩展挑战,突出了关于权限、多代理交互和时间查询的常见陷阱,并指出团队常常在不经意间修补这些问题的过程中,实际上是在重新构建一个更复杂的系统。
我曾以为智能体记忆只是存储问题。现在我不这么认为了。
一位开发者重新思考智能体记忆,认为它不仅仅是存储,而是提出了一个带有角色和激活场的活图,用以赋予过去信息适当的权威和上下文。