150、RAG 检索增强生成(四):多路召回、重排序、混合检索与 HyDE 高级策略
150、RAG 检索增强生成(四):多路召回、重排序、混合检索与 HyDE 高级策略从一次线上事故说起上周三凌晨两点,我被值班电话叫醒。用户问“去年第三季度的销售数据为什么比前年同期下降了12%”,我们的RAG系统返回了一堆关于“销售策略调整”和“市场环境变化”的废话,完全没提到“去年第三季度”这个时间窗口。更离谱的是,系统居然把“前年同期”理解成了“去年”,检索出来的文档全是今年第一季度的。我盯着日志看了半小时,发现问题出在检索阶段——单一路径的向量检索,对时间敏感信息完全失效。这让我意识到,RAG的瓶颈往往不在生成,而在检索。今天这篇笔记,就聊聊我踩过的那些坑和最终采用的解决方案。多路召回:别把所有鸡蛋放在一个篮子里为什么需要多路召回单一路径检索就像只用一个搜索引擎查资料——你永远不知道它漏掉了什么。我见过太多项目只用向量检索,结果遇到专业术语、时间范围、数字比较这些场景就崩。多路召回的核心思路:同时跑多个检索器,把结果合并。每个检索器擅长不同领域,比如:向量检索:语义相似度,适合模糊匹配BM25:关键词精确匹配,适合专业术语时间过滤:按时间窗口硬过滤,适合时效性要求结构化查询:针对数据库中的数值