分层 RAG / 层级 RAG(Hierarchical RAG)范式+父文档检索(Parent Document RAG)范式RAG 即检索增强生成(Retrieval-Augmented Generation),是结合文档检索与大模型生成的技术,从私有知识库检索相关内容,再交给大模型回答,缓解大模型幻觉、支持私有数据问答 。工作流程分为两大主线:1、文档预处理将文档上传–>各种文档数据的读取–> 按照页切分–>按照章节切分–> 按照父子分块切分–> 将父子块保存到 mysql 数据库–> 将子块数据保存到 milvus 数据库–> 将原始文档的元数据保存到 mysql 数据库2、问题检索用户提问–> 使用大模型润色问题–> 检索 milvus 子块数据–> 根据子块数据查询 mysql 中的父块数据,两者融合(对子块信息进行拓展)–> 通过 bm25 进行精确检索–> 将向量检索和 Bm25 检索结果 进行 rrf 混合打分–> 使用重排序模型对问题和检索的内容进行打分,然后排序 --> 对结果进行低分过滤 --> 将检索出来的内容拼接成正规的格式丢给大模型进行处理–> 大模型得到的结果 进行 引用的校验 --> 得到正确的结果 --> 将本次查询内容保存 mysql 数据库
分层 RAG / 层级 RAG(Hierarchical RAG)范式+父文档检索(Parent Document RAG)范式RAG 即检索增强生成(Retrieval-Augmented Generation),是结合文档检索与大模型生成的技术,从私有知识库检索相关内容,再交给大模型回答,缓解大模型幻觉、支持私有数据问答 。工作流程分为两大主线:1、文档预处理将文档上传–>各种文档数据的读取–> 按照页切分–>按照章节切分–> 按照父子分块切分–> 将父子块保存到 mysql 数据库–> 将子块数据保存到 milvus 数据库–> 将原始文档的元数据保存到 mysql 数据库2、问题检索用户提问–> 使用大模型润色问题–> 检索 milvus 子块数据–> 根据子块数据查询 mysql 中的父块数据,两者融合(对子块信息进行拓展)–> 通过 bm25 进行精确检索–> 将向量检索和 Bm25 检索结果 进行 rrf 混合打分–> 使用重排序模型对问题和检索的内容进行打分,然后排序 --> 对结果进行低分过滤 --> 将检索出来的内容拼接成正规的格式丢给大模型进行处理–> 大模型得到的结果 进行 引用的校验 --> 得到正确的结果 --> 将本次查询内容保存 mysql 数据库