视觉语言模型(VLM)能看懂什么?能力边界与业务测试方法
把一张截图、一张照片或一张图表交给大模型,它就能描述内容、回答问题,这种能力来自视觉语言模型(Vision-Language Model,VLM)。它让很多过去需要专门训练视觉模型的任务,变成了“写一句提示词”就能尝试的事情。但 VLM 的能力分布很不均匀:有些任务表现接近人类,有些看似简单的任务却频繁出错。 在业务中使用之前,必须清楚它的边界。
VLM 的基本原理
典型的视觉语言模型由三部分组成:视觉编码器把图像切成小块并转换为向量表示;连接模块把视觉向量映射到语言模型能够理解的空间;大语言模型结合图像信息和文字提示生成回答。也就是说,图像被转换成了一串“视觉 Token”,和文字 Token 一起参与推理。多模态的整体介绍可参考多模态 AI 入门。
由于图像通常会被缩放到固定分辨率再切块,细节信息可能在这个过程中丢失,这是很多错误的根源。
擅长的任务
- 场景理解与描述:描述图片中有什么、发生了什么、整体氛围如何;
- 截图理解:理解软件界面、网页截图、聊天记录截图中的内容和含义;
- 图表解读:读取柱状图、折线图的趋势和主要结论;
- 文档问答:对清晰的文档图片进行信息提取和问答;
- 开放式识别:识别常见物体、品牌、地标、植物动物等。
容易出错的任务
计数
“图中有几个人”“货架上有多少瓶饮料”,当数量较多或物体重叠时,VLM 经常数错。
精确定位与空间关系
“左边第三个按钮”“杯子在盘子的左侧还是右侧”,空间方位判断并不可靠,输出精确坐标的能力也因模型而异。
细小文字与密集信息
高分辨率图片中的小字、密集表格中的具体数值,经过缩放后可能变得模糊,模型会“猜”出看似合理的内容。
精确读数
仪表盘读数、图表中某个点的具体数值,往往只能给出大致估计。
细粒度区分
区分相似型号的零件、判断细微的缺陷,通用 VLM 通常不如专门训练的视觉模型。
在业务中如何测试
构建真实样本测试集
收集几十到几百张来自真实业务的图片,覆盖不同光线、角度、清晰度和难度,人工标注标准答案。不要只用清晰、典型的图片测试。
按任务类型拆分评估
把测试拆分为识别、提取、计数、判断等不同类型,分别统计准确率。整体准确率可能掩盖某类任务的严重问题。
测试一致性
同一张图片多次提问,或换一种问法,观察回答是否稳定。不稳定的结果说明模型对该任务没有把握。
关注错误类型
区分“没识别出来”和“识别错了还很自信”。后者在业务中危害更大。评测方法的更多细节见如何构建评测集。
降低错误风险的方法
- 提高输入质量:对于包含细节的图片,可以先裁剪出关键区域,或者分块输入;
- 结合专用工具:文字提取先用 OCR,计数和检测任务使用专门的检测模型,VLM 负责理解和整合,参见文档智能与 OCR;
- 要求说明依据:让模型描述它在图中看到了什么才得出结论,便于人工核查;
- 设置置信度出口:允许模型回答“看不清”或“无法确定”;
- 高风险场景人工复核:涉及金额、安全、医疗判断的结论必须有人确认。
小结
视觉语言模型极大降低了图像理解的使用门槛,在场景理解、截图分析、图表解读等任务上非常实用。但计数、定位、细小文字和精确读数仍是明显短板。用真实业务样本测试、按任务类型评估、结合专用工具,才能把 VLM 用在合适的位置。