记忆是怎么工作的
角色留下什么、忘掉什么,以及怎么让一件事记牢。
把一段对话往前推的是三样分开的东西:还留在窗口里的原始消息、掉出窗口那些消息的滚动摘要,以及存放耐久事实的记忆库。它们的行为不一样,角色“忘了”某件事的时候,值得弄清是哪一层松了手。
三层
| 层 | 它住在哪儿 | 能装多少 |
|---|---|---|
| 实时消息 | 对话本身 | 最近的 10,000 token——或者模型上下文窗口的 25%,取更小的那个——并且最多 50 条消息 |
| 对话摘要 | 那一个聊天里,在聊天设置 → 对话记忆下 | 三级:阶段摘要,然后合并摘要,然后全程记忆 |
| 保存的记忆 | 侧边栏的记忆标签页,按角色以及全局 | 每个范围 100 条,外加 20 条置顶的,每条最多 500 字符 |
实时窗口是刻意和你选的模型脱钩的。选一个上下文有一百万 token 的模型,并不会让更多原始消息留在场上;它改变的是消息周围还能塞进什么。
消息掉出实时窗口后,会在一个回合结束之后被摘要,一次几块。四条阶段摘要合成一条,四条合并摘要再变成一条全程记忆——全都只限于那一个聊天。你可以在聊天设置 → 对话记忆下读它们、编辑和重建,那里也会显示还有多少条消息没进摘要。
保存的记忆住在哪儿
一条记忆属于两个范围之一,添加时就选好:角色特定记忆或全局记忆(每个角色都看得到)。整个范围模型就这么多。
两个副作用:在群聊里,角色读到的是每个成员的记忆的并集,再加上全局的;而如果一个角色被删掉了,挂在它名下的记忆会变成全局的,而不是消失。
每一回合,角色会收到所有置顶条目,外加最多 100 条非置顶的,最新的在前,并且在当前生效的几个范围之间均匀铺开,最近 7 天内更新过的会被标为“近期”。
一件事是怎么被保存下来的
| 路径 | 谁来做 | 备注 |
|---|---|---|
| 角色在回复中途自己存 | 模型 | 需要支持工具调用的模型。它也能更新或删掉自己先前写的条目 |
| 添加记忆 | 你 | 把事实打进去,选个范围 |
| 一键初始化记忆 → 生成记忆 | 你,然后是 AI | 从你写的一段描述里回答“你希望角色记住什么?”,最多 1,000 字符 |
| 从对话保存 | 你,然后是 AI | 挑最多 20 条消息,然后 AI 提取 或 使用原文 |
| 深度记忆 | 你的订阅 | 见下文 |
生成记忆不会读你的聊天。 它只从你打进框里的那段描述工作。真正读对话的功能是从对话保存:选出要紧的消息——一个承诺和对它的回应通常该放在一起——看看最多五份草稿,然后保存。那样存下来的东西一律是置顶的。
如果你重新生成一个回合,那个回合写下的记忆会跟着回滚。置顶条目不受影响。
置顶
置顶是你让一件事变永久的办法。一条置顶条目:
- 每一回合都会完整发给角色,永远不会被更新的条目挤掉;
- 有自己的额度——每个范围 20 条,在那 100 条非置顶的之上;
- AI 不能编辑也不能删除,只有你能;
- 在回退或重新生成对话时存活;
- 第一次运行清空所有记忆时会被留下。
非置顶条目没有这些保护:角色可以改写或删掉它们,后台那一遍也可以。如果一件事要紧——你希望被怎么称呼、一条边界、一个有日期的承诺——就把它置顶。
深度记忆
需要有效订阅。 每当一批较早的消息被摘要出实时窗口,Reverie 就会重读那一批,找出持久的细节并归档成记忆。它在对话进行中跑,在后台,就在触发它的那次压缩之后——不是夜里跑,也不是按时间表跑。回复从不会等它,它也不花你的积分。
这一遍是被刻意限制住的:它每次只做少量改动,从不碰置顶条目,而且要积累到一段新消息才会动。它只在网页版聊天里跑——Discord 和 Telegram 不跑——而且在悬赏挑战的聊天里从不跑。适用于你时,面板上的深度记忆会带一个已启用徽章。
免费账号上没有自动的那一遍。角色仍然会在回复中途保存记忆,面板也照常能用。
记忆关掉时
- 从聊天中学习是个按角色的开关,默认开着。关掉它会同时停掉保存和读取——角色既不学,也看不见已有的记忆。
- 在不支持工具调用的模型上,角色没法在对话中途保存;保存过的记忆照样会被用上,订阅用户的深度记忆那一遍也照样跑。
- 在悬赏挑战的聊天里,记忆被完全禁用,所以每一次尝试都从同一张白纸开始。
- 没登录时,什么都不会保存。
记忆还是摘要?
记忆留的是几周之内都还成立的事实——一个偏好的称呼、一个生日、一项过敏、一个明确的承诺。剧情进度、今天的心情和变动中的关系,属于对话摘要。如果你说过的某件事在记忆里找不到,先去摘要里看看,再动手加。
清空所有记忆会删掉那个范围里每一条非置顶条目,而且无法撤销。你的置顶条目会在第一遍里活下来;Reverie 随后会另外问一次要不要把它们也删了——“这些是你亲手标记、并且不让 AI 改动的重要时刻。”