Skip to main content

Обзор

Помимо отдельных text-to-image / image-edit эндпоинтов, APIYI также поддерживает нативный tool OpenAI Responses API для image_generation: основная модель gpt-5.5 сама решает, когда рисовать, внутренне выбирает модель GPT Image и возвращает изображение как base64 в массиве ответа output.
Проверено и работает (2026-06-17): gpt-5.5 + POST /v1/responses + tools: [{"type": "image_generation"}] возвращает корректный base64 PNG. Оба пути для изображений напрямую маршрутизируются через официальный upstream OpenAI.
Что выбрать? Для подавляющего большинства случаев «я просто хочу изображение» лучше использовать отдельный /v1/images/generations эндпоинт — тарификация идет только по фактическому использованию, поэтому это дешевле и лучше контролируется. Используйте нативный метод tool на этой странице только тогда, когда ваш pipeline обязательно должен проходить через Responses (например, если вы хотите, чтобы gpt-5.5 автономно решала, рисовать ли изображение внутри Agent conversation). Он добавляет фиксированную плату за вызов tool примерно $0.20 за изображение.

Сравнение двух методов

Ключевое отличие: нативный метод инструмента добавляет фиксированную плату ≈$0.20 за изображение, тогда как API изображений тарифицируется только по фактическому использованию — поэтому в большинстве случаев он дешевле.

Минимальный запрос

cURL

Python (requests)

Необязательные параметры помещаются в элемент tools: {"type": "image_generation", "output_format": "png|jpeg|webp", "size": "1024x1024", ...}. Не указывайте их, чтобы использовать значения по умолчанию (png).

Структура ответа (ключевые поля)

При успехе (HTTP 200) тело ответа содержит:
Как определить, действительно ли было создано изображение:
  • Успех: output содержит type="image_generation_call", а result декодируется в допустимое изображение, начинающееся с \x89PNG.
  • ⚠️ Без явного уведомления удалено: HTTP 200, но в output нет image_generation_call, только текст (это часто бывает, когда канал не поддерживает инструмент).
  • Ошибка: не-200 или возвращает unknown tool / no available channels и т. д. Для двух последних вариантов используйте /v1/images/generations.

💰 Тарификация

Возьмем один реальный вызов в качестве примера (входные 2347 tokens, выходные 74 tokens, генерация одного PNG 1122×1402). Итоговая плата = $0.213954 — это верно. Разбивка:
Преобразование: 500,000 quota = \$1 (получено из 106977 quota = \$0.213954).
Особенность отображения на странице деталей в консоли (заранее поясняйте это клиентам)На странице APIYI «условная детализация тарификации»:
  • В верхнем разделе отображается только текстовая часть расчета (base cost = (2347 + 74×6) × 2.5 = 6977.50);
  • Начисление за вызов инструмента генерации изображений (≈100,000 квоты / ≈$0.20) показывается как пустая строка в списке деталей — оно не отрисовывается;
  • но оно корректно учитывается в итоговой строке «итоговая квота 106977 / $0.213954».
Вывод: тарификация нормальная и точная — интерфейс детализации просто не показывает строку «image tool», поэтому позиции не сходятся с итоговой суммой. При объяснении клиентам делайте акцент: итог верен; разница — это плата за tool этого изображения (≈$0.20/изображение), просто она не выделена отдельно.

Примечания по стоимости

  • Плата за генерацию фиксирована за изображение (≈$0.20/изображение) и не зависит от длины prompt; стоимость tokens для текста на этом фоне невелика.
  • На каждое изображение уходит ~60-90 с; задайте тайм-аут клиента не менее 300 с.
  • Если вам нужно только изображение и не требуется, чтобы model принимала решение самостоятельно, отдельный /v1/images/generations endpoint, вероятно, дешевле и лучше поддается контролю.

Устранение неполадок

Связанные документы

  • GPT-Image-2 Overview - Обзор модели и тарификация
  • Text-to-Image API Reference - /v1/images/generations, выбор по умолчанию для большинства случаев
  • Image Edit API Reference - /v1/images/edits, редактирование по опорному изображению / слияние нескольких изображений / маска