Изображения
Как отправить изображения c помощью AI-моделей через RouterAI API.
Запросы с изображениями к мультимодальным моделям доступны через API /api/v1/chat/completions с многокомпонентным параметром messages. Параметр image_url может быть либо URL-адресом, либо изображением в кодировке base64. Обратите внимание, что несколько изображений можно отправлять в отдельных элементах массива содержимого. Количество изображений, которые вы можете отправить в одном запросе, варьируется в зависимости от провайдера и модели. Из-за особенностей парсинга содержимого мы рекомендуем сначала отправлять текстовый запрос, а затем изображения. Если изображения должны идти первыми, рекомендуется поместить их в системный промпт.
RouterAI поддерживает как прямые URL-адреса, так и данные в кодировке base64 для изображений:
- URL-адреса: Более эффективны для публично доступных изображений, так как не требуют локального кодирования
- Base64: Требуется для локальных файлов или приватных изображений, которые не являются публично доступными
Использование URL-адресов изображений
Вот как отправить изображение, используя URL-адрес:
curl https://routerai.ru/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ROUTERAI_API_KEY" \
-d '{
"model": "google/gemini-2.5-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Что изображено на этой картинке?"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/image.jpg"
}
}
]
}
]
}'
Использование изображений в кодировке Base64
Для локально хранящихся изображений вы можете отправлять их, используя кодировку base64. Вот как это сделать:
Шаг 1: Кодирование изображения в base64 (Linux)
# Кодирование изображения в base64 и сохранение в переменную
BASE64_IMAGE=$(base64 -w 0 path/to/your/image.jpg)
# Или создание data URL напрямую
DATA_URL="data:image/jpeg;base64,$(base64 -w 0 path/to/your/image.jpg)"
Шаг 2: Отправка запроса с base64 изображением
# Используя переменную DATA_URL из предыдущего шага
curl https://routerai.ru/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ROUTERAI_API_KEY" \
-d '{
"model": "google/gemini-2.5-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Что изображено на этой картинке?"
},
{
"type": "image_url",
"image_url": {
"url": "'"$DATA_URL"'"
}
}
]
}
]
}'
Альтернативный способ (всё в одной команде):
curl https://routerai.ru/api/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ROUTERAI_API_KEY" \
-d '{
"model": "google/gemini-2.5-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Что изображено на этой картинке?"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,'"$(base64 -w 0 path/to/your/image.jpg)"'"
}
}
]
}
]
}'
Поддерживаемые типы содержимого изображений
image/pngimage/jpegimage/webpimage/gif