content 字段:不再传一个字符串,而是传一个由若干部分组成的数组 —— 文本块 {"type": "text"} 和图片块 {"type": "image_url"}。
通过公开链接传图
最简单的情况 —— 图片已经在网上,有直接可访问的 URL。Python (OpenAI SDK)
本地文件用 base64
如果图片无法公开访问(截图、磁盘上的照片),就把它编码成 base64,以data:image/jpeg;base64,... 这种 data URI 形式传入。
Python (OpenAI SDK)
PNG 把前缀改成
data:image/png;base64,,WebP 用 data:image/webp;base64,。MIME 类型必须和文件的真实格式一致。注意事项
图越大,消耗的 token 越多
图越大,消耗的 token 越多
图片会计入输入 token,分辨率越高,请求越贵。如果不需要看清细节,发送前先把图缩小(比如长边压到 1024–1568 px)。
超大 base64 会把请求撑大
超大 base64 会把请求撑大
base64 字符串比原文件大约大三分之一,而且整段都塞进请求体里。对于体积大的图片,用公开链接比传几兆字节的 data URI 更稳妥 —— 否则可能撞上请求体积上限。
支持的格式
支持的格式
通常是
jpeg、png、webp 和 gif。HEIC、TIFF、SVG 等冷门格式建议先转换成上述之一。