Claude With The Anthropic Api
← 所有课程
课程 49Claude With The Anthropic Api

BM25 lexical search

摘要音频

本节课没有语音摘要。

学习笔记

📚 学习笔记:RAG 管道的搜索优化

一、 现有 RAG 管道的局限性

  • 问题识别: 初始的语义搜索 (Semantic Search) 管道在某些“边缘案例”中可能无法返回最相关的结果。
  • 现象: 语义搜索可能返回包含关键词但内容不相关的文档(例如,返回了完全无关的章节)。

二、 优化策略:结合两种搜索系统

  • 核心思路: 在语义搜索的基础上,并行引入词汇搜索 (Lexical Search) 系统。
  • 目标: 将语义理解(理解查询意图)与精确文本匹配(关键词查找)结合,实现搜索结果的平衡和提升。

三、 词汇搜索技术:BM25 (Best Match 25)

  • 定义: BM25 是一种经典的文本搜索算法,用于评估文档块 (Text Chunk) 与查询的相关性。
  • BM25 工作流程:
  • 分词 (Tokenization): 将用户查询分解为单独的词汇(去除标点符号,按空格分割)。
  • 词频统计 (Term Frequency): 统计查询中的每个词在整个文档集合中的出现频率。
  • 权重分配 (Weight Assignment): 根据词汇的稀有程度分配相对重要性。
  • 高频词(如“a”) → 重要性低(普遍存在)。
  • 低频词(如特定事件名称) → 重要性高(具有搜索价值)。
  • 匹配得分 (Scoring): 找到使用高权重词汇次数最多的文档块,将其作为最佳搜索结果。

四、 实施与集成

  • 架构: 构建两个独立的搜索系统(语义搜索系统 ↔ 词汇搜索系统)。
  • 最终步骤: 当用户提交查询时,将查询同时发送给这两个系统,然后合并两组搜索结果,以获得最佳的综合输出。

Takeaways

  • 现有语义搜索在某些边缘案例中可能返回包含关键词但内容不相关的文档。
  • 优化策略是并行引入词汇搜索(Lexical Search),结合语义理解和精确匹配。
  • BM25 算法通过统计词汇的稀有程度来分配权重,从而评估文档块与查询的相关性。
  • 最终实现通过同时向两个搜索系统发送查询,并合并两组结果来获得最佳综合输出。
抽认卡 8 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 0 题

No quiz for this lesson yet.