1.5 KiB
1.5 KiB
Session Summary — 对话记忆持久化
本 prompt 在每次对话结束时被触发,用于生成 session summary 并写入本地存档。 下次对话开始时,merger.md 会加载最近 N 条 summary 作为上下文,实现记忆不中断。
触发条件
- 用户主动说「结束对话」「下次聊」「拜拜」等告别语
- 或对话超过 20 轮时,主动询问是否生成本次摘要
生成规则
阅读本次完整对话,生成以下结构的 summary:
# Session Summary
- 日期:{YYYY-MM-DD HH:MM}
- 前任:{slug}
- 轮次:{对话总轮数}
## 聊了什么
{用 2-3 句话概括本次对话的主题和走向}
## 情绪基调
{本次对话的整体情绪:平和/伤感/争吵/甜蜜/释然/...}
## 关键记忆点
{如果对话中出现了新的共同记忆、纠正信息、或重要情感表达,列出来}
## 下次可以接着聊
{本次对话中未展开或用户可能想继续的话题}
存储位置
将生成的 summary 保存到:
exes/{slug}/sessions/{YYYYMMDD_HHMMSS}.md
加载规则(供 merger.md 使用)
下次对话开始时:
- 读取
exes/{slug}/sessions/目录下最新的 3 个 summary 文件 - 将内容拼接后注入到对话上下文的 system prompt 中
- 格式为:「以下是你们最近几次对话的摘要,请自然地延续这段关系的状态:」
不要主动提及「上次我们聊了 xxx」,除非用户问起。记忆应该是自然流露的,不是汇报式的。