多模态 Agent 里的 OCR 环节怎么设计?复杂版面和小字场景怎么优化?
先这样答
Agent 里的 OCR 和传统场景的最大差别:识别出的每一段文字都要带着坐标走。用户说「点击登录按钮」,Agent 需要知道「登录」这两个字出现在屏幕的哪个位置才能点击。所以输出结构是文本加边界框的配对列表,坐标和识别结果同样重要,识别对了坐标偏了照样点错。
流水线分三步。检测:找出文字区域,输出候选框。识别:对每个框做文字识别,多模态大模型可以直接端到端做,也可以用专用 OCR 模型。结构化:把散的识别结果按版面组织起来,哪些是标题、哪些是表格单元格、哪些是按钮文案,恢复阅读顺序和逻辑关系。
复杂版面靠版面分析:表格要先识别行列结构再填内容,双栏排版要正确还原阅读顺序,图文混排要把文字和图的说明配对。小字和低质量输入靠两条路:输入侧做超分辨率或对目标区域放大后重新截图识别;模型侧针对小字号做专项训练数据增强。评估不能只看字符准确率,还要看端到端的任务指标,比如「按文字找元素并点击」的命中率。
面试官会怎么追问
- 「端到端多模态模型会取代专用 OCR 吗?」 各有位置。端到端模型在版面理解、语义关联上强,适合理解型任务;专用 OCR 在精度、速度、小字这些硬指标上仍占优,高吞吐场景(每秒几十页文档)离不开它。产品里常见组合是专用 OCR 做识别、大模型做理解。
- 「识别错了但置信度很高怎么办?」 加交叉校验:同一区域用两个模型识别,结果不一致时触发人工或更慢的精识别通道。关键字段(金额、日期)可以叠加规则校验,比如金额格式合法性。
- 「坐标为什么经常和识别结果对不上?」 常见原因是检测和识别两个阶段的坐标系不统一,或者 resize 后坐标没换算回原图比例。工程上要在流水线出口做一个坐标一致性断言,框内区域和识别文本做一次裁剪复核。
回答的坑
- 只谈识别准确率,不谈坐标绑定。Agent 场景下 OCR 是定位的前置环节,丢坐标等于白识别。
- 把版面分析略过去。表格、双栏这些场景不处理,识别得再准下游也用不了。
同系列的题
—— 本题完 ——