Skip to content

13 · 多轮对话与查询改写

听懂"那第二条呢"

📚 《AI 知识库开发入门》第 13/20 篇 · 下一篇:14 · 评测进阶

用户第二轮问"那第二条呢",直接拿去检索必失败——检索器没有对话记忆。

01 查询改写

带上对话历史,把口语问题重写成完整独立的检索问题("年假制度的第二条是什么"),再去检索。多数平台有此开关,自建则加一步改写调用。

多轮对话查询改写流程

02 澄清设计

模糊问题先反问("你问的是年假还是病假?")比硬答错更专业——一次澄清省三轮误解。

03 记忆边界

只带"与当前问题相关"的历史进检索,别把 10 轮全拼进 query——噪声比信号多。

04 动手

设计 3 组三轮对话测试,开关查询改写对比 → 验收:多轮正确率对比。

05 小结

多轮能力是"能用"到"好用"的分界。下一段进运维深水区。

📎 实战案例

多轮场景没做查询改写,用户第二轮问「那第二条呢」开始全答非所问,以为系统坏了。团队加了「带历史重写成完整问题再检索」后多轮正确率回升——检索器没有对话记忆。

踩坑

  • 我上线时没做改写,用户第二轮开始全答非所问,以为系统坏了——多轮测试要进评测集。
  • 把全部历史塞进检索,长对话越聊越乱——相关性过滤不能省。