Skip to main content
OpenAI Images Generations API в настоящее время поддерживает несколько моделей генерации изображений, включая классическую dall-e-3, модель с улучшенной способностью рендеринга текста gpt-image-1, новейшее поколение gpt-image-2, а также серию моделей nano-banana / nano-banana-2 / nano-banana-pro, подключаемых через тот же интерфейс. Все они способны создавать высококачественные изображения на основе текстовых описаний. В этом документе описан процесс использования OpenAI Images Generations API, который позволяет легко применять функции генерации изображений серии OpenAI.

Процесс подачи заявки

Для использования OpenAI Images Generations API сначала перейдите на страницу OpenAI Images Generations API и нажмите кнопку «Acquire», чтобы получить необходимые учетные данные для запросов: Если вы не вошли в систему или не зарегистрированы, вас автоматически перенаправят на страницу входа, где можно зарегистрироваться и войти. После входа вы вернетесь на текущую страницу. При первом запросе предоставляется бесплатный лимит, позволяющий бесплатно использовать API.

Модель GPT-Image-2

gpt-image-2 — новое поколение модели генерации изображений от OpenAI, которое по сравнению с dall-e-3 и gpt-image-1 имеет следующие улучшения:
  • Улучшенное следование инструкциям: точное понимание сложных структурированных указаний, таких как композиция, подсчет объектов, позиционные отношения.
  • Четкое рендеринг текста: английские буквы и цифры на постерах, меню, инфографике и логотипах практически не искажаются.
  • Богатое стилевое исполнение: нативная поддержка множества стилей, включая кинематографичные портреты, винтажные постеры, детские иллюстрации, продуктовую фотографию, инфографику.
  • Поддержка нескольких пропорций и высокого разрешения: 5 пропорций (1:1, 4:3, 3:4, 16:9, 9:16) и 3 уровня разрешения (1K / 2K / 4K).
Вызов API идентичен другим моделям, достаточно указать поле model со значением gpt-image-2. В ответе поле url содержит постоянную ссылку на изображение, размещённое на platform.cdn.acedata.cloud, которую можно открыть в браузере или встроить на веб-страницу.

Поддерживаемые значения size

gpt-image-2 проверяет только формат size: если это не auto или пустая строка, значение должно соответствовать формату WIDTHxHEIGHT (например, 1024x1024, 2048x1152, 800x600); любое другое значение приведёт к ошибке 400. Все размеры (1K / 2K / 4K / пользовательские) тарифицируются одинаково за одно изображение, без наценок за размер. Жёсткие ограничения на пользовательские размеры: ширина и высота должны быть кратны 16, максимальная длина стороны — 3840 пикселей, максимальное количество пикселей — 8,294,400. Превышение приведёт к отказу с ошибкой 4xx.
Вы также можете передать size: "auto" или опустить поле size, тогда модель выберет размер по умолчанию. При 1K разрешении выходные изображения могут не строго соответствовать переданным пикселям — например, при запросе 1024x1024 может быть возвращено 1254x1254 с сохранением пропорций. Если использовать это значение повторно, плата не изменится. Вызов для 4K обычно занимает 4–8 минут, рекомендуется использовать асинхронный callback_url для обратного вызова.
О параметре n В gpt-image-2 не поддерживается n > 1: параметр игнорируется, и независимо от значения n возвращается только одно изображение, тарифицируемое как одно. Для получения нескольких вариантов необходимо самостоятельно параллельно отправлять несколько запросов (рекомендуется менять prompt или seed, чтобы избежать схожих результатов). Это ограничение также действует для моделей gpt-image-1 / gpt-image-1.5 и серии nano-banana. Единственная модель с нативной поддержкой n > 1dall-e-2; dall-e-3 поддерживает только n = 1.
Ниже приведены реальные примеры, демонстрирующие возможности gpt-image-2.

Сценарий 1: Кинематографичный портрет

В подсказках можно использовать кинотермины (35mm пленка, малая глубина резкости, неоновый свет и т.п.) для точного управления атмосферой и текстурой. Пример вызова на Python:
Ответ:
Сгенерированное изображение:

Сценарий 2: Винтажный туристический постер (с рендерингом текста)

gpt-image-2 стабильно работает с типографикой и шрифтами, идеально подходит для постеров, меню, открыток с текстом.
Изображение по ссылке из поля url:

Модель точно воспроизвела стиль арт-деко, заголовки AMALFI и ITALIA 1958 чётко и правильно отрисованы.

Сценарий 3: Сложная композиция и подсчёт

Тестирование способности модели следовать структурированным указаниям по количеству и расположению объектов.
Сгенерированное изображение:

Количество книг на трёх полках (1 / 3 / 7) полностью соответствует подсказке — это сложно было стабильно добиться в эпоху dall-e-3.

Сценарий 4: Иллюстративный стиль (горизонтальный формат)

Указание художественных материалов и настроения позволяет получить стилизованные иллюстрации.
Горизонтальная иллюстрация:

Асинхронность и обратный вызов

Вызов gpt-image-2 обычно занимает 60–90 секунд. Чтобы не держать соединение открытым, можно использовать механизм асинхронного обратного вызова через callback_url. Процесс вызова идентичен другим моделям.

Серия моделей Nano Banana

