Skip to main content

解析与切块

MimirQ 内置多引擎解析框架,支持 10+ 种解析后端,覆盖 PDF、Office、图片、邮件等文档类型。解析后的文本交由 chunking 模块进行智能切块。

解析流程

解析后端对比

引擎适用类型优点缺点
MinerUPDF(含公式/表格)公式识别精准、表格结构保留资源消耗较高
ETL4LLMPDF 通用轻量快速、兼容性好复杂排版效果一般
MarkerPDF → Markdown输出 Markdown 格式、表格友好依赖 GPU
PaddleOCR-VL扫描件/图片 PDF中文 OCR 精度高延迟较高
OlmOCR扫描件 PDF多模态 OCR、版面理解需外部服务
DoclingPDF/OfficeIBM 开源,多格式支持社区较小
DeepDocPDF深度文档理解配置复杂
GLM-OCR中文扫描件智谱 GLM 驱动依赖 API
千帆 OCR扫描件百度千帆服务依赖 API
PandocMarkdown/HTML/RST格式转换能力强仅文本格式
自动路由

routing.py 根据文件类型、PDF 质量评分自动选择最佳解析后端;quality/ 模块提供 PDF 质量评估(扫描件检测、OCR 必要性判断)。

文档类型选型指南

文档类型推荐引擎备选方案
数字 PDF(文字可选)MinerU / ETL4LLMMarker
扫描件 PDFPaddleOCR-VLOlmOCR / GLM-OCR
Word (.docx)Docx ParserMarkItDown
PowerPoint (.pptx)PPTX ParserMarkItDown
Excel (.xlsx)Excel Parser
图片Image ParserPaddleOCR-VL
邮件 (.eml)Email Parser
Markdown / HTMLPandocText Parser

质量评估

解析前,quality/ 模块对 PDF 进行质量评分:

  • 文字密度检测 — 判断是否为扫描件
  • OCR 必要性评估 — 决定是否启用 OCR 引擎
  • 风险等级 — high / medium / low,可配置自动重入队
风险自动重入队

配置 RETRIEVAL_PARSE_RISK_AUTO_ENQUEUE_LEVELS 可设定哪些风险等级的文档自动用更高质量引擎重新解析(默认 high,medium)。

解析配置

参数说明
PARSING_BACKEND默认解析后端
PARSING_FALLBACK_BACKEND降级后端
PDF_QUALITY_THRESHOLD质量评分阈值
PARSING_MAX_WORKERS并行 worker 数
PARSING_TIMEOUT单文档超时(秒)

关键源码

文件职责
app/parsing/factory.py解析器工厂
app/parsing/routing.py自动路由决策
app/parsing/quality/PDF 质量评估
app/parsing/processors/解析工作流编排
app/parsing/parsers/各引擎实现

相关链接:检索与 RAG · 平台与账号