# 结构化抽取(表单 → JSON) 本章目标:把“看图回答”改造成更可落地的形态——**结构化抽取**。输入一张票据/体检报告/检验单/表格截图,输出结构化 JSON,并附带字段置信度与(可选)位置坐标。 --- ## 1. 任务定义 - **输入**:表单图片 \(I\) - **输出**:结构化结果 \(y\)(JSON),例如: - 基本字段:姓名、日期、项目、数值、单位、参考范围 - 结构字段:表格行列、键值对 - **约束**:格式必须可校验(schema),数值/单位必须一致 本任务的优势是:比开放问答更容易评测、更容易上线(输出可直接进入业务系统)。 --- ## 2. 系统设计(推荐流水线) 1. **版面解析(Layout)**:检测文本块/表格/标题/页眉页脚 2. **OCR**:识别文字(保留 bbox) 3. **结构恢复(Structure)**: - 关键值对(KIE) - 表格行列恢复(table structure) 4. **字段归一化与校验**: - 单位标准化、数值范围校验、日期格式校验 - 规则校验失败 → 触发重试/人工审核 --- ## 3. 模型与方法选择 可选路线(按工程复杂度从低到高): - **规则 + OCR**:适合格式稳定的表单(模板固定) - **布局模型 + OCR + 规则**:适合模板多但版面规律明显的场景 - **端到端多模态抽取(MLLM)**:适合长尾模板,但必须加 schema 约束与校验器,否则容易“格式对但值错” 工程建议:无论用哪条路线,都应把“最终正确性”放到校验层闭环里。 --- ## 4. 评测与验收 - **字段准确率**(exact match / 归一化后 match) - **格式通过率**(schema validation pass rate) - **数值一致性**(单位换算、范围约束) - **定位质量**(可选:bbox IoU/字段对齐率) --- ## 5. 常见坑位 - OCR 错误传播到结构恢复(需要置信度与纠错机制) - 单位与小数点(医疗/财务表单里是高频错误源) - 模板多样性导致规则爆炸(需要分桶与自动回归集) --- ## 6. 最小可复现 Demo(建议) - 选 3 类表单:票据 / 检验单 / 体检报告(各 200 张) - 定义 schema:字段、类型、单位、范围 - 输出 JSON + 校验报告(通过/失败原因)