API 参考
图像理解(识图)
识图能力通过 Chat Completions 的多模态消息实现:在消息中同时传入文本与图片,即可完成图像问答、OCR 文字识别与场景描述,无需调用独立端点。
支持模型
| 模型 | 定位 |
|---|---|
gpt-5.6-sol | 旗舰通用,图文混合推理 |
claude-sonnet-5 | 速度与智能平衡,适合生产流程 |
claude-sonnet-4-6 | 均衡高效,适合高频识图任务 |
以上模型均支持视觉(vision)输入。各模型的能力标注以模型广场(控制台「模型服务」)为准。
传入方式
在 messages 的 content 中使用内容部件数组,文本用 text 部件,图片用 image_url 部件。图片有两种传法:
- 图片 URL: 传入公网可访问的图片地址,适合图片已在线上的场景。
- Base64 编码: 把本地图片编码为
data:image/jpeg;base64,...形式的 data URL,适合本地文件或内网图片。
代码示例
Python(图片 URL)
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.yomiapi.com/v1"
)
response = client.chat.completions.create(
model="claude-sonnet-5",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "这张图片里有什么?"},
{"type": "image_url", "image_url": {"url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"}}
]
}],
max_tokens=300
)
print(response.choices[0].message.content)
Python(本地图片 Base64)
import base64
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.yomiapi.com/v1"
)
with open("photo.jpg", "rb") as f:
b64 = base64.b64encode(f.read()).decode()
response = client.chat.completions.create(
model="claude-sonnet-5",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "识别图中的文字并输出为纯文本"},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{b64}"}}
]
}]
)
print(response.choices[0].message.content)
cURL
curl https://api.yomiapi.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "描述这张图片的内容"},
{"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}}
]
}]
}'
使用建议
- 图片质量: 清晰、主体明确的图片识别效果更好;OCR 场景尽量提供高分辨率原图。
- 多图输入: 一条消息可包含多个
image_url部件,用于对比或关联多张图片。 - 提问方式: 把要求写具体(如「提取表格为 Markdown」「只输出图中的电话号码」),比笼统的「描述图片」更可控。
图片会计入输入 token,尺寸越大消耗越多。批量识图前建议先压缩图片,并用少量样本确认效果与用量。
