> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crazyrouter.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Python 识图

> Python 实现 gpt-5.5 和 Claude 视觉识图

> 更新日期：2026-06-06

## gpt-5.5 识图 - URL 方式

```python theme={null}
from openai import OpenAI

client = OpenAI(api_key="sk-xxx", base_url="https://api.crazyrouter.com/v1")

response = client.chat.completions.create(
    model="gpt-5.5",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "描述这张图片的内容"},
            {
                "type": "image_url",
                "image_url": {
                    "url": "https://example.com/photo.jpg"
                }
            }
        ]
    }]
)

print(response.choices[0].message.content)
```

## gpt-5.5 识图 - 本地图片

```python theme={null}
import base64
from openai import OpenAI

client = OpenAI(api_key="sk-xxx", base_url="https://api.crazyrouter.com/v1")

# 读取本地图片并转为 base64
with open("photo.jpg", "rb") as f:
    image_data = base64.b64encode(f.read()).decode("utf-8")

response = client.chat.completions.create(
    model="gpt-5.5",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "这张图片里有什么？"},
            {
                "type": "image_url",
                "image_url": {
                    "url": f"data:image/jpeg;base64,{image_data}"
                }
            }
        ]
    }]
)

print(response.choices[0].message.content)
```

## 多图对比

```python theme={null}
response = client.chat.completions.create(
    model="gpt-5.5",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "对比这两张图片的区别"},
            {"type": "image_url", "image_url": {"url": "https://example.com/img1.jpg"}},
            {"type": "image_url", "image_url": {"url": "https://example.com/img2.jpg"}}
        ]
    }]
)

print(response.choices[0].message.content)
```

## Claude 识图

Claude 模型同样支持通过 OpenAI 兼容格式进行识图：

```python theme={null}
response = client.chat.completions.create(
    model="claude-opus-4-8",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "详细描述这张图片"},
            {
                "type": "image_url",
                "image_url": {
                    "url": f"data:image/png;base64,{image_data}"
                }
            }
        ]
    }],
    max_tokens=1024
)

print(response.choices[0].message.content)
```

## 支持的识图模型

| 模型                | 说明                                       |
| ----------------- | ---------------------------------------- |
| `gpt-5.5`         | 2026 年 3 月 23 日已在生产环境实测成功的 OpenAI 兼容视觉模型 |
| `claude-opus-4-8` | 已实测成功的 Claude OpenAI 兼容视觉模型              |

<Note>
  `gpt-5.5` 与 `claude-opus-4-8` 的视觉输入已于 2026 年 3 月 23 日在 Crazyrouter 生产环境完成实测。图片大小建议不超过 20MB；Base64 编码会增加约 33% 的数据量，大图建议优先使用 URL。
</Note>
