滚动摘要解决什么
多轮对话超出上下文预算时,把较早轮次压缩成结构化摘要,只保留最近若干轮原文。摘要是对话状态的载体:目标、已达成的结论、关键约束、未决事项与被更正过的信息。做得好,长会话既不丢约束也不爆预算;做得随意,模型会在几十轮后悄悄违反最初的要求。
基本信息
| 摘要字段 | 目标、结论、约束、未决项、已更正信息 |
|---|---|
| 保留原文 | 最近 N 轮完整保留,按任务复杂度取 4 到 8 轮 |
| 触发时机 | 接近预算上限前触发,不能等超限截断后再补 |
| 更新方式 | 增量合并旧摘要,不整段重写 |
| 白名单 | 硬性约束段落免压缩,直接保留原文 |
典型使用场景
- 客服长会话:用户中途改需求,摘要保留已更正的信息,防止旧需求回潮
- 代码助手迭代:把已确定的技术选型写进摘要,避免后面又推荐另一套方案
- 长文档问答:先摘要会话再放检索片段,减少重复上下文占用
- 跨天续聊:每天首次进入时载入摘要,用户不必重复背景
- 评测复现:摘要模板固定后,历史会话可被回放到同一状态做对比
滚动摘要模板
滚动摘要模板
【对话状态】
目标: 为活动页做结构与文案建议
已达成的结论: 主视觉用蓝色系;标题不超过 12 字
关键约束: 不使用夸大宣传词;必须标注活动细则入口
未决事项: 是否增加倒计时模块(待运营确认)
已更正的信息: 活动时间由 1 月 10 日改为 1 月 15 日,旧值不得再引用
最近 6 轮: 保留原文;硬约束段落免压缩摘要字段与作用
| 字段 | 作用 | 缺失后果 |
|---|---|---|
| 目标 | 锚定任务方向 | 对话越走越偏 |
| 关键约束 | 让硬规则长期生效 | 几十轮后开始违反最初要求 |
| 已更正信息 | 防止旧值回潮 | 用户改过的内容被用回旧值 |
| 未决事项 | 标记待确认点 | 模型擅自替用户做决定 |
摘要模板本身要版本化:模板口径变了,历史会话的摘要含义也跟着变,做新旧对比评测时必须标注模板版本,否则结果不可比。