一张发票有五个提取字段。发票号:0.99 置信度。日期:0.97。总金额:0.95。保修期:0.62。特殊条款:0.45。文档级路由因为两个字段不确定就把整张发票发给人工审查。审查者重新验证所有五个字段,花时间确认本来就正确的发票号和日期。
字段级置信度路由只把保修期和特殊条款发给审查。高置信度字段自动接受。审查者只关注真正需要判断的两个字段。
效果很显著:一个团队把审查者工作量减少了 69%(从每天 8 小时到 2.5 小时),同时错误捕获率几乎不变(93% vs 文档级路由的 95%)。2% 的捕获率差异对释放每天 5.5 小时审查者产能来说是微不足道的代价。
输出结构:每字段 {value, confidence}
提取 schema 应该给每个字段配对其置信度分数:
{
"invoice_number": { "value": "INV-2026-4412", "confidence": 0.99 },
"total_amount": { "value": "$1,247.50", "confidence": 0.95 },
"warranty_period": { "value": "24 months", "confidence": 0.62 },
"special_terms": { "value": "Net 60 with early payment discount", "confidence": 0.45 }
}
这个结构让下游系统无需额外处理就能应用按字段的阈值。每个消费系统可以根据数值分数决定自己的路由规则。
不是二值标志。 有人提议简化为每字段 confident / needs_review,这丢失了关键灵活性。路由决策最终是二值的(审查或自动接受),但阈值应该在下游可配置,而不是在提取输出中写死。有了数值分数,系统可以对财务金额设 0.9 但对内部备注设 0.7。二值标志在提取时锁定了一个阈值——改它要重新提取。
不是文档级分数。 单一的总体置信度(跨字段平均或取最低)掩盖了字段级差异。一份有三个字段 0.97 和一个 0.45 的文档可能平均 0.84 通过 0.8 的阈值——隐藏了真正不确定的字段。或者可能没通过阈值把所有四个字段都发给审查,浪费了三个可靠字段的时间。
校准:模型的置信度不会自动准确
0.88 的置信度分数应该意味着模型在该置信度水平上 88% 的时间是正确的。这不保证。
一个团队设了全局阈值 0.8:0.8 及以上自动接受。审计发现 warranty_period 字段平均 0.88 置信度但有 25% 的错误率。其他字段在类似置信度下:3% 错误率。模型专门对保修提取过度自信。
根因:置信度校准因字段类型而异。同样的数值分数对不同字段意味着不同的准确率水平。全局阈值平等对待它们,意味着对某些字段过度信任、对其他字段信任不足。
部署前校准
使用置信度分数做路由之前:
- 创建标注验证集 包含人工验证的正确值
- 在每个置信度水平按字段类型测量实际准确率
- 比较 报告的置信度与观察到的准确率
- 按字段类型设阈值 基于校准数据
没有通用的”0.8 就够好”标准。每个模型、字段类型和文档类型需要自己的验证。模型可能对发票号校准良好(0.9 置信度 → 91% 准确率)但对保修条款校准差(0.9 置信度 → 72% 准确率)。
也要按文档类型校准
同一字段名在不同文档类型上可能有不同的可靠性画像。从打印发票(结构化表格)提取的 total_amount 可能 99% 准确,而从手写收据(格式多变)提取的同一字段可能 82%。total_amount 跨所有文档类型用单一阈值对收据太宽松或对发票太严格。
全面的方法:按字段按文档类型的阈值,从标注数据校准,每季度重新校准以适应文档模式的演变。
结合业务影响路由
不是所有不确定的字段同等重要。一个账单提取可能对退款金额(0.62)和格式备注(0.58)都报告低置信度。退款金额直接影响财务交易。格式备注是信息性的。
字段级路由可以在置信度旁边纳入业务影响:
- 高影响 + 低置信度 → 优先人工审查(退款金额、合同条款)
- 低影响 + 低置信度 → 标准审查队列(内部代码、格式备注)
- 高影响 + 高置信度 → 自动接受加审计抽样
- 低影响 + 高置信度 → 自动接受
这把稀缺的审查者时间分配到错误后果最大的字段上,而不只是模型最不确定的字段。
字段级路由替代什么
| 方法 | 审查触发条件 | 审查者工作量 | 错误捕获 |
|---|---|---|---|
| 全部审查 | 总是 | 非常高 | ~100% |
| 文档级路由 | 任何字段不确定 | 高(40% 的文档) | ~95% |
| 字段级路由 | 特定字段不确定 | 低(12% 的字段) | ~93% |
| 不审查 | 从不 | 零 | 不定 |
字段级路由处在效率前沿:接近文档级的错误检测率,只用一小部分工作量。文档级和字段级之间 2% 的捕获率差异代表的是不确定但碰巧正确的字段——模型不确定但猜对了。69% 的工作量减少远远补偿了。
一句话总结: 给每个提取字段输出置信度分数,按字段类型校准阈值,只把不确定的字段路由到人工审查——确定的不需要人工过目。