使用指南
图片输入
把图片发给模型:各协议的写法、base64 与图片链接的区别,以及跨协议转换时的行为。
支持「看图」的模型可以读取你发过去的图片,例如描述图片内容、识别文字、分析图表。
先确认模型是否支持图片输入。 打开 模型&价格,在模型详情的「输入类型」里查看;不支持图片的模型会忽略图片或报错。
各协议的写法
Section titled “各协议的写法”图片都放在用户消息的内容数组里,和文字并列。
OpenAI Chat Completions:
{ "role": "user", "content": [ {"type": "text", "text": "这张图里有什么?"}, {"type": "image_url", "image_url": {"url": "data:image/png;base64,iVBORw0KGgo..."}} ]}url 可以是 data:图片类型;base64,编码内容 形式的 base64 数据,也可以是一个 https:// 图片链接。
Anthropic Messages:
{ "role": "user", "content": [ {"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": "iVBORw0KGgo..."}}, {"type": "text", "text": "这张图里有什么?"} ]}Gemini:
{ "role": "user", "parts": [ {"inlineData": {"mimeType": "image/png", "data": "iVBORw0KGgo..."}}, {"text": "这张图里有什么?"} ]}推荐用 base64,而不是图片链接
Section titled “推荐用 base64,而不是图片链接”- base64:图片数据直接放在请求里,不依赖任何外部网址,最可靠。
- 图片链接:当 NoviaHub 需要转换格式时,它会自己去下载这张图片,再转交给模型。例如用 Chat Completions 调用 Claude 模型,就属于这种情况。所以链接必须能从公网直接访问,不能是内网地址、需要登录的地址或已经失效的地址。下载失败时请求会报错。在测试中,用 Chat Completions 调用 Claude 模型、图片链接返回 404 时,得到的是 HTTP 500,错误码
convert_request_failed,信息为get file data failed: failed to download file, status code: 404。转换成 Gemini 格式时,信息以get file data from '<链接>' failed开头。
跨协议调用时
Section titled “跨协议调用时”NoviaHub 会自动把图片转换成目标协议的格式。在测试中确认过:
| 你的请求 | 模型实际使用的协议 | 模型收到的内容 |
|---|---|---|
Chat 的 image_url(base64) |
Anthropic(Claude 模型) | {"type": "image", "source": {"type": "base64", ...}} |
Chat 的 image_url(base64) |
Gemini | {"inlineData": {"mimeType": ..., "data": ...}} |
| Anthropic 的 base64 图片 | OpenAI Chat | image_url,内容是 data: 开头的 base64 地址 |
图片会按模型厂商的规则折算成输入 Token,按输入价格计费。有的模型对图片输入单独定价:模型详情的价格表里如果有「图像输入」一栏,就按那一栏的价格计算。每次调用实际用了多少 Token,可以在使用日志的详情里查看。