GETAPI
СвязатьсяВойти
GETAPI/Документация/Изображения в Chat Completions

Изображения в Chat Completions

Передача локального изображения в составе сообщения

Структура сообщения

Изображение передаётся блоком image_url в массиве messages[].content. В url можно передать поддерживаемый моделью URL или data URI

ПолеТипНазначение
typestringimage_url
image_url.urlstringАдрес изображения или data URI
image_url.detailstringДетализация, если поддерживается моделью

Для текстовой части используйте {"type":"text","text":"..."}

Пример

Подготовьте photo.png, установите openai, задайте GETAPI_API_KEY и GETAPI_MODEL. Модель должна поддерживать изображения в Chat Completions

python
import base64
import os
from pathlib import Path
from openai import OpenAI

client = OpenAI(
    base_url="https://api.getapi.ru/v1",
    api_key=os.environ["GETAPI_API_KEY"],
    max_retries=0,
)

encoded = base64.b64encode(Path("photo.png").read_bytes()).decode("ascii")
response = client.chat.completions.create(
    model=os.environ["GETAPI_MODEL"],
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "Опиши изображение"},
            {
                "type": "image_url",
                "image_url": {"url": f"data:image/png;base64,{encoded}"},
            },
        ],
    }],
)
print(response.choices[0].message.content)

MIME-тип в data URI должен соответствовать реальному файлу. Для JPEG используйте image/jpeg

Ответ и ограничения

Результат возвращается как обычный Chat Completion. Наличие изображения не меняет путь чтения текстового ответа

Если модель не поддерживает изображения, смена формата тела запроса не добавит такую возможность

Для нескольких файлов, PDF и обработки ошибок см. изображения и документы

Назад
← Анализ изображений
Далее
Изображения в Messages →