多模态应用:把 Vision 能力接进产品
主流大模型都已原生支持图像输入,"看图说话"从玩具变成了产品能力。本文讲清 Vision 模型擅长什么、典型产品场景(文档解析/客服/审核/无障碍),以及工程实现的要点——图片 token 成本、预处理、prompt 设计、局限与坑,帮你判断"这个功能该不该用 Vision"。
本文要点
- 主题聚焦:AI、大模型
- 适合人群:独立开发者、全栈工程师、AI 应用开发者
- 核心价值:快速理解背景、实践路径、常见误区和工程建议
过去一年,主流大模型(Claude、GPT、Gemini、Qwen-VL)都已原生支持图像输入。"多模态"从一个时髦词变成了可以直接用进产品的基础能力。但"能看图"不等于"什么都该用 Vision"——这篇讲清它真正擅长什么、怎么用、坑在哪。
一、Vision 模型擅长什么
把图像理解能力拆开看,当前 Vision 模型强的几件事:
- 文档/截图解析:把图表、发票、表单、UI 截图转成结构化信息——这块已经达到生产可用。
- OCR + 语义:不只是认字,还能理解字面背后的含义("这张发票的总价是哪一项、税额多少")。
- 图像描述与问答:描述内容、回答关于图像的问题。
- 视觉推理:UI 截图找 bug、图表读趋势、示意图理解。
弱项(别指望):
- 精确定位/测量:像素级坐标、精确尺寸——不靠谱。
- 密集小目标:图里几百个小物体逐个识别——会漏。
- 专业领域:医学影像、卫星图等需要领域训练的,通用 Vision 不够。
判断标准:任务是"理解图像内容并推理",用 Vision;是"精确像素操作或专业识别",用专用模型(OCR、目标检测)。
二、典型产品场景
Vision 已经在几个场景跑通商业价值:
1. 文档智能处理。 发票/合同/报表拍照上传 → 提取结构化字段(金额、日期、条款)入库。比传统 OCR + 规则解析健壮得多(能理解版式变化、手写、表格嵌套)。
2. 客服与支持。 用户拍一张"设备故障"的图/截图 → 模型识别问题、给解决方案。比"请描述你的问题"体验好十倍。
3. 内容审核。 图片/截图过一遍 → 判断是否违规、是否含敏感信息。可作人工审核的前置过滤。
4. 无障碍。 给视障用户描述图片内容(alt text 自动生成)。
5. UI/前端工程。 截图转代码、UI 走查、设计稿还原——Claude/Gemini 在这块已经很强。
三、工程实现要点
1. 图片怎么传。 两种方式:base64 内嵌(小图、实时)/ URL 引用(大图、多图)。base64 简单但吃 token;URL 要模型服务能访问(公网或同内网)。
// Claude 的图片输入(base64)
const message = await client.messages.create({
model: "claude-sonnet-5",
messages: [{
role: "user",
content: [
{ type: "image", source: { type: "base64", media_type: "image/png", data: base64 }},
{ type: "text", text: "提取这张发票的总金额和日期,输出 JSON" },
],
}],
});
2. token 成本。 这是 Vision 应用最容易翻车的点——图片按分辨率折算 token,一张高清图可能等于几千 token。一张 4K 截图可能比整段 prompt 还贵。
控制成本的三个动作:
- 预处理缩放:上传前把图缩到模型够用的分辨率(多数任务 1024–1568px 足够,别传 4K 原图)。
- 裁剪:只传感兴趣的区域(如发票的金额栏),别整张。
- 压缩:WebP/适当 JPEG 质量,减小体积。
经验:上传前预处理这一步,能把 Vision 成本压一个数量级。不做预处理的 Vision 应用,账单会很痛。
3. prompt 设计。 Vision 任务的 prompt 要更具体:
- 明确要提取什么("金额、日期、税额"而非"提取信息")。
- 给输出格式(JSON schema)。
- 处理不确定("看不清就返回 null,别猜")。
模糊的 prompt + 图像,模型容易"自由发挥"(编一个它觉得合理的答案)。
4. 配合 OCR。 对纯文字识别的高精度场景,专用 OCR(PaddleOCR/Tesseract)仍比 Vision 更准更便宜。组合:OCR 提文字 + Vision 做语义理解和版式还原,比单用任一都好。
四、局限与坑
- 幻觉。 模型可能"看到"图里没有的东西(尤其被 prompt 诱导)。关键信息要交叉验证(比如提取的金额,再问一遍或用 OCR 复核)。
- 不一致。 同一张图问两次,细节可能不同。对一致性要求高的,要后处理或多次取一致结果。
- 隐私。 图片可能含 PII/敏感信息,上传第三方 API 要脱敏或用自部署 Vision 模型。
- 版本漂移。 模型升级后,对同一图的解析可能变——要像测 RAG 一样,有 Vision 的评测集。
五、要不要用 Vision 的判断
不是所有"涉及图片"的需求都该上 Vision。决策树:
需要从图里提取/理解信息?
├ 是 → 信息是文字为主?(发票/文档/截图)
│ ├ 是 → 试试 OCR 先,不够再上 Vision
│ └ 否(图表/场景/语义)→ Vision
└ 需要精确像素/测量/密集识别 → 专用 CV 模型,别用 Vision
小结
Vision 模型让"看图理解"成为产品级能力,文档解析、客服、审核、无障碍、UI 工程是它目前的甜区。但用好的关键不在"会不会调 API",而在工程:
- 预处理缩放/裁剪/压缩控成本。
- prompt 精确指定要什么、怎么输出。
- 交叉验证防幻觉,关键信息别单点依赖。
- 混合 OCR:高精度文字识别仍便宜可靠。
记住一句:Vision 不是"万能图像处理",而是"会看图的推理引擎"。 把它用在"理解 + 推理"上(而非像素操作),并控制住图片 token 成本,它就是你产品里极具差异化的能力。
Related