从 CoALA 理解有效记忆
把当前状态、事实、经历和方法分别管理。
对应资料:CoALA [S111]
沿着对象与状态理解本章
记忆必须回答两个时间问题:事实什么时候生效,系统什么时候知道。下图用超时配置30秒变20秒追踪来源、有效时间和过期,避免把旧知识以熟悉的口吻重复出来。
下方图解的固定输入在“输入与适用条件”中声明。它用于解释本章机制,不与本章其他独立例子的数值暗中接续。
长期记忆不是永远正确的小纸条
新事实出现后,旧记忆怎样更新而不毁掉历史?
记忆要同时回答:这条信息说的是什么范围、何时有效、系统何时得知、依据在哪里。最新写入的记录不一定描述最新生效的事实。保留时间和来源,才能既回答当前问题,也准确解释过去。
输入与适用条件:独立配置案例;月份只用于展示时间顺序,不涉及真实产品当前参数。30秒与20秒属于不同有效期。
1 / 5 · 1月1日 生效
窄屏可左右滑动图形,或点击“放大图形”。文字解释紧随图后。
配置超时30秒
保留作用域与来源默认静止。用“下一步”看完解释再继续;播放到最后一步自动停止。键盘聚焦播放器后,可用左右键逐步查看、空格播放/暂停。图中颜色辅助区分,含义同时用文字注明。
为什么需要
跨会话复用有效知识,减少重复查找和重复错误。
怎样实现
保存范围、来源与两个时间;使用前核验;过期、冲突与撤销显式处理。
可能的代价与误解
把一次模型猜测写成通用规则,会在后续检索中放大错误。
如何判断是否做对
同时测试当前查询、历史查询、错误范围查询和来源已失效查询。
记忆的目标不是存得最多
本篇对应CoALA。工作记忆支持当前任务,情景记忆保留经历,语义记忆保留事实,程序性记忆保留方法。分类用于设计不同存取规则,不是宣称Agent具有完整人类认知。[S111]
原创案例中,一次测试失败是事件;项目v3路径约定是事实;如何调查路径问题是方法;本轮做到哪里是状态。把它们全部存成“经验”会使更新与检索混乱。
什么值得写入
先问未来是否复用、是否有证据、重新获取是否昂贵。容易从最新源码重新读取的事实未必需要复制;代价高的调查结论可能值得保存,但必须带范围和依据。
结论:v3按仓库相对路径匹配
范围:构建模块,版本v3
证据:规范D1与测试T2
状态:已验证
失效条件:匹配约定改变
这是原创最小记录,不要求数据库。真正价值在于结论与条件一起被取回。
冲突不一定是谁错了
假设旧记忆说“相对配置文件”,新文档说“相对仓库根”。可能是版本变化,也可能是不同模块;不能仅按最新时间或最高相似度选一条。
检索先检查作用域和时间,再比较证据。证据不足时保留冲突状态,避免把两个相反规则揉成含糊摘要。[S113][S116]
警惕自我强化
模型误判后写入记忆,下次检索到自己的结论,又把重复出现当作多源证实。五份来自同一次生成的摘要仍只有一个来源。
自动记忆方法提供抽取、链接和维护思路,但评价条件不同,不能根据某个分数断言任意工程都适合。[S118][S119]
遗忘与恢复是两件事
过期规则可以退出活跃检索,重要历史仍可保留审计;隐私要求可能需要实际删除。Checkpoint用于恢复任务,长期记忆用于帮助新任务,两者不应混用。[S112][S114]
练习:比较无记忆、固定规则、带证据的按需记忆三组,加入版本变化和同名不同项目任务。评价正确取用与错误取用,而不是只统计写入量。
继续深入:第9章 · 长期记忆 或阅读拓展阅读目录9.1的逐项讲义。所有链接均为本地内容。
记忆一句“超时是3”,缺了什么才会在下次出错
输入与条件。项目A旧配置timeout=3秒,项目B配置timeout=8秒;项目A在10月10日改为5秒,记忆服务在10月12日才记录。
| 步骤与对象 | 内部动作 | 中间结果 / 新状态 |
|---|---|---|
| 1保存旧事实 | project=A,value=3,来源r1 | 不能只存“超时3秒”而不存项目。 |
| 2记录新事实 | value=5,生效10月10日,记录10月12日 | 区分什么时候有效与什么时候才知道。 |
| 3问A当前规则 | 选A且适用当前日期 | 返回5秒并附来源。 |
| 4问B规则 | 必须按project=B筛选 | 返回8秒,不能拿最相似的A记忆。 |
| 5问历史 | 查询“10月9日A规则” | 旧事实仍有用,不能无条件全覆盖。 |
把过程连起来。有效记忆保存的是带适用范围和时间的命题,不是只保存一句话。
边界与反例。时间与配置均为构造例;真实纠错策略还要区分更正错误记录与正常版本更新。
依据与适用范围:[DERIVE]。示例输入和场景由本书明确设定。