创建

登录 ReadmeX

或

了解我们如何处理你的信息: 隐私政策

ReadmeX

陪你读懂 AI 动态

今天,想先了解什么?

选一份动态总结,或直接聊聊你的问题。

社区和关注动态总结只属于你自己。

资讯

RAG查询扩展:HyDE与多查询改写

AI 总结

这篇教程演示如何使用 HyDE 和多查询改写,为措辞与知识库文档不同的完整查询增加检索入口。作者在 PostgreSQL 16、pgvector 0.8、bge-m3 和 RRF 融合环境中报告,多查询扩展并保留原查询时 recall@5 达到 86%,高于不扩展的 72% 和单独使用 HyDE 的 80%,但延迟也更高。评测仅涵盖作者设备知识库中的 100 条查询,不能视为通用基准。

深度见解

文章给出了可复现的 RAG 检索改进方法,同时提醒开发者控制意图漂移、重复分块和额外延迟,并仅对低置信查询触发扩展。

上一篇解决了多轮对话里的指代和省略:先把「它多少钱」还原成独立 query,再送检索。但独立 query 也不天然适合检索。

用户说「设备老是卡住」,文档写的是「设备响应超时」;用户说「打印有黑道」,文档写的是「输出页面出现纵向条纹」。问题很完整,向量检索却可能因为措辞差异捞不到目标文档。

这类问题该做查询扩展:用 HyDE 或多 query 改写增加检索入口。这篇沿用前面的 pgvector + bge-m3 环境,给出最小实现、RRF 融合代码和一组分类型评测,最后说清两套方案怎么选。

一、先分清:查询重写和查询扩展不是一回事

这两个技术经常混在一起,实际解决的问题不同:

技术输入的问题目标输出
查询重写(上一篇)「它多少钱」,离开上下文无法理解补全指代和省略一个独立 query
查询扩展(本篇)「设备老是卡住」,语义完整但措辞不好检索增加与用户措辞不同的检索入口假设答案或多个 query 变体

#HyDE#Reciprocal Rank Fusion#pgvector#bge-m3#PostgreSQL 16

原文约 8 分钟读完阅读原文
群聊

还没有评论,来说说你的看法。