Серия nano-banana основана на модели Gemini и подключена через тот же интерфейс /openai/images/generations, смена endpoint не требуется — достаточно указать нужное значение model из таблицы ниже.
Важное: поддерживаемые параметры Nano Banana адаптирована под протокол OpenAI и поддерживает только параметры: model, prompt, size.
  • size преобразуется в внутренний aspect_ratio согласно таблице, неуказанные размеры приводятся к 1:1:
    • 1024x1024 / 512x512 / 256x2561:1
    • 1792x102416:9
    • 1024x17929:16
  • Параметры n, quality, style, response_format, background, output_format не поддерживаются и игнорируются.
  • Ответ соответствует формату OpenAI (data[].url), но created всегда 0, b64_json отсутствует, revised_prompt всегда совпадает с исходным prompt.

Пример базового вызова

Ответ:
Сгенерированное изображение доступно по ссылке из поля url:

Обновление до флагманской модели nano-banana-pro

Достаточно изменить model на nano-banana-pro, остальные параметры остаются без изменений:
Пример ответа:

Асинхронный обратный вызов

Механизм callback_url также поддерживается для nano-banana, процесс вызова идентичен другим моделям, см. раздел Асинхронный обратный вызов.

Базовое использование

Далее можно заполнить соответствующие поля в интерфейсе, как показано на изображении:

При первом использовании API необходимо заполнить минимум три поля: authorization (выбирается из выпадающего списка), model (выбор модели OpenAI DALL-E, подробности в документации моделей), и prompt — текст подсказки для генерации изображения. Справа отображается сгенерированный код вызова, который можно скопировать и запустить, либо нажать кнопку «Try» для теста.

Пример вызова на Python:
Ответ:
Пояснения к полям ответа:
  • created — уникальный идентификатор задачи генерации изображения.
  • data — содержит информацию о сгенерированном изображении.
Внутри data поле url содержит ссылку на сгенерированное изображение.

Параметр качества изображения quality

Далее рассмотрим, как настроить параметры качества результата генерации. Параметр quality имеет два значения: standard — стандартное качество, и hd — более детализированное и согласованное изображение. Пример установки качества standard:

Справа отображается сгенерированный код вызова, который можно скопировать или запустить через кнопку «Try».

Пример кода на Python:
Ответ:
Изображение с параметром качества standard:

Аналогично, установив параметр качества в hd, получаем изображение с более детальной проработкой:

hd обеспечивает более тонкие детали и большую согласованность по сравнению с standard.

Параметр размера изображения size

Можно задать размер генерируемого изображения. Пример установки размера 1024x1024:

Справа отображается код вызова, который можно скопировать или запустить:

Пример кода на Python:
Ответ:
Изображение с размером 1024x1024:

Аналогично, размер 1792x1024 даёт изображение с другими пропорциями: Можно задавать и другие размеры, подробности в официальной документации.

Параметр стиля изображения style

Параметр style имеет два значения: vivid — более живое изображение, и natural — более естественное. Пример установки стиля vivid:

Справа отображается код вызова:

Пример кода:
Ответ:
Изображение с параметром стиля vivid:

Аналогично, параметр natural даёт более естественное изображение:

vivid создаёт более живые и яркие изображения по сравнению с natural.

Параметр формата ссылки на изображение response_format

Параметр response_format имеет два значения: b64_json — ссылка на изображение в Base64, и url — обычная ссылка на изображение. Пример установки response_format в url:

Справа отображается код вызова:

Пример кода:
Ответ:
Ссылка на изображение с форматом url доступна для прямого просмотра:

Аналогично, установка response_format в b64_json вернёт изображение в Base64, пример:

Асинхронный обратный вызов

Поскольку генерация изображений через OpenAI Images Generations API может занимать продолжительное время, при отсутствии ответа HTTP-соединение остаётся открытым, что приводит к дополнительным затратам ресурсов. Поэтому API поддерживает асинхронный обратный вызов. Процесс: клиент при запросе указывает поле callback_url. API сразу возвращает ответ с полем task_id — идентификатором задачи. После завершения генерации результат в формате POST JSON отправляется на указанный callback_url, включая task_id для связывания результата с задачей. Пример настройки webhook — используем публичный сервис https://webhook.site/, где можно получить URL для приёма запросов: Скопируйте URL, например https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab, и используйте его в поле callback_url:
Ответ будет мгновенным:
Через некоторое время на webhook придёт результат:
В ответе есть поле task_id и поле data с результатом генерации, что позволяет связать ответ с запросом.

Обработка ошибок

При ошибках API возвращает соответствующие коды и сообщения, например:
  • 400 token_mismatched: неверный запрос, возможно, отсутствуют или некорректны параметры.
  • 400 api_not_implemented: неверный запрос, возможно, отсутствуют или некорректны параметры.
  • 401 invalid_token: неавторизован, неверный или отсутствующий токен.
  • 429 too_many_requests: превышен лимит запросов.
  • 500 api_error: внутренняя ошибка сервера.

Пример ответа с ошибкой

Заключение

В этом документе вы узнали, как использовать OpenAI Images Generations API для простой генерации изображений с помощью официальных моделей OpenAI DALL-E. Надеемся, что эта документация поможет вам эффективно интегрировать и использовать API. Если у вас возникнут вопросы, пожалуйста, обращайтесь в нашу техническую поддержку.