03 · 文档解析与分块:检索失败的上游
结论:解析三个梯级(规则 → 布局模型 → VLM)先低后高;三个静默失败(阅读顺序、表格、页眉页脚);按结构切、父子块;contextual retrieval;权限进元数据。
%%{init: {"flowchart": {"wrappingWidth": 190}}}%%
flowchart LR
F["文件<br/>PDF · Office · HTML · 扫描件 · 图片"] --> P{"解析梯级"}
P -->|"数字原生 PDF · HTML"| R1["① 规则抽取<br/>读文本层 → markdown<br/>毫秒 · 免费 · 无 GPU"]
P -->|"复杂表格 · 多栏 · 混合"| R2["② 布局模型<br/>Docling · Marker · MinerU<br/>布局检测 + 表格结构 · 本地"]
P -->|"扫描 · 手写 · 公式 · 密集表格"| R3["③ 视觉语言模型<br/>Mistral OCR 4 · PaddleOCR-VL · DeepSeek-OCR 2 · LlamaParse<br/>逐页读图 → 结构化文本"]
R1 --> S["结构化文本<br/>标题层级 · 段落 · 表格 · 图片位置 · 阅读顺序"]
R2 --> S
R3 --> S
S --> C["分块<br/>按结构 / 递归 / 语义 / 固定<br/>+ contextual 前缀"]
C --> M["元数据<br/>来源 · 时间 · 章节路径 · 页码 · 权限"]
M --> I["索引(第四篇)"]
classDef step fill:#fff7e0,stroke:#c98a00,stroke-width:2px,color:#222
classDef dec fill:#eef6ff,stroke:#5b8fd6,color:#222
class F,R1,R2,R3,S,C,M,I step
class P dec
COMMENTS
评论存放在 GitHub Discussions, 用 GitHub 账号登录即可发表,支持 Markdown。 想针对正文某句话说?选中那段文字,点浮出的「评论」即可划线评论;觉得哪里写错了,发表时勾上「同时提交 Issue」。 有人回复你时 GitHub 会按你的通知设置发邮件,不用守在这里。