Документация
Генерация изображений: как использовать
Гайд по /v1/images/generations и /v1/images/edits — параметры, base64-ответ, редактирование через multipart и JSON, лимит 20 МБ.
Обновлено 13 июля 2026 г.
Картинки генерируются запросом POST /v1/images/generations: обязательны
model и prompt, ответ приходит в data[].b64_json. Редактирование — это
POST /v1/images/edits: multipart с файлами, как в OpenAI SDK, или JSON с
base64 (суммарно до 20 МБ). Для редактирования модель должна принимать
картинки на вход — например, google/gemini-2.5-flash-image. Списание — после
успешной генерации.
Как сгенерировать картинку?
По умолчанию response_format = b64_json, то есть картинка приходит прямо
в теле ответа — остаётся декодировать base64 и сохранить. В usage — расход
токенов (состав зависит от модели: gpt-image даёт полный разбор, gemini —
только total_tokens, imagen токены не считает).
Какие параметры поддерживаются?
Основные: n (количество картинок), size («1024x1024» и т.п.), quality,
response_format (b64_json | url). Это passthrough-поля — что именно
умеет конкретная модель, решает она сама. Полная таблица полей — в
референсе images/generations.
Генерировать умеют модели с пометкой «image» в
каталоге: семейства gpt-image, gemini-*-image,
imagen. Текстовая модель в этом эндпоинте ответит 400
unsupported_capability.
Как отредактировать картинку?
Эндпоинт POST /v1/images/edits принимает два формата тела:
- multipart/form-data — так работает
client.images.edit()в OpenAI SDK: файлimage(можно несколько), опциональноmask, плюсpromptиmodel; - application/json — то же тело, что у generations, с полем
image(массив картинок как base64 или URL) — удобно для curl и бэкендов, где файла на диске нет.
Суммарный размер файлов — не больше 20 МБ.
JSON-вариант того же запроса — картинка объектом
{ "type": "base64", "data": "<...>", "mime_type": "image/png" } или
{ "type": "url", "data": "https://..." } в массиве image. Все поля — в
референсе images/edits.
Тот же режим редактирования включается и в /v1/images/generations, если
передать туда непустое поле image, — /v1/images/edits существует для
совместимости с SDK, внутри это один путь.
Какая модель подходит для редактирования?
Та, что принимает картинки на вход (capability image_input) — сейчас это
семейство gemini-*-image. Модель без этой возможности (например,
imagen-4) ответит 400 unsupported_capability — подробнее про коды в
гайде «Ошибки API». Актуальные пометки по каждой
модели — в каталоге моделей.
Сколько стоит генерация?
Зависит от модели: где-то тариф за картинку, где-то по токенам. Цены в рублях — на странице цен для разработчиков, списание только после успешного ответа. Пощупать генерацию и редактирование без кода можно в генераторе изображений на сайте.