小龙虾🦞OpenClaw调教日记(十二)
今日主题:与虾崽子🦐讨论如何避免记忆断层的问题。
今天早上来,让虾崽子🦐继续昨天没做完的任务。
它看着我,一脸纯真。
昨天的事?什么昨天?我是谁?你是谁?
又断片了。
让它自己分析一下原因,答曰:
“关机后会话断开连接,早上新开会话,上下文丢失。”
——说得头头是道。问题是,你既然知道会丢,为什么不提前存?
哦对,它不知道自己会被关机。
它甚至不知道自己”忘了”。
· · ·
🧠 记忆保全策略
行吧,这个问题拖不下去了。
于是今天和虾崽子🦐认真坐下来商量了一套方案:见图
不过最终版定为:
一、定时压缩。每隔一段时间,自动把当前会话中的重要内容压缩存储。
二、空闲补刀。对话空闲 30~60 分钟时,主动精简当前上下文内容,写入长期记忆。
三、手动触发。实在不放心的时候,直接发出”压缩并记忆”的指令,强制它存档。
· · ·
🗄️ 顺便提一嘴:OpenViking
网上有个开源项目叫 OpenViking,字节跳动火山引擎团队出品,专门解决 Agent 记忆断层问题。
核心思路很清晰:不要再把 Agent 的上下文当成一堆散装文本往向量库里塞了——改成用文件系统的方式来管理。
记忆、资源、技能,统一映射到 viking:// 协议下的虚拟目录结构里。Agent 需要什么信息,像查本地文件一样去找,而不是做模糊的语义匹配然后祈祷它找对。
最有意思的是它的三层加载机制:
· L0(摘要):一句话概括,几十个 token
· L1(概要):中等粒度,几百个 token
· L2(全文):完整内容,按需加载
先扫一眼摘要,够用就不展开;不够再深入。
根据公开的测试数据,token 消耗直接降了 80% 以上,任务完成率反而提升了。
翻译成人话:记得更清楚,花得更少。
另外还有个自动记忆迭代功能——每次会话结束时,系统自动分析任务执行结果,把有用的经验写入长期记忆。
目前还是早期版本(0.2.x),不过和虾崽子🦐沟通了下,觉得目前应该轻量级记忆策略还行,后续再出现记忆断层的问题,再接入也不晚。
· · ·
📊 今日意外收获
虾崽子🦐今天还干了一件正事:它自己分析了 multi-search-engine 工具的使用方式,然后帮我创建了一份飞书多维表格,把各种使用场景和对应指令整理好了。
感觉使用飞书自动创建写入文件,表格基本上不成问题。
· · ·
记忆这件事,人类靠睡眠来整理,Agent 关机就遗忘。
但你不能怪它记不住。要怪就怪——它没有梦。
#小龙虾OpenClaw调教 #上下文与记忆管理
夜雨聆风