ДокументацияИзображения и PDF
Изображения и PDF
Мультимодальные модели принимают изображения и документы прямо в сообщениях POST /v1/chat/completions: анализ фото, чтение скриншотов, извлечение данных из сканов и PDF.
Какие модели подходят
Нужна модель, у которой в architecture.input_modalities есть "image" (картинки) или "file" (PDF). Список — в Модели и баланс или каталоге моделей.
Изображение по URL
{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Что изображено на картинке?" },
{
"type": "image_url",
"image_url": { "url": "https://example.com/photo.jpg" }
}
]
}
]
}Изображение как base64
Локальный файл передаётся data-URL:
import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.ZENVY_API_KEY,
baseURL: "https://api.zenvy.su/v1"
});
const base64 = fs.readFileSync("photo.jpg").toString("base64");
const completion = await client.chat.completions.create({
model: "gpt-4o",
messages: [
{
role: "user",
content: [
{ type: "text", text: "Опиши изображение" },
{
type: "image_url",
image_url: { url: `data:image/jpeg;base64,${base64}` }
}
]
}
]
});
console.log(completion.choices[0].message.content);PDF-документы
Модели с поддержкой файлов принимают PDF через content part типа file:
{
"model": "gemini-2.5-flash",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Сделай краткое содержание документа" },
{
"type": "file",
"file": {
"filename": "report.pdf",
"file_data": "data:application/pdf;base64,JVBERi0xLjQK..."
}
}
]
}
]
}Несколько изображений можно передать в одном сообщении — просто добавьте несколько частей image_url. Это удобно для сравнения картинок или анализа серии скриншотов.
Биллинг
Изображения и документы конвертируются провайдером в токены и тарифицируются как входные токены модели. Чем больше и детальнее изображение, тем больше токенов оно занимает.
Подробнее: Токены и биллинг. Генерация изображений по описанию — на странице Генерация изображений.