企业里大量知识藏在PDF表格里,但标准RAG(检索增强生成)流水线一碰到它们就翻车。不是模型不够聪明,而是预处理阶段就把表格的网格结构摧毁了——行与列的交叉关系一旦被压成纯文本,LLM看到的只是一串无结构的数值流,幻觉几乎是必然结果。
这篇文章提出了一套诊断框架和五个可组合的操作,核心思路很直接:把表格当作原生结构化数据来对待,而不是装饰性文本。作者认为,正确做法不是把表格作为文本处理得更好,而是在尽可能早的阶段将其恢复为结构化形式,此后一律当作数据处理。
![]()
四个表示层级,匹配不同问题形状
作者定义了四个表示层级,让调度器能把结构与实际问题的形状匹配起来。Level A是按行Markdown,足以应对大多数问题——像散文一样叙述的表格,直接从行里检索答案就行。Level B是独立DataFrame,在需要二维操作(比如跨页拼接或列投影)时使用。
Level C把频繁出现、schema稳定的表格提升为可SQL查询的列式存储,支持语料库级问题。Level D则是schema无法规范化时的诚实回退方案。四个层级各有适用场景,调度器根据诊断结果决定走哪条路。
五字段诊断,替代脆弱决策树
诊断系统为每个表格记录五个正交属性:解析质量(完美/部分/失败)、规模(行×列对)、表头状态(存在/缺失/续表)、跨页连续性(独立/自第N页续/延续至第M页)、文档级表格文字比。每个字段单独记录,调度器读取全部五个字段后,幂等地组合操作。
比如一个部分解析+续表+大表格的组合,会依次执行结构重建、多页拼接、问题驱动投影。这种设计避免了脆弱的决策树逻辑,每个字段独立记录,组合方式确定且可预测。
解析器的选择,分量不亚于操作的选择
文章强调了一个容易被忽视的点:同一页面经不同解析器处理后,可能落入完全不同的诊断桶。在《Attention Is All You Need》论文的超参数表格上,Fitz将13列坍塌为3个单元格,而Azure Document Intelligence干净地恢复了全部13列。
这意味着解析器选错了,后续操作再优化也白搭。作者建议先用廉价解析器,仅对困难表格升档——这个策略吸收了操作本会重复完成的工作,避免了不必要的计算开销。
五个可组合操作,覆盖完整升级路径
五个操作都是幂等的,无论以何种顺序组合都安全有效。O1从词级包围盒重建网格,处理部分解析;O2通过表头传播拼接多页续表;O3在检索前根据问题范围对表格进行投影和过滤;O4将频繁表格提升到列式存储以支持SQL查询;O5在万不得已时将表格区域渲染为图像供视觉LLM提取。
O5被刻意保留为高成本回退方案——只有当其他操作都失败时才启用。这种分层设计让系统在大多数情况下走廉价路径,只在真正困难时升级。
真实案例:从NIST到世界银行
文章用真实案例验证了这套框架。NIST网络安全框架PDF和世界银行CMO表格都展示了不同层级的处理效果。像"财产险的免赔额是多少"这样的问题,直接从Markdown行获取答案,像任何其他行一样检索、引用——混合内容文档中的大部分表格到这里就结束了。
这套方案的核心价值在于:它承认表格是布局产物而非数据结构,但拒绝接受"扁平化是唯一出路"的现状。通过诊断驱动操作组合,在最合适的抽象层级保留表格结构,让RAG系统在表格场景下也能给出可靠答案。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.