OpenAI: GPT Image 1 Mini
GPT Image 1 Mini создаёт и редактирует изображения по тексту и визуальным образцам в семействе GPT Image 1. Модель поддерживает стандартные размеры результата, маски и распространённые форматы изображений; для входных изображений доступна низкая точность сохранения деталей вместо высокой, предусмотренной в GPT Image 1.
- Ailoot Ultra · Картинки
POST /v1/images/generationsopenai/gpt-image-1-mini - Ailoot Ultra · Картинки
POST /v1/images/generationsgpt-image-1-mini
О модели
Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.
GPT Image 1 Mini — вариант Mini семейства GPT Image 1 от OpenAI. Модель принимает текст и изображения и создаёт изображения в предусмотренных разработчиком сценариях генерации и редактирования. Используйте её для обычных творческих заданий, визуальных концепций и изменений предоставленного изображения, если документированные настройки версии Mini подходят для задачи. При подготовке задания учитывайте стандартные размеры кадра Mini и низкую точность сохранения деталей входных изображений.
Для нового изображения опишите объект, сцену, свет, композицию и стиль. Для редактирования укажите нужное изменение и элементы исходника, которые должны остаться узнаваемыми. Простое задание на иллюстрацию может описывать велосипед для доставки у дверного проёма, крупные лаконичные формы и сдержанную палитру; следующая правка может менять фон, сохраняя выбранную композицию. Документированные прямые сценарии работы допускают до 32 000 символов в промпте и от одного до десяти изображений на выходе, что позволяет получить варианты для выбора.
При редактировании можно использовать до шестнадцати входных изображений. Объясните, какое изображение задаёт основной объект, обстановку или способ визуального оформления, чтобы эти роли были однозначны. GPT Image 1 Mini поддерживает только значение low параметра input_fidelity. Значение high, доступное в GPT Image 1, для Mini не предусмотрено. Точность сохранения деталей входного изображения и качество отрисовки результата — отдельные настройки: высокое качество результата не включает другой режим сохранения исходника. Явно укажите, что требуется сохранить, и проверьте соответствующие детали исходника в полученном изображении.
Маска может направлять изменение в выбранную область. Исходное изображение и маска должны иметь одинаковые формат и размеры, а маске нужен альфа-канал; в руководстве по генерации изображений указан предел размера менее 50 MB. Если исходных изображений несколько, маска применяется к первому. Точное задание может требовать изменить цвет одного объекта, сохранив общее кадрирование сцены. Маска направляет модель вместе с промптом, но не гарантирует строгую геометрическую границу, поэтому проверьте соседнюю область наряду с самим изменением.
Стандартные размеры кадра — 1024 × 1024, 1536 × 1024 и 1024 × 1536 пикселей; там, где это поддерживается, доступен автоматический выбор. Качество отрисовки задаётся значениями low, medium, high и auto. Эта настройка отделена от точности сохранения входного изображения, для которой Mini допускает только low. Произвольные размеры высокого разрешения и уровни xhigh или max из более поздних версий GPT Image в этот профиль Mini не входят. Выбирайте кадр под место размещения и качество, подходящее для чернового или готового изображения.
Разработчик поддерживает вывод в PNG, JPEG и WebP; по умолчанию используется PNG. Для JPEG и WebP можно задавать сжатие от 0 до 100. Прозрачный, непрозрачный и автоматически выбранный фон подходят для разных требований к макету; если нужен альфа-канал, выбирайте PNG или WebP. Прозрачный объект можно поместить в отдельную композицию, а непрозрачная сцена содержит собственный фон. Сохраняйте выбранный выходной файл: его закодированное представление при передаче не является готовым дизайнерским материалом.
В справочнике разработчика по изображениям описана потоковая передача до трёх промежуточных изображений до завершения работы. Предпросмотр позволяет видеть ход генерации, но в качестве готового результата следует сохранять только итоговое изображение. При последовательном редактировании снова передавайте выбранное изображение вместе со следующей конкретной инструкцией. Интерфейс производителя также поддерживает пакетную обработку.
Сверьте надписи, чувствительные к расположению детали и внешний вид исходных объектов с заданием. GPT Image по-прежнему может испытывать сложности с точным размещением текста, структурированными композициями и одинаковым видом повторяющихся объектов в разных генерациях. Если нужно изменить видимую деталь, используйте выбранный результат для более узкой правки, ясно указывая и изменение, и требования к сохранению. Полезный результат Mini — готовое изображение для определённой творческой задачи, полученное со стандартными размерами и настройками точности, которые предоставляет именно эта версия.
Ailoot Ultra · Картинки POST /v1/images/generations openai/gpt-image-1-mini
openai/gpt-image-1-miniopenai/gpt-image-1-minigpt-image-1-mini
Начало
GPT Image 1 Mini создаёт и редактирует изображения по тексту и визуальным образцам в семействе GPT Image 1. Модель поддерживает стандартные размеры результата, маски и распространённые форматы изображений; для входных изображений доступна низкая точность сохранения деталей вместо высокой, предусмотренной в GPT Image 1.
- Допустимые входные данные
- Текст · Картинки
- Результаты
- Картинки
Доступно в Ailoot · входные данные и методы
Ailoot Ultra · Картинки POST /v1/images/generations
- Входные данные
text,image- Результат
image
| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
|---|---|---|---|---|
Полеmodel | Типstring | ТребованиеОбязательно | Значения и ограничения openai/gpt-image-1-mini | По умолчанию— |
Полеprompt | Типstring | ТребованиеОбязательно | Значения и ограничения Минимальная длина: 1 | По умолчанию— |
Полеaspect_ratio | Типstring | ТребованиеНеобязательно | Значения и ограничения 1:1, 3:2, 2:3, auto | По умолчанию— |
Полеquality | Типstring | ТребованиеНеобязательно | Значения и ограничения auto, low, medium, high | По умолчанию— |
Полеbackground | Типstring | ТребованиеНеобязательно | Значения и ограничения auto, transparent, opaque | По умолчанию— |
Полеn | Типinteger | ТребованиеНеобязательно | Значения и ограничения Минимум: 1 Максимум: 10 | По умолчанию— |
Полеinput_references | Типarray | ТребованиеНеобязательно | Значения и ограничения Минимум элементов: 0 Максимум элементов: 16 | По умолчанию— |
Полеoutput_compression | Типinteger | ТребованиеНеобязательно | Значения и ограничения Минимум: 0 Максимум: 100 | По умолчанию— |
Полеprovider | Типobject | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Параметры и жизненный цикл метода
| Параметр | Контракт |
|---|---|
Параметрcontent_type | Контрактapplication/json |
Параметрrequired | Контрактmodel, prompt |
Параметрmaterial_types | Контрактtext, image |
Жизненный цикл: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Фактически возвращённый task_id или запись в медиатеке
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Тарифы
Как рассчитывается итоговая плата
Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.
Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.
- Быстрый режим
- Не указано При выборе быстрого режима
- Режим flex
- Не указано При выборе режима flex
- Максимальная интенсивность рассуждений
- Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Оценочные ставки для сравнения
Цены по конфигурациям
Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.
| Конфигурация | Шкала ставок | Прогноз количества | Плата |
|---|---|---|---|
| КонфигурацияБазовые тарифы на токены | Шкала ставокБазовая ставка | Прогноз количества— | Плата Вход · Входные токены · Оценка только для сравнения — / 1K токенов Выход · Выходные токены · Оценка только для сравнения — / 1K токенов Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов |
| КонфигурацияОриентировочная стоимость генерации | Шкала ставок— | Прогноз количестваОценка для одной генерации | Плата Выход · Оценочная стоимость генерации · Оценка только для сравнения $0.065536 оценка до генерации Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации. |
Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →
Примеры запросов
Ailoot Ultra · Картинки
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'openai/gpt-image-1-mini', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Получить и сохранить результаты
Ailoot Ultra · Картинки
Загрузите каждое полученное изображение или сохраните его содержимое Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Чтение другого содержимого
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Сохраняйте все готовые результаты
Сохраните каждое готовое изображение; загрузите содержимое по каждому полученному URL или декодируйте его содержимое Base64.
Сохраняйте полный ответ и заголовки, все фактические результаты, исходные возвращённые идентификаторы и все поля использования. Восстанавливайте исходную операцию без повторной отправки запроса создания.
Если нужно проверить исходный ответ
Сохраните возвращённый X-Client-Request-ID для сверки. Читайте только фактически возвращённые значения task_id/asset_id или собственную медиатеку; никогда не составляйте URL задачи из ID операции и никогда не отправляйте запрос создания повторно.
Поля ответа
| Поле | Тип |
|---|---|
Полеcreated | Тип |
Полеdata[].url | Тип |
Полеdata[].b64_json | Тип |
Полеusage | Тип |
Псевдонимы
Псевдонимы моделей
Ailoot Ultra openai/gpt-image-1-mini, gpt-image-1-mini
Псевдонимы путей метода
/v1/images
Связанные ID для вызова
Ailoot Ultra · Картинки POST /v1/images/generations gpt-image-1-mini
gpt-image-1-miniopenai/gpt-image-1-minigpt-image-1-mini
Начало
GPT Image 1 Mini создаёт и редактирует изображения по тексту и визуальным образцам в семействе GPT Image 1. Модель поддерживает стандартные размеры результата, маски и распространённые форматы изображений; для входных изображений доступна низкая точность сохранения деталей вместо высокой, предусмотренной в GPT Image 1.
- Допустимые входные данные
- Текст
- Результаты
- Картинки
Доступно в Ailoot · входные данные и методы
Ailoot Ultra · Картинки POST /v1/images/generations
- Входные данные
text- Результат
image
| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
|---|---|---|---|---|
Полеmodel | Типstring | ТребованиеОбязательно | Значения и ограничения gpt-image-1-mini | По умолчанию— |
Полеprompt | Типstring | ТребованиеОбязательно | Значения и ограничения Максимальная длина: 32 000 | По умолчанию— |
Полеsize | Типstring | ТребованиеНеобязательно | Значения и ограничения 1024x1024, 1536x1024, 1024x1536, auto | По умолчаниюauto |
Полеbackground | Типstring | ТребованиеНеобязательно | Значения и ограничения transparent, opaque, auto | По умолчаниюauto |
Полеmoderation | Типstring | ТребованиеНеобязательно | Значения и ограничения low, auto Условия: Используйте auto для стандартной модерации содержимого. | По умолчанию— |
Полеn | Типinteger | ТребованиеНеобязательно | Значения и ограничения Минимум: 1 Максимум: 10 | По умолчанию1 |
Полеquality | Типstring | ТребованиеНеобязательно | Значения и ограничения auto, high, medium, low | По умолчаниюauto |
Полеoutput_compression | Типinteger | ТребованиеНеобязательно | Значения и ограничения Минимум: 0 Максимум: 100 Условия: Применяется к результатам JPEG и WebP; передайте документированное целое значение. | По умолчанию100 |
Полеoutput_format | Типstring | ТребованиеНеобязательно | Значения и ограничения webp, png, jpeg | По умолчаниюpng |
Полеstream | Типboolean | ТребованиеНеобязательно | Значения и ограничения false Условия: Этот маршрут возвращает один завершённый ответ JSON. | По умолчаниюfalse |
Параметры и жизненный цикл метода
| Параметр | Контракт |
|---|---|
Параметрcontent_type | Контрактapplication/json |
Параметрrequired | Контрактprompt, model |
Параметрmaterial_types | Контрактtext |
Параметрoptional | Контрактsize, background, moderation, n, quality, output_compression, output_format, stream |
Параметрconditions | КонтрактПрозрачный фон требует PNG или WebP., Сжатие результата применяется к JPEG или WebP., Выбранный метод генерирует из текста. Описанные производителем средства редактирования и потоковой передачи относятся к отдельным возможностям. |
Жизненный цикл: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Фактически возвращённый task_id или запись в медиатеке
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Тарифы
Как рассчитывается итоговая плата
Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.
Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.
- Быстрый режим
- Не указано При выборе быстрого режима
- Режим flex
- Не указано При выборе режима flex
- Максимальная интенсивность рассуждений
- Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Оценочные ставки для сравнения
Цены по конфигурациям
Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.
| Конфигурация | Шкала ставок | Прогноз количества | Плата |
|---|---|---|---|
| КонфигурацияБазовые тарифы на токены | Шкала ставокБазовая ставка | Прогноз количества— | Плата Вход · Входные токены · Оценка только для сравнения — / 1K токенов Выход · Выходные токены · Оценка только для сравнения — / 1K токенов Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов |
| КонфигурацияОриентировочная стоимость генерации | Шкала ставок— | Прогноз количестваОценка для одной генерации | Плата Выход · Оценочная стоимость генерации · Оценка только для сравнения $0.065536 оценка до генерации Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации. |
Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →
Примеры запросов
Ailoot Ultra · Картинки
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'prompt': 'A cute baby sea otter', 'model': 'gpt-image-1-mini', 'size': '1024x1024', 'n': 1, 'background': 'auto', 'moderation': 'auto', 'output_format': 'png'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Получить и сохранить результаты
Ailoot Ultra · Картинки
Загрузите каждое полученное изображение или сохраните его содержимое Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Чтение другого содержимого
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Сохраняйте все готовые результаты
Сохраните каждое готовое изображение; загрузите содержимое по каждому полученному URL или декодируйте его содержимое Base64.
Сохраняйте полный ответ и заголовки, все фактические результаты, исходные возвращённые идентификаторы и все поля использования. Восстанавливайте исходную операцию без повторной отправки запроса создания.
Если нужно проверить исходный ответ
Сохраните возвращённый X-Client-Request-ID для сверки. Читайте только фактически возвращённые значения task_id/asset_id или собственную медиатеку; никогда не составляйте URL задачи из ID операции и никогда не отправляйте запрос создания повторно.
Поля ответа
| Поле | Тип |
|---|---|
Полеcreated | Тип |
Полеdata[].url | Тип |
Полеdata[].b64_json | Тип |
Полеusage | Тип |
Псевдонимы
Псевдонимы моделей
Ailoot Ultra openai/gpt-image-1-mini, gpt-image-1-mini
Псевдонимы путей метода
/v1/images
Связанные ID для вызова
FAQ · OpenAI: GPT Image 1 Mini
- Какие входные данные и результаты доступны?
POST /v1/images/generations·openai/gpt-image-1-mini:text,image→imagePOST /v1/images/generations·gpt-image-1-mini:text→image- Какие поля использует запрос?
POST /v1/images/generations·openai/gpt-image-1-mini:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,providerPOST /v1/images/generations·gpt-image-1-mini:model,prompt,size,background,moderation,n,quality,output_compression,output_format,stream- Какие ограничения действуют?
POST /v1/images/generations·openai/gpt-image-1-mini:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100POST /v1/images/generations·gpt-image-1-mini:prompt.maximum_length:32000;n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100