摘要音频
本节课没有语音摘要。
学习笔记
📚 学习笔记:混合搜索与检索器设计 (Hybrid Search & Retriever Design)
一、 核心概念:混合搜索 (Hybrid Search)
- 目标: 将不同搜索方法(如语义搜索和词汇搜索)结合起来,提高搜索的准确性。
- 组件:
- 向量索引 (Vector Index): 实现语义搜索。
- BM25 索引 (BM25 Index): 实现词汇搜索。
- 检索器 (Retriever): 负责协调和合并所有索引的搜索结果。
二、 检索器 (Retriever) 的工作流程
- API 统一性: 成功的关键在于所有搜索功能(向量索引、BM25 索引等)必须拥有几乎完全相同的公共接口 (Public API),例如 add_document 和 search。
- 工作机制:
- 接收用户查询 (Query)。
- 将查询分发给所有内部索引进行搜索。
- 接收来自所有索引的搜索结果列表。
- 应用特定的合并逻辑(如倒数排名融合)来生成最终结果。
三、 结果合并技术:倒数排名融合 (Reciprocal Rank Fusion, RRF)
- 目的: 将来自不同搜索方法(如向量搜索和 BM25)的排名结果合并成一个统一的、更准确的排序。
- 步骤:
- 收集数据: 将所有搜索结果(文档块)及其在每个索引中的排名(Rank)记录在一个表格中。
- 应用公式: 对每个文档块,计算其综合得分。
- 公式逻辑: 总得分 = $\sum \frac{1}{1 + \text{该索引中的排名}}$
- 示例: 如果一个文档在索引 A 的排名是 1,在索引 B 的排名是 3,则其得分项为 $\frac{1}{1+1} + \frac{1}{1+3}$。
- 排序: 根据计算出的综合得分,从高到低对所有文档进行排序。
四、 设计优势与扩展性
- 模块化 (Modularity): 每个索引都是独立的类,只要它们遵循统一的 API 规范,就可以轻松地被封装进 Retriever 类。
- 可扩展性 (Extensibility): 未来可以非常容易地添加新的搜索索引(例如,基于图的搜索),只要它实现了相同的 search 和 add_document 方法,即可自动纳入混合搜索流程。
- 效果验证: 混合搜索能够显著提高搜索的准确性,例如将不相关的结果(如 Section 3)替换为更相关的结果(如 Section 2)。
Takeaways
- 混合搜索(Hybrid Search)通过结合向量索引(语义搜索)和BM25索引(词汇搜索)等不同方法,来提高搜索的准确性。
- 检索器(Retriever)是核心协调组件,其成功的关键在于所有内部索引必须拥有统一的公共API(如 add_document 和 search)。
- 倒数排名融合(RRF)是用于合并来自不同搜索方法排名结果的特定技术。
- RRF的综合得分计算逻辑是:总得分 = 1 / (1 + 该索引中的排名) 的总和。
- 该设计具有模块化和可扩展性,只要新索引遵循统一的API规范,即可轻松纳入混合搜索流程。
抽认卡 8 张卡片
问题
点击显示 · ←/→
答案
点击翻回
知识检测 0 题
No quiz for this lesson yet.