快速结论:当 RAGFlow 使用 Mineru 作为 OCR 文档解析器时,Chunk size 和 Image & table context window 等配置参数被完全忽略,生成大量极小的分块(每句话一个块,表格单独分块)。优先排查是否启用了其他覆盖配置,但本质上这是 Mineru 分块逻辑的已知限制。
适用环境:RAGFlow + Mineru OCR 解析器(pipeline 后端),具体版本未在 Issue 中注明。
最快修复方案:暂无确认的一步修复方案。可尝试使用父‑子分块机制(parent‑child chunking)在数据集设置中配置父块大小,以平衡分块粒度,但这只能缓解问题,无法让 Mineru 直接遵循自定义 chunk size。
注意事项:Title chunker 能将小块按标题合并,但会丢失参考坐标(position)。父‑子分块机制不能改变 Mineru 分块逻辑本身,且元数据传递依赖分块流水线,同样无法在 Title chunker 中保留坐标。
问题场景
用户在使用 RAGFlow 的 Mineru 解析器(OCR 模式)解析文档时,在解析设置中调整了 “Chunk size” 和 “Image & table context window”,但实际生成的分块完全忽略这些参数:每个句子甚至短语都被拆成独立小块,表格也全部单独分割,导致上下文碎片化。
报错原文
[Question]: Mineru Chunking
原因分析
Mineru 的 OCR 分块逻辑是基于逐行输出的文本和位置数据来创建分块,它并不应用用户在前端配置的 chunk size 或 context window 参数。虽然 RAGFlow 的 Splitter 组件(rag/flow/splitter/splitter.py)会尝试遵守这些参数,但其实际行为依赖输入格式和合并函数,且没有针对 Mineru 的特殊覆盖。因此,无论用户怎么设置,Mineru 都会按自身规则生成极小的分块。
环境排查
- 确认 RAGFlow 部署版本(Docker 镜像 Tag 或源码提交号)。
- 确认 Mineru 解析器使用的具体分支或版本。
- 检查是否在数据集设置中启用了其他可能覆盖全局分块配置的选项(如自定义解析模板)。
解决步骤
- 临时切换到 Title chunker(按标题分块)以合并小片段,注意该方式会丢失参考坐标(position),若不需要坐标可优先尝试。
- 若需要保留坐标,当前无直接方案;可考虑用外部脚本对 Mineru 的输出进行后处理 – 按位置连续性或语义合并相邻小块,并手动记录坐标。
- 在数据集设置中启用 父‑子分块(parent‑child chunking),设置较大的父块大小(例如 1024 tokens)以容纳上下文,同时保留子块的细粒度用于检索。此方法不能修复 Mineru 的分段行为,但能改善检索效果。
- 关注 RAGFlow 后续版本(尤其是 PR #12251 之后的更新)对分块元数据传递的改进,未来可能支持更灵活的分块配置。
验证方法
在解析结果详情页检查每个分块的实际字符数或 token 数是否接近设定的 chunk size;若启用 Title chunker,确认分块大小是否明显变大且不再碎片化。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[Question]: [MinerU] Output directory](https://www.chat-gpts.plus/wp-content/uploads/2026/07/11691-e87e0a36-768x403.jpg)
![[Question]:](https://www.chat-gpts.plus/wp-content/uploads/2026/07/12522-01ebd777-768x403.jpg)
