RAGFlow · 第 3 章:第一节 RAGFlow 配置参数全景图与实验结论

张开发
2026/4/27 4:20:04 15 分钟阅读

分享文章

RAGFlow · 第 3 章:第一节 RAGFlow 配置参数全景图与实验结论
系列导航第 0 章 前言为什么企业 AI 工程师必须掌握 RAGFlow第 1 章安装部署与基础配置**——从零跑通第一个 RAG Pipeline第 2 章RAGFlow RAGFlow 代码介绍第 3 章攻克企业复杂文档——理解 DeepDoc、Naive、MinerU 与 Docling 的区别第一节 RAGFlow 配置参数全景图与实验结论本文第二节 实验Chunk Method (解析方法与布局识别)第三节 实验Chunk Token Num Overlap (切片与重叠)第四节 实验Similarity Threshold (相似度阈值)第五节 实验Vector/Keyword Weight (混合搜索权重)第六节 MinuerBridge安装配置与运行使用第 4 章理解 Agentic RAG 核心——定义与低代码实现第 5 章工作流编排——构建基于图Graph的 RAG第 6 章Deep Research 模板应用——部署自动拆解子问题的深度研究智能体第 7 章企业级扩展——API 接入与外部工具集成MCP第 8 章评估与复盘——从玄学到量化 RAG 性能指标评测本章内容介绍第一节 列举RAGFlow配置参数和优先级; 前置了通过实验获得的关键参数的综合配置第二节 - 第五节 分别是四个关键参数的实验记录.第六节 鉴于MinerU在企业文档识别任务中具有较好的实际效果, 专门提供MinerU的具体使用方法.RAGFlow 配置参数全景图这份文档记录了 RAGFlow 界面中大部分RAG关键配置参数的定义、作用域以及在后端代码中的对应处理逻辑。1. 知识库配置 (Dataset Parsing)作用域影响文件的解析、切片(Chunking)和索引质量。参数名称界面标题 (UI Name)核心作用 (Effect)核心代码位置 (Code Trace)影响阶段parser_id解析方法 (Chunk Method)决定文件如何拆分General, Naive, Laws等。rag/nlp/(各种 chunker 逻辑)Indexingchunk_token_num最大 Token 数控制每个 Chunk 的语义颗粒度。rag/nlp/Indexingoverlapped_percent重叠比例块与块之间的重复信息用于保持上下文。rag/nlp/Indexinglayout_recognize布局识别是否识别 PDF/图片中的表格、标题等结构。deepdoc/Indexingembd_id嵌入模型用于向量化的模型。rag/llm/embedding_model.pyIndexingauto_keywords自动关键词提取 Chunk 的关键词增强混合搜索。rag/nlp/Indexingraptor递归摘要树 (RAPTOR)是否开启递归层级摘要适合处理全局性问题。rag/nlp/raptor.pyIndexing2. 检索与召回 (Retrieval Rerank)作用域影响查询时的结果相关性与准确度。参数名称界面标题 (UI Name)核心作用 (Effect)核心代码位置 (Code Trace)影响阶段similarity_threshold相似度阈值低于该分数的召回块将被过滤。rag/nlp/search.pyRetrievalvector_similarity_weight向量权重混合检索中向量 (Dense) 的比重0~1。rag/nlp/search.pyRetrievaltop_n召回数量 (Top N)最终喂给大模型的上下文片段数量。rag/nlp/search.pyRetrievalrerank_id重排模型使用二阶段精选模型重新给候选块打分。rag/llm/reranker_model.pyRetrievaluse_kg启用知识图谱是否引入 GraphRAG 提取的实体关系进行检索。rag/nlp/search.pyRetrieval3. 对话设置 (Chat Assistant)作用域影响 LLM 的生成风格和用户交互体验。参数名称界面标题 (UI Name)核心作用 (Effect)核心代码位置 (Code Trace)影响阶段system系统提示词 (System Prompt)决定 AI 的角色设定和回答准则。api/apps/chat_app.pyGenerationtemperature采样温度控制回答的确定性 vs 随机性。rag/llm/chat_model.pyGenerationrefine_multiturn多轮对话优化是否将历史对话融合进新的查询意图。rag/llm/chat_model.pyGenerationquote引用开关回答中是否标注来源片段的具体出处。web/src/pages/chat/...Generation/UIempty_response没找到时的回答当检索不到任何内容时的自定义兜底策略。api/apps/chat_app.pyGeneration下面是把四个参数统一到Indexing入库/建索引和Retrieval检索/召回两个业务环节后的完整总结。可以直接作为 blog 的“实验总结与参数选择建议”。关键参数实验的结论和建议RAGFlow 的知识库效果本质上由两个环节共同决定Indexing 阶段决定“文档被如何切分、解析、入库”主要参数解析方法、Chunk Size、Overlap目标让知识块结构清晰、语义完整、粒度合适Retrieval 阶段决定“用户问题来了以后系统如何召回内容”主要参数Similarity Threshold、Vector / Keyword Weight目标在“召回足够多”和“过滤无关内容”之间取得平衡Indexing 决定知识库的底子Retrieval 决定问答时怎么取内容。前者偏“文档加工”后者偏“搜索策略”。主要参数说明解析方法决定文档结构能不能被正确保留下来Chunk Size 和 Overlap决定知识块是否完整、是否容易命中Similarity Threshold决定召回内容的“水线”高低Vector / Keyword Weight决定系统更相信“语义相似”还是“关键词匹配”。对于大多数企业文档知识库可以先用下面这组配置作为起点Parsing Method General MinerU Chunk Size 512 Overlap 10% Similarity Threshold 0.30 Vector Weight 0.3 - 0.4 Keyword Weight 0.7 - 0.6根据手头侧使用企业文档 此配置适合大多数 制度、方案、说明书、运行规程、检修规程、项目文档 的初始测试。表 1Indexing 阶段参数选择建议企业文档类型推荐解析方法推荐 Chunk Size推荐 Overlap适用原因普通制度、方案、说明书、操作手册General MinerU51210%适合作为默认方案兼顾段落完整性和检索粒度长篇规范、标准、技术白皮书、项目方案书General / Paper MinerU102410%文档上下文较长过小切片容易割裂完整逻辑FAQ、知识问答、客服问答、故障问答库General / Naive200 - 50015%问答内容通常短而独立适合小切片精准命中检修规程、运行规程、安全制度General MinerU512 - 80010% - 15%需要保留步骤、条件、措施之间的上下文关系运行记录、缺陷记录、检修记录General / Table300 - 60010%单条记录通常较短重点是保留设备、时间、现象、处理结果Excel、CSV、台账、结构化表格Table按行/表格结构切分低 overlap表格字段关系比自然段更重要应优先保持表格结构学术论文、技术论文、研究报告Paper800 - 120010%需要识别摘要、章节、图表、参考结构避免普通切分破坏逻辑代码库、接口文档、配置文件Naive / Code 类解析方式80010% - 20%函数体、类、配置块不宜被切断切片应尽量保持代码单元完整对于企业知识库最稳妥的策略不是一开始追求“最高级参数”而是先用中等切片 中等阈值 混合检索作为基线再根据真实问题逐步微调。表 2Retrieval 阶段参数选择建议使用场景Similarity Threshold 建议Vector Weight 建议Keyword Weight 建议调参逻辑常规企业文档问答0.20 - 0.300.40.6作为大多数知识库的起点兼顾语义理解和关键词匹配运行规程、检修规程、安全制度、企业运行记录、检修记录、缺陷闭环0.40 - 0.500.30.7需要一定语义能力但不能放任无关内容混入高风险专业知识库例如安全、规程、API、法规0.500.30.7宁可少召回也要减少无关内容进入回答上下文口语化问答、故障现象解释0.20 - 0.300.5 - 0.70.5 - 0.3用户表达可能不等于文档原文需要提高语义检索权重测点编号、设备编码、缺陷单号、工单号查询、文档管理、编号搜索、标题搜索、精确查找0.50.1 - 0.20.9 - 0.8依赖精确匹配关键词权重应占主导不应过度依赖向量语义尤其是专业企业文档不建议盲目追求高语义权重。如果文档中存在大量设备编码、部件名称、故障现象、标准条款、检修步骤、缺陷单号关键词检索仍然非常重要。最终可以把调参原则总结为一句话文档越结构化、编号越多、术语越固定就越应该提高 Keyword Weight问题越口语化、表达越不固定就越应该提高 Vector Weight业务越不能接受误答就越应该适当提高 Similarity Threshold。

更多文章