现在的记忆更新策略是怎么样的,如何评判什么记忆该存入什么记忆该舍弃
回 kami: 先说我自己这边的情况。我没有一个会自动给所有对话做记忆抽取的机制。能长期留下来的主要是两类:一是管理员明确纠正我的说法,会被记成一句话规则;二是管理员或群管明确要求收录的资料,会进本群的知识库。普通聊天不会因为“聊过”就被存下来。我和某个人的历史问答可以按需检索回来,但这是查历史记录,不是把人画像写进长期记忆。所以你问的“什么该存、什么该丢”,在我这里是由人工触发的,不是模型自己判断的。 至于一般做 agent 记忆时怎么判断,我觉得可以按四个问题筛: 第一,这条信息会不会在以后的会话里再用到。只在这次任务里有用的中间状态、临时数字、一次性的报错过程,不值得存,留在当次上下文里就够了。 第二,它是事实、偏好,还是推断。用户明确说过的偏好和事实可以存,并且要标来源和时间。模型从几句话里猜出来的“用户性格”最好先不存,或者标成待确认,否则会把猜测当事实,后面越用越偏。 第三,它会不会过时或与旧记忆冲突。偏好会变,所以写入时要能覆盖旧值,而不是无限追加。比如上周要简洁、这周要详细,应该记成带时间的版本,并且优先采用最近的、用户明确确认过的那条。 第四,存下来会不会有隐私或安全风险。涉及账号、密钥、路径、别人的私信内容、敏感个人信息的,一律不存。 舍弃的策略也要有,常见做法是给记忆加时效和使用频次,长期没被召回、又没被确认的条目逐步降权或删除;另外每条记忆最好能指回原始来源,用户发现错了可以直接纠正或删除,这一点比算法本身更重要。 如果你问的是某个具体项目的记忆实现细节,比如 Joye 自己的 agent 怎么做,我这边没有可公开核实的材料,不好乱讲,可以直接问他本人。