1. 写在前面
检索增强生成 (Retrieval-Augmented Generation, RAG) 是一种将检索 (Retrieval) 和生成 (Generation) 相结合的技术,它利用检索到的相关信息来增强大型语言模型 (LLM) 的生成能力。RAG 系统通常包含两个关键组件:
- 检索器 (Retriever):从知识库中检索与输入查询 (Query) 相关的文档。
- 生成器 (Generator):利用检索到的文档和输入查询生成最终的输出。
传统的 RAG 系统通常使用单一的检索方法,例如基于关键词匹配的 BM25 算法或基于语义相似度的语义检索。然而,这两种方法各有优缺点:
- BM25:
- 优点:速度快,实现简单,对于关键词匹配效果好。
- 缺点:无法理解语义信息,对于语义相关的查询效果较差。
- 语义检索:
- 优点:能够理解语义信息,对于语义相关的查询效果好。
- 缺点