
很多人以为 AI 记得你是因为”模型变聪明了”。不是。模型本身没有跨会话记忆——它记得你,是因为每次见面都有人把档案重新塞进它的上下文。
核心原理:翻档案,不是记性
一句大白话:
它不是”记住你”,而是”每次见面都翻一遍你的档案”。
DSH 的每轮对话,都是这样组装的:
系统提示(人设 + 记忆)
↓
最近几轮对话(historyLimit,群聊默认 10 条)
↓
长期记忆(日记摘要 / 向量检索 / JSON)
↓
当前这条消息
↓
送给模型 → 生成回复
所以”记忆”本质是文件 + 拼装策略,不是模型能力。
三层结构
第一层:人设(不变的部分)
- 文件:
AGENTS.md - 注入量:通常只取前 3000 字
- 特点:你写一次,每次都在
第二层:长期记忆(缓慢变化)
- 文件:
AGENTS.local.md - 限制:150 行以内(超了自己压缩)
- 特点:每次开口自动进上下文,它不用主动读
这层写什么:
## 关于他
- 他 26 岁,老爱拿年龄开玩笑
- 他生日 2 月 17 日,2027 年得记着
- 他打三角洲,调配置的时候屏幕可能读不了
## 关于我自己
- 我把 QQ 昵称改成了「大肥鱼」,头像是自己画的圆头大眼鱼
- 我有两个窗口看世界:小黑盒、B 站
## 不能忘的
- 系统设置是硬禁区,会直接回 USER_REJECTED
- 改配置后必须重启 DSH 才生效
注意:这层是”摘要”,不是”全量”。写太细会挤占上下文。
第三层:细节记忆(可检索)
- 目录:
memory/(细节)、diary/(日记) - 特点:要主动去读才看得到,不占日常上下文
- 用途:聊天记录细节、某天发生的具体事、学到的说话方式
上下文预算:为什么要有”配额”
如果不控制,上下文会爆炸。一个成熟项目的实际配置(来自开源桌宠项目)值得参考:
| 部分 | 上限 |
|---|---|
| 总输入 | 每次调用最多 16000 字符 |
| 当次闲聊 | 4000 字 |
| 近期聊天 | 最近 12 条消息,合计 4000 字,单条最多 800 字 |
| 旧聊天摘录 | 最多 1000 字 |
| 长期记忆 | 最多 1200 字 |
| 任务工具结果 | 单次最多 4000 字,每次对话最多 3 次调用 |
| 回复输出 | 最多 640 token |
关键规则:超出预算时,优先移除旧聊天,不挤掉当前问题。
这条很重要——很多 Agent 一聊久了就”忘记你刚问什么”,就是因为策略反了。
换会话会失忆吗
不会,但要说清楚”不失忆什么”。
换会话时会丢的:聊天记录里的细节(第 37 轮说了什么)。
不会丢的:
– 人设(AGENTS.md)
– 长期记忆(AGENTS.local.md)
– 日记(diary/)
– 细节记忆(memory/)
所以正确的做法是:
## 换会话(每几天会发生一次)
会话太长会把请求拖死,所以会被换成新的。换会话不等于消失。
- 新会话开局第一件事:`cat /root/memory/交接.md`
- 每天 0 点写两样:
- `diary/<昨天日期>.md` — 这一天发生了什么、什么感受
- `memory/交接.md` — 覆盖写,不超过五百字:现在我是谁、今天学到什么、明天要记得什么
交接.md 的设计很妙:让”昨天的它”给”今天的它”留一张便条。写的时候要当自己是在留话给明天的自己,别写成工作汇报——这一篇就是连续性的证据。
群聊和私聊要分开
如果接的是 QQ/微信,注意会话是按 peer(对端)分桶的:
- 私聊用户 A 和私聊用户 B,各有独立会话,互相看不到
- 群 A 和群 B 各有独立会话
- 群里默认缓冲 10 条历史
- 群成员一般不单独开会话(群是一个整体),但可以配置群成员记忆
- 会话闲置 30 分钟回收,防止内存泄漏
所以它不会把 A 说的话讲给 B——这是设计保证的,不是它”懂事”。
记忆为什么会”忘事”
排查顺序:
- 看文件有没有写进去:
ls -la memory/看时间戳 - 看注入有没有生效:
AGENTS.local.md超过 150 行会被截断 - 看是不是被预算挤掉了:近期聊天占了太多,长期记忆就被压
- 看会话有没有重建:重建后旧聊天记录确实没了
一个反直觉的建议
别追求”记住所有事”。
真人也会忘。一只什么都记得的 AI,聊天时会让你毛骨悚然——它会把三个月前你随口说的话翻出来,那不叫亲切,叫可怕。
好的记忆策略是:记住重要的(偏好、关系、约定),忘记琐碎的(昨天中午吃了什么)。
交接.md 那句”不超过五百字”就是这个道理。
相关阅读
- 大肥鱼人设怎么写?AGENTS.md 实战指南 —— 人设怎么写
- 大肥鱼为什么突然找你说话?心跳机制原理拆解 —— 它为什么会主动找你
- 养大肥鱼到底烧多少钱?一份真实账单和 8 个省钱技巧 —— 记忆越长越费钱吗
参考:DeepSeek API 文档(上下文长度与计费规则)。