RAG 的检索优化之 RetrievalSelection
检索的目的是找到能准确回答 query 的相关 chunks,目前有不同的方法去做到这一点,比如关键词、向量等
SparseRetrieval
基于词汇的稀疏检索,如稀疏检测模型 BM 25,TF-IDF 等
DenseRetrieval
基于 embedding 的稠密检索,使用余弦相似度、欧氏距离等指标评估文本相似度
HybridRetriever
混合搜索将传统的基于关键字的搜索与语义搜索技术相结合。在这种技术中,您可以同时创建 keyword 索引和 vector-embeddings 索引。执行搜索时,它会同时执行关键字搜索和语义搜索来检索结果。最终结果使用 reranker 模型进行排名,该模型对它们与用户查询的相关性进行评分
这种方法提高了相关性,提高了覆盖率,并为各种查询类型提供了灵活性。混合搜索在具有严格词汇表的域中特别有用。例如,在医疗保健领域,医生经常使用 “COPD” 等缩写来表示慢性阻塞性肺病,或 “HTN” 表示高血压。在这种情况下,语义搜索可能会错过带有缩写的结果,而关键字搜索可以帮助捕获这些结果