Claude With Amazon Bedrock
← 所有课程
课程 44Claude With Amazon Bedrock

A multi-search RAG pipeline

摘要音频

本节课没有语音摘要。

学习笔记

📚 学习笔记:混合搜索与检索器设计 (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 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 0 题

No quiz for this lesson yet.