部分大模型具备图片视觉理解能力,支持本地文件和图片 URL 方式传入图片,适用于图片描述、分类、视觉定位等场景。aihub平台的新用户?获取 API Key 及 开通模型等准备工作,请参见【快速入门】。
模型与API#
Responses API:支持图片作为输入进行分析。支持文件路径上传进行图片理解。
图片传入方式#
文件路径上传(推荐):直接传入本地文件路径,文件大小不能超过 512 MB。
Base64 编码传入:适用于图片文件体积较小的场景,单张图片小于 10 MB,请求体不能超过 64 MB。
图片 URL 传入:适用于图片文件已存在公网可访问 URL 的场景,单张图片小于 10 MB。
Chat API 是无状态的,如需模型对同一张图片进行多轮理解,则每次请求时都需传入该图片信息。
本地文件上传#
文件路径上传(推荐)#
建议优先采用文件路径方式上传本地文件,该方式可以支持最大 512MB 文件的处理。(当前 Responses API 支持该方式)如果需要实时获取分析内容,或者要规避复杂任务引发的客户端超时失败问题,可采用流式输出的方式。
Base64 编码传入#
将本地文件转换为 Base64 编码字符串,然后提交给大模型。该方式适用于图片文件体积较小的情况,单张图片小于 10 MB,请求体不能超过 64MB。(Responses API 和 Chat API 都支持该方式。)将图片文件转换为Base64编码字符串,然后遵循data:{mime_type};base64,{base64_data}格式拼接,传入模型。{mime_type}:文件的媒体类型,需要与文件格式mime_type对应。。
{base64_data}:文件经过Base64编码后的字符串。
图片 URL 传入#
如果图片已存在公网可访问URL,可以在请求中直接填入图片的公网URL,单张图片不能超过 10 MB。(Responses API 和 Chat API 都支持该方式。)使用场景#
多图输入#
API 可支持接受和处理多个图像输入,这些图像可通过图片可访问 URL 或图片转为 Base64 编码后输入,模型将结合所有传入的图像中的信息来回答问题。控制图片理解的精细度#
控制图片理解的精细度(指对画面的精细): image_pixel_limit 、detail 字段,2个字段若同时配置,则生效逻辑如下:生效前提:图片像素范围在 [196, 36,000,000] px,否则直接报错。
生效优先级:image_pixel_limit 高于 detail 字段,即同时配置 detail 与 image_pixel_limit 字段时,生效 image_pixel_limit 字段配置。
缺省时生效:image_pixel_limit 字段的 min_pixels / max_pixels 字段未设置,则使用 detail 默认值配置所对应的值。具体范围参见通过 detail 字段(图片理解)。 下面分别介绍如何通过 detail 、 image_pixel_limit 控制视觉理解的精度。detail 为 low 时,图片处理速度会提高,适合图片本身细节较少或者只需模型理解图片大致信息或者对速度有要求的场景。
detail 为 high 或 xhigh 时,模型可感知图片更多的细节,但是图片处理速度会降低,适合图像像素值高且需关注细节信息的场景,如街道地图分析等。
图片缩放规则:不在指定模式对应的图片像 素区间时,会等比例缩放至范围内。通过 image_pixel_limit 结构体#
控制传入图像像素大小范围,如果不在此范围,则会等比例放大或者缩小至该范围内,后传给模型进行理解。你可通过 image_pixel_limit 结构体,精细控制模型可理解的图片像素多少。
对应结构体如下:图文混排#
支持灵活地传入提示词和图片信息的方式,你可任意调整传入图片和文本的顺序,以及在system message或者User message传入图文信息。模型会根据顺序返回处理信息的结果,示例如下。图文混排场景,图文顺序可能影响模型输出效果,若结果不符预期,可调整顺序。当多图+一段文字时,建议将文字放在图片之后。
图片像素说明#
1.
宽*高范围:[196px, 36000000px]
2.
图片预处理:
根据使用的模型、设置的 detail 模式,将图片等比例缩放至相应的范围(具体见通过 detail 字段(图片理解)),可降低模型响应时延及 token 消耗。
图片数量说明#
单次请求传入图片数量受限于模型上下文窗口。当输入过长,触发模型上下文窗口,信息会被截断。当图片总像素值大,使用的模型上下文窗口为 32k token,每张图片转为 1312 token ,单次请求可传入的图片数量为 32000 ÷ 1312 = 24张。
当图片总像素值小,使用的模型上下文窗口为 32k token,每张图片转为 256 token,单次请求可传入的数量为 32000 ÷ 256 = 125 张。
模型回复的质量,受输入图片信息量影响。过多的图片会导致模型回复质量下滑,请合理控制单次请求传入图片的数量。
图片文件容量#
使用 URL 方式传入图片,单张图片不能超过 10MB。
使用 Base64 编码传入图片,单张图片不能超过 10MB,请求体不能超过 64MB。
使用文件路径传入图片,图片不能超过 512 MB。、图片格式说明#
支持的图片格式如下表,注意文件后缀匹配图片格式,即图片文件扩展名(URL传入时)、图片格式声明(Base64 编码传入时)需与图片实际信息一致。| 图片格式 | 文件扩展名 | 内容格式 Content Type |
|---|
| JPEG | .jpg, .jpeg | image/jpeg |
| PNG | .png | image/png |
| GIF | .gif | image/gif |
| WEBP | .webp | image/webp |
| BMP | .bmp | image/bmp |
| TIFF | .tiff, .tif | image/tiff |
| ICO | .ico | image/ico |
| DIB | .dib | image/bmp |
| ICNS | .icns | image/icns |
| SGI | .sgi | image/sgi |
| JPEG2000 | .j2c, .j2k, .jp2, .jpc, .jpf, .jpx | image/jp2 |
| HEIC | .heic | image/heic |
| | > doubao-1.5-vision-pro及以后模型支持 |
| HEIF | .heif | image/heif |
| | > doubao-1.5-vision-pro及以后模型支持 |
传入 Base64编码时使用:Base64 编码输入。
TIFF、 SGI、ICNS、JPEG2000 几种格式图片,需保证和元数据对齐,如在对象存储中正确设置文件元数据,否则会解析失败
API 参数字段说明#
不支持设置频率惩罚系数,无 frequency_penalty 字段。
不支持设置存在惩罚系数,presence_penalty 字段。