多模态 LLM 的能力边界
视觉理解的五个层次
层次1:识别描述
识别图像中的物体、人物、场景,进行基础描述。这是所有多模态模型的基础能力,准确率很高。
层次2:信息提取
从图像中提取文字(OCR)、表格数据、图表数值。对于截图、扫描文档、图片中的文字,现代多模态模型的识别准确率已非常高。
层次3:关系理解
理解图像中元素之间的空间关系、逻辑关系。例如:"图中左侧的图表与右侧的表格数据是否一致?"
层次4:推理分析
基于图像内容进行推理和分析。例如:分析折线图的趋势、判断建筑图纸的合理性、评估 UI 设计的用户体验。
层次5:跨模态理解
结合图像和文字的综合理解,如"对照这张架构图,审查以下代码是否符合设计规范"。这是最复杂的能力层次。
图像分析提示技巧
API 调用示例:图像分析
import base64
from openai import OpenAI
client = OpenAI()
def analyze_image(image_path: str, question: str) -> str:
# 读取并编码图像
with open(image_path, "rb") as f:
image_data = base64.b64encode(f.read()).decode("utf-8")
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": f"data:image/jpeg;base64,{image_data}",
"detail": "high" # high=高分辨率分析,消耗更多token
}
},
{
"type": "text",
"text": question
}
]
}
],
max_tokens=1000
)
return response.choices[0].message.content
UI/UX 设计评审提示词
请对这张 App 界面截图进行专业的 UX 评审。
分析维度:
1. 信息层次:重要信息是否突出?视觉权重是否合理?
2. 可用性:用户能否快速找到主要操作?
3. 一致性:设计风格、间距、字体是否统一?
4. 移动端适配:按钮大小是否符合 44pt 最小触控区域?
5. 无障碍:颜色对比度是否足够(WCAG AA 标准要求 4.5:1)?
输出格式:
## 优点
- [具体描述]
## 问题(按严重程度)
1. [严重] [问题描述 + 改进建议]
2. [中等] [...]
## 综合评分:X/10
文档与表格解析
PDF 财报数据提取
这是一份季度财务报告截图。请提取以下数据:
提取项目:
- 营业收入(Revenue)
- 净利润(Net Income)
- 毛利率(Gross Margin %)
- 同比增长率(YoY Growth %)
- 自由现金流(Free Cash Flow)
如果某项数据在图中不存在,填写 "N/A"。
如果数值单位不明确,请注明(如"百万美元")。
以 JSON 格式返回:
{
"quarter": "Q?YYYY",
"revenue": {"value": X, "unit": "百万美元"},
"net_income": {...},
...
}
代码截图理解
从图像中理解代码
这是一段代码的截图(可能存在压缩失真)。
请完成以下任务:
1. 尽可能准确地转录代码(标注不确定的字符用 [?])
2. 识别这是什么语言(及框架)
3. 分析代码功能
4. 指出任何可见的 Bug 或潜在问题
5. 如有不清晰的部分,说明"因图像模糊无法确认第X行"
注意:OCR 可能对以下字符混淆:
1/l/I,0/O,,/. ,''/"" ——请根据语境判断。
视觉推理:图表分析
数据图表深度分析提示词
这是一张业务数据折线图。请进行深度分析:
**基础读取**
- 描述图表类型、X 轴、Y 轴和图例
- 读取关键数据点(最高值、最低值、起始值、结束值)
**趋势分析**
- 整体趋势描述(上升/下降/波动/稳定)
- 识别明显的转折点和异常值
- 计算大概的增长率(如果可以)
**深层洞察**
- 数据背后可能的业务原因(基于常识推断)
- 与行业规律对比(季节性、周期性)
- 需要注意的风险信号
**建议**
- 基于数据趋势,提出 2-3 个值得关注的问题
多模态提示的注意事项
- 图像质量:高分辨率图像分析更准确,但消耗更多 token(high detail 模式约 1000 token/图)
- 引用图像内容:提示词中可以用"图中左上角的..."引导模型关注特定区域
- 多图对比:GPT-4o 支持单次请求传入多张图片,适合版本对比、前后对比场景
- 隐私保护:不要发送包含个人信息的截图(人脸、证件、账号密码)
多图对比分析
# 一次请求发送多张图片(如 A/B 测试方案对比)
response = client.chat.completions.create(
model="gpt-4o",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "这是两个版本的登录页面设计(图1为方案A,图2为方案B)。请从用户体验角度对比分析,指出各方案的优缺点,并给出推荐选择。"},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_a}"}},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b}"}},
]
}],
max_tokens=1500
)
视觉 Grounding:定位图像区域
请分析这张错误截图,并准确描述问题的位置:
1. 错误信息出现在页面的哪个区域(顶部/中部/底部,左/中/右)?
2. 截图中红色部分或高亮标注的内容是什么?
3. 导航栏显示的当前页面路径是什么?
4. 请列出截图中所有可见的按钮/链接文字
注意:用坐标感知的方式描述位置,如"距页面顶部约 1/3 处,左侧导航栏下方"。
多模态提示词的质量诊断
视觉幻觉(Visual Hallucination)
模型"看到"了图像中实际不存在的内容,或错误描述了图像元素。这与文本幻觉类似,在视觉任务中更难察觉。防范方法:① 要求模型注明置信度("我认为..."、"图像中似乎...");② 对关键数据(金额、日期、名称)要求二次确认;③ 避免用低分辨率、压缩严重的图像做关键信息提取。
OCR 错误的处理
文字识别错误在细小字体、手写体、低对比度图像中频率更高。常见混淆字符:1/l/I/|、0/O、rn/m、vv/w。缓解方法:在提示词中明确提醒这些混淆字符;要求模型标注不确定的字符(用[?]占位);对关键数值(如合同金额)要求重复确认。
图像 Token 成本管理
GPT-4o 的图像 Token 计费规则:low detail 约 85 tokens/图(固定,适合简单识别任务);high detail 约每 512×512 像素块 170 tokens,大图可达 1000+ tokens。Claude 3 的计费类似,按像素比例计费。优化策略:批量处理时先用 low detail 筛选,只对重要图像用 high detail;对大图先裁剪到必要区域再传入;文本提取任务用 high detail,简单分类用 low detail。
隐私与合规风险
用户上传的图像可能包含:个人身份信息(证件、人脸)、商业机密(产品设计图、内部报告截图)、个人隐私(医疗报告、私人聊天截图)。防御措施:在上传前对人脸做模糊处理;在使用条款中明确图像处理政策;不将用户图像用于模型训练(检查 API 使用条款);对特定行业(医疗、金融)做专项合规评估。
多模态模型能力对比
GPT-4o 的优势场景
多图输入(单次最多 10 张)、高分辨率文档 OCR、图表数据精确读取。detail 参数分 low/high/auto 三档,auto 模式根据图像内容自动选择最优解析精度。对表格、财务报表等结构化文档的提取准确率较高。弱项:手写文字识别、极小字体的复杂 PDF。
Claude 3.5/3.7 Sonnet 的优势场景
代码截图理解和生成(代码 → UI 截图 → 代码的往返转换效果更好)、长文档分析(结合 200K 上下文窗口可同时处理多页文档)、UI/UX 评审(对设计细节的描述更细致)。计费按图像像素面积比例计算,与 GPT-4o 类似。弱项:不支持视频帧分析。
Gemini 1.5 Pro 的优势场景
视频理解(原生支持视频帧采样,可分析最长 1 小时视频)、超长文档(100 万 token 上下文,可处理整本书 + 图片)、多语言 OCR(对中日韩文字识别更好)。适合需要跨帧理解的视频摘要、讲解视频的问答场景。
多模态任务的常见失败模式
- 过度依赖视觉理解:要求模型从模糊截图中精确读取 8px 小字数字,然后基于这些数字做计算——OCR 错误会导致整个计算结果错误。关键数值应在文本中明确提供,图像仅用于辅助理解上下文。
- 忽略图像压缩损失:通过 IM 或社交媒体传输的截图通常经过有损压缩,文字边缘模糊。直接用这类图像做 OCR,错误率可达 20-30%。建议请求方提供原始截图或 PDF。
- 一次请求过多图像:同时传入 8 张设计稿要求全面分析,模型会泛泛而谈。每次请求聚焦 1-2 张图的深度分析,效果远好于批量浅析。
多模态工作流:图生代码
【图生代码任务】
你是一名前端开发专家。请根据这张 UI 设计图,生成对应的 HTML + Tailwind CSS 代码。
要求:
1. 像素精确还原设计图中的布局(不需要完全相同,但要视觉上一致)
2. 响应式设计:同时适配桌面(≥1024px)和移动(≤768px)
3. 使用语义化 HTML(header/nav/main/section/footer)
4. 颜色用 CSS 变量定义,方便主题切换
5. 不使用任何 JavaScript,纯 HTML+CSS 实现
不确定的地方(如字体大小、精确颜色值)允许做出合理估计,在注释中说明假设。
本章小结
本章核心要点
- 五个视觉理解层次:识别描述 → 信息提取(OCR)→ 关系理解 → 推理分析 → 跨模态理解;不同任务对应不同层次,提示词需要引导模型进入正确层次。
- 图像质量与 Token 成本:detail: high 模式分析精度更高但消耗约 1000 token/图;简单任务用 detail: low(约 85 token)节省成本;生产环境要预算图像处理的 token 成本。
- 结构化提取模式:要求模型以 JSON 格式提取图表/文档数据;明确字段名和格式;对不确定字段用 "N/A" 标注——比自然语言描述更便于后续程序处理。
- 位置引用技巧:用"左上角"、"图中红色标注"、"距顶部约1/3处"等方式引导模型关注特定区域;在分析复杂图像时,分步骤引导比一次性要求更可靠。
- 多图对比:单次请求可传入多张图片做对比分析(A/B 方案对比、前后对比、版本差异);提示词中用"图1"/"图2"明确区分各图的身份。