企业知识库RAG

发布时间:2026/7/15 6:35:37
企业知识库RAG 1. 项目简介1.1 RAG检索增强生成 (Retrieval-Augmented Generation)作用LLM (大语言模型) 在面对训练数据之外的陌生领域知识时容易产生“幻觉” (Hallucination)导致回答不准确。RAG 技术通过外挂知识库的方式在 LLM 生成回答前检索相关信息作为“提示” (Context)引导 LLM 基于事实回答从而显著提升回答的准确率和可信度。RAG 核心流程大模型在 RAG 中的关键应用Embedding (向量化)使用Embedding 模型将文本转化为向量 (支持稠密和稀疏向量)用于后续的相似度检索。Rerank (重排序)使用Rerank 模型对初步召回的切片 (如 Top 50) 进行精细排序过滤无关信息提升上下文的相关性。LLM (生成)使用大语言模型基于检索到的上下文和用户问题生成最终答案。RAG 核心场景企业知识库问答、智能客服、法律 / 金融 / 政务专业咨询、文档助手、教育答疑、搜索增强1.2 项目介绍掌柜智库 (RAG) 是一款基于检索增强生成 (Retrieval-Augmented Generation)技术的企业级智能问答系统。本项目致力于构建一套集“私有知识库精准问答、实时联网信息补充、多维度结果优化”于一体的全流程智能客服解决方案旨在实现核心知识的私有化管理、问答结果的高精准度以及业务场景的灵活适配。代码总行数 5507系统架构包含两大核心模块数据处理流水线准备支持 PDF/Markdown 等多格式文档导入执行文档结构化解析、智能切片、元数据提取及向量化存储的全链路预处理。为智能客服提供数据支撑智能检索系统 (查询)集成混合检索 (稠密向量 稀疏向量)、假设性问题生成 (HyDE)、MCP 联网搜索及结果重排序 (Rerank) 等高级策略确保回答的准确性与时效性。1.2 项目核心技术流程1.2.1项目标准流程总结知识库构建 (Indexing)原始数据 - 文本解析 - 文本切片 (Chunking) - 向量化 (Embedding) - 存入向量数据库。知识库检索 (Retrieval Generation)用户提问 - 问题向量化 - 多路检索相关切片 - 重排序 (rrfRerank) - 提示词增强 (Prompt Engineering) - LLM 生成答案。1.2.2 项目RAG确保准确率核心点RAG 的准确率问题拆解为六个可工程化能力层 数据结构化 → 语义切片 → 多路召回 → 混合检索 → 假设增强 → 精排裁决 。 每一层都对应明确的误差来源与治理策略形成端到端闭环。1.2.2.1 非结构化文档语义重建(PDF)图片识别PDF 是排版格式不是语义格式。直接抽取文本会出现结构坍塌、图文割裂、上下文断链。专家级治理方案版面语义重建 基于 MinerU 等引擎恢复标题层级、段落边界、表格与公式结构输出语义化 Markdown。图文联合解析 对图片/图表执行 OCR VLM 双通路理解将视觉知识转化为可检索文本与向量。结构一致性校验 对标题树、段落归属、图文引用关系进行规则化校验降低语义漂移。将“展示型文档”升级为“可计算知识资产”从源头提升召回上限与答案可解释性。1.2.2.2 语义自治切片固定长度切片会打断论证链路导致“召回命中但证据不完整”。切片级治理方案按语义边界切分 优先使用章节、段落、主题变化等自然边界。动态长短控制 长块二次切分、短块同域合并避免信息稀释与碎片噪声。上下文连续性增强 引入适度 overlap (重叠10~20%)与父标题继承保持证据链完整。 技术价值让每个 Chunk 成为“最小可解释知识单元”显著提升检索相关性与生成连贯度。1.2.2.3 多路召回引擎RAG 多路召回Multi-Path Retrieval是当前检索增强生成RAG系统中提升检索准确率Recall和鲁棒性的核心策略。它的核心思想是不依赖单一的检索方式而是并行使用多种不同的检索策略最后将结果合并。单纯依靠向量检索Dense Retrieval已被证明存在盲区因此“多路召回 融合重排序”已成为标准架构。1.2.2.4 混合向量检索核心痛点: 语义相关 ≠ 词项命中关键词命中 ≠ 语义正确单一检索无法兼顾。专家级治理方案Dense Vector 负责语义理解、同义泛化、隐含关联。Sparse Vector 负责术语命中、实体精确、关键字段约束。统一评分空间融合 通过归一化与权重机制消除量纲偏差避免单路分数“劫持”结果。实现“语义广覆盖 关键词高精度”的双重最优。向量了解向量是既有大小、又有方向的一组数字可用来量化描述事物特征。文本、图片、语音、用户行为等信息都可以被转换成向量。在向量空间中两个向量越接近代表它们对应的内容越相似。注意数学领域表示向量常用小括号编程领域常用中括号稠密向量(语义向量)作用用于表示语义、含义、内容特征侧重 “懂意思”。特点向量中几乎没有 0数值分布稠密、饱满维度通常在几十到几千维典型场景大模型生成的 Embedding词嵌入 / 句嵌入语义搜索、智能推荐、相似度计算、内容理解稀疏向量(统计向量)作用用于表示词频、计数、关键词是否出现侧重 “查字面”。特点向量中绝大多数是 0只保留少数非 0 数值维度可以非常大几万、几十万甚至更高典型场景关键词匹配、精确检索词袋模型、TF-IDF、传统搜索召回混合向量检索 稀疏 稠密协同使用稀疏向量负责快速、精准召回保证关键词匹配不遗漏稠密向量负责语义理解与泛化匹配能识别同义、近义、相关内容结合优势既保留关键词搜索的准确性又具备语义搜索的全面性让搜索结果又准、又全、更懂用户意图。1.2.2.5 重排序裁决层将“可用候选”升级为“高置信证据”直接决定最终答案质量上限。在 RAG系统中结果重排序Rerank / 重排是指对初步检索到的候选文档或文本片段进行第二次、更精细的相关性排序以选出最相关、最有用的内容输入给大语言模型为什么需要重排序RAG 的基本流程是用户提问系统从知识库如向量数据库中快速检索一批可能相关的文档比如 Top-50将这些文档拼接成上下文交给 LLM 生成答案。但问题在于第一步的“快速检索”通常不够精准。原因包括初步检索追求高召回率宁可多召回一些也不漏掉但会混入低相关性的噪声LLM 的上下文窗口有限不能把所有召回结果都塞进去必须优中选优。因此需要对初步结果重新打分、排序——这就是重排序。