首页/AI/AI 应用速查/多模态请求:图片输入格式

多模态请求:图片输入格式

视觉模型请求中 content 变为数组:OpenAI 风格 {type:image_url, image_url:{url}}(URL 或 data URI),Anthropic 风格为 image source(base64/URL);图片按分辨率折算成输入 token。

AI 应用速查AI更新于 2026-10-13

多模态请求怎么写

视觉模型的请求里,消息内容从字符串变成数组:文本块与图片块按顺序排列,模型按这个顺序理解它们的关系。图片通常有两种给法,一是给可访问的链接,二是直接内嵌 base64 数据。多数实现还提供细节档位参数,用来权衡清晰度与 token 成本。写多模态请求最常见的两类问题,就是内嵌数据缺少类型前缀,以及图片顺序与说明文字对不上。

基本信息

内容字段由字符串改为数组,元素带类型标记
图片块包含图片地址或内嵌数据,可附带细节档位
文本块用于说明看什么、按什么格式回答
内嵌数据必须带数据类型与编码前缀,否则请求失败
顺序语义数组顺序即模型看到的顺序,说明文字要紧跟对应图片
成本口径图片按分辨率折算为输入 token

图片块字段速查

字段作用注意
类型标记区分文本块与图片块写错会直接报结构错误
地址字段放可访问链接或内嵌数据内嵌数据必须以数据前缀开头
细节档位控制解析精度与成本部分实现支持,低档位可省 token
多图顺序决定模型对图片关系的理解与说明文字一一对应
格式支持图片格式是否被接受常见格式的支持情况以官方文档为准

典型使用场景

  • 票据识别:拍一张发票,直接抽出金额与开票方
  • 报错截图分析:把报错界面与文字描述一起发给模型
  • 多图对比:同一商品的多角度照片一起送入做判断
  • PDF 页图问答:把文档页面渲染成图片后提问
  • 图表读取:从截图中的折线图里读出趋势结论

两种图片传法

两种图片传法
# 方式一:公网可访问的图片链接
"content": [ {"type": "text", "text": "这张图里有什么"},
             {"type": "image_url", "image_url": {"url": "https://example.com/a.png"}} ]
# 方式二:内嵌数据(注意前缀,缺失就会返回 400)
"content": [ {"type": "text", "text": "读出票面金额"},
             {"type": "image_url", "image_url": {"url": "data:image/png;base64,iVBORw0..."}} ]
# 多图:按顺序追加图片块,并在文本里说明每张图分别是什么
# 图片较大时先压缩或裁剪,能明显降低折算后的 token 数

常见报错与原因

报错原因处理
结构错误内容写成字符串却放了图片改成数组形式的内容块
格式不支持内嵌数据前缀缺失或写错补上数据类型与编码前缀
请求体过大图片尺寸或数量超限压缩图片、减少张数或改用链接
识别结果差图片模糊、倾斜或分辨率过低先做旋转与裁边,再送模型
给图片配一句明确的指令,效果远好于只发一张图:说明要看什么、要输出什么字段,模型的回答会稳定得多。
内嵌数据会让请求体显著变大:批量处理时优先走链接或文件上传方式,避免请求体超限与额外的传输开销。

易错点

  • 内嵌数据缺少类型前缀:请求直接报结构错误,排查时容易误判为模型不支持图片
  • 图片与说明文字顺序错位:模型把 A 图的问题答成 B 图的内容
  • 不压缩直接送高清原图:折算后的 token 大幅增加,成本与延迟同步上升
  • 把多张图挤在一次请求里:请求体容易超限,模型也容易顾此失彼

数据来源与参考

  • OpenAI Images/Vision 文档;Anthropic Vision 文档

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