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

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

Блок image и передача base64

Структура

Для локального изображения добавьте в messages[].content блок image

ПолеЗначение
typeimage
source.typebase64
source.media_typeMIME-тип изображения
source.dataBase64 без префикса data URI

Пример

Подготовьте photo.png, установите anthropic, задайте ключ и ID совместимой модели в GETAPI_API_KEY и GETAPI_MODEL

python
import base64
import os
from pathlib import Path
from anthropic import Anthropic

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

encoded = base64.b64encode(Path("photo.png").read_bytes()).decode("ascii")
response = client.messages.create(
    model=os.environ["GETAPI_MODEL"],
    max_tokens=1024,
    messages=[{
        "role": "user",
        "content": [
            {
                "type": "image",
                "source": {
                    "type": "base64",
                    "media_type": "image/png",
                    "data": encoded,
                },
            },
            {"type": "text", "text": "Опиши изображение"},
        ],
    }],
)

for block in response.content:
    if block.type == "text":
        print(block.text)

Форматы файлов

MIME-тип должен соответствовать байтам файла. Не передавайте путь к локальному файлу вместо его содержимого

Поддержку URL-источников, число изображений и ограничения размера проверяйте для конкретной модели

Ответ

Читайте все текстовые блоки content, отдельно проверяя stop_reason. Ответ может содержать блоки других типов

Подробнее: Messages, анализ изображений

Назад
← Изображения в Chat Completions
Далее
Мультимодальный ввод в GenerateContent →