实体表是什么
会话记忆里的实体表指把对话中稳定的事实抽成结构化字段:用户偏好、订单号、时区、语言、已确认的配置项。每轮随上下文注入这张表,模型不必反复从历史里推理同一件事,也不会在不同轮次给出互相矛盾的说法。
基本信息
| 抽取范围 | 稳定事实优先:偏好、标识、时区、已确认参数 |
|---|---|
| 写入规则 | 带来源与时间戳,用户明确确认过的值优先级最高 |
| 冲突处理 | 新事实覆盖旧事实,并保留一条变更记录 |
| 清理 | 会话结束或字段过期即清除,不长期驻留 |
| 注入位置 | 放在上下文稳定区,避免每轮位置漂移影响缓存命中 |
典型使用场景
- 跨轮次任务:用户先说时区再说时间,实体表保证换算口径一致
- 偏好记忆:输出格式偏好被记住,后面轮次不必反复交代
- 订单类会话:订单号与状态写入实体表,后续追问无需重述
- 纠错:用户更正过的值覆盖旧值,并标记旧值不得再引用
- 多语言会话:语言偏好入表,避免回复语言在中途跳变
实体表片段示例
实体表片段示例
user:
timezone: Asia/Shanghai # 来源: 用户第 2 轮明确说明
preference: 输出用表格 # 来源: 用户第 5 轮确认
order:
id: A-10231
status: 已发货
# 每轮注入前校验: 过期字段清理,冲突字段以较晚确认的值为准
# 表内字段不做推理扩展,避免把模型的猜测写成事实字段类型与生命周期
| 字段类型 | 生命周期 | 清理时机 |
|---|---|---|
| 用户偏好 | 跨会话可选保留 | 用户清除或长期未活动 |
| 会话内事实 | 当前会话 | 会话结束即删除 |
| 业务标识 | 当前会话 | 任务完成或会话结束 |
| 临时计算值 | 单轮 | 该轮回答结束后丢弃 |
实体表只装用户确认过或可从系统查证的事实,模型推测出来的内容不要写进去,否则错误会以“记忆”的名义长期驻留。