GPT Image API в России
Доступ к GPT Image в России идёт по одному ключу. На витрине стоит одна версия — GPT Image 2 от OpenAI. Запросы идут на наш адрес, оплата рублями с карты российского банка.
Цена от $0.077 ₽ за генерацию. В среднем на 64,1% ниже официальной цены поставщика.
Версии GPT Image
Цена за генерацию. Счёт идёт по фактическому расходу, задача с ошибкой не тарифицируется.
| Модель | Поставщик | Цена от, за генерацию | Скидка | Официальная |
|---|---|---|---|---|
| GPT Image 2 | OpenAI | $0.077 ₽ | −68% | $0.219 |
Чем нынешняя версия GPT Image отличается от прошлой
GPT Image 2 вышла позже. Первый выпуск и версия 1.5 — прошлые поколения того же семейства.
Продаём мы вторую версию. Прошлых выпусков в каталоге GEN202 нет вовсе: их убрали, когда вторая версия стала делать то же самое.
Генерация и правка у второй версии собраны в одной модели, размер картинки выбирается свободно, а присланные изображения она разбирает в высокой точности.
Знания о мире у второй версии обрываются на декабре 2025 года, и это позже, чем у прошлых выпусков OpenAI.
Имён у первой версии два, и это сбивает с толку. Выпускал её OpenAI под названием GPT-4o Image Generation, а теперь зовёт выпуском 1.0 семейства GPT Image.
До этого семейства у OpenAI была другая рисующая линейка — DALL-E, и в GPT Image она не входит: её закрыли своим порядком, а заменой ей OpenAI назвала вторую версию. Что DALL-E умела и чем её сменили — на странице DALL-E.
Сравниваете с моделью другого поставщика — смотрите Nano Banana 2 или GPT Image 2.
Первый вызов GPT Image API
Генерация занимает десятки секунд, поэтому изображение не приходит в ответ на запрос. Первый вызов
ставит задачу и сразу отвечает её номером, второй по этому номеру отдаёт состояние задачи, а когда
она готова — ссылку на результат. Ключ передаётся в обоих запросах заголовком
Authorization: Bearer sk-… и выпускается
в кабинете. На один ключ шлюз пропускает
30 постановок задачи и 300
запросов состояния в минуту.
Кроме ключа, в примере ничего заменять не надо: поля заполнены значениями, которые шлюз принимает как есть. Идентификатор в поле model — то единственное, что меняется при переходе на другую модель каталога.
# 1. Поставить задачу — в ответе придёт её номер
TASK=$(curl -s https://api.gen202.com/api/v1/jobs/createTask \
-H "Authorization: Bearer sk-ваш-ключ" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image/2-text-to-image",
"input": {
"prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
"aspect_ratio": "auto",
"resolution": "1K"
}
}' | jq -r '.data.taskId')
# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
# generating означают «работа идёт», success и fail — окончательные
while true; do
RECORD=$(curl -s "https://api.gen202.com/api/v1/jobs/recordInfo?taskId=$TASK" \
-H "Authorization: Bearer sk-ваш-ключ")
STATE=$(echo "$RECORD" | jq -r '.data.state')
case "$STATE" in success|fail) break;; esac
sleep 3
done
# 3. Забрать результат. Ссылка на файл лежит в resultJson — это строка JSON
# внутри JSON, поэтому её разбирают вторым разбором (fromjson)
echo "$RECORD" | jq -r '.data |
if .state == "fail"
then "отказ \(.failCode): \(.failMsg)"
else .resultJson | fromjson | .resultUrls[0]
end'
import json
import time
import requests
headers = {"Authorization": "Bearer sk-ваш-ключ"}
# 1. Поставить задачу — в ответе придёт её номер
created = requests.post(
"https://api.gen202.com/api/v1/jobs/createTask",
headers=headers,
json={
"model": "gpt-image/2-text-to-image",
"input": {
"prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
"aspect_ratio": "auto",
"resolution": "1K"
}
},
).json()
task_id = created["data"]["taskId"]
# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
# generating означают «работа идёт», success и fail — окончательные
while True:
task = requests.get(
"https://api.gen202.com/api/v1/jobs/recordInfo",
headers=headers,
params={"taskId": task_id},
).json()["data"]
if task["state"] in ("success", "fail"):
break
time.sleep(3)
# 3. Разобрать итог. У неудачи причина в failCode и failMsg
if task["state"] == "fail":
raise SystemExit("отказ " + task["failCode"] + ": " + task["failMsg"])
# resultJson — строка JSON внутри JSON, поэтому разбор второй
result = json.loads(task["resultJson"])
print(result["resultUrls"][0])
print("списано кредитов:", task["creditsConsumed"])
Песочница
Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступна одна генерация в 1K.
{ "model": "gpt-image/2-text-to-image", "input": { "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет", "aspect_ratio": "auto", "resolution": "1K" } }
{
"code": 200,
"msg": "success",
"data": {
"taskId": "cm8r4t0vk0001s60p2xq7f9ab",
"model": "gpt-image/2-text-to-image",
"state": "success",
"resultJson": "{\"resultUrls\":[\"https://gen202.com/assets/sample-gpt-image-2.jpg\"]}",
"failCode": "",
"failMsg": "",
"creditsConsumed": 14
}
}
Как купить доступ к GPT Image API в России
Покупка идёт у нас, а не у OpenAI. Порядок из трёх шагов: вход на сайт, пополнение баланса и выпуск ключа в кабинете.
Вход делается через Яндекс или по ссылке из письма — придумывать пароль не требуется. Деньги вносятся картой российского банка, и продавец по этому платежу российский.
Оплачиваются готовые изображения, по фактическому расходу. Ежемесячной платы сверх израсходованного нет, а начать можно с самого маленького пакета: 500 ₽ дают 1 000 кредитов.
Баланс один на весь каталог. Теми же кредитами оплачиваются модели других поставщиков, так что заводить ради них второй счёт не придётся.
Считается всё в кредитах, а под задачу их удерживается ровно столько, сколько стоит запрошенное разрешение. Остаток удержания возвращается, если поставщик посчитал дешевле, а неудачная задача возвращает его целиком.
Заявок и подтверждений после оплаты не будет: кредиты ложатся на баланс, и следующий запрос проходит тем же ключом, который уже выпущен.
Что меняется у GPT Image при доступе через GEN202, а что остаётся тем же
Модель остаётся моделью OpenAI. Версия та же, что у поставщика: и сильные стороны, и слабые места у неё здесь те же.
Меняются дорога и счёт. Запрос идёт на наш адрес, а не на адрес OpenAI, поэтому VPN для него не нужен; платите вы рублями российскому продавцу, а не в долларах поставщику.
Результат мы не трогаем. Готовую картинку шлюз отдаёт ссылкой, которую вернул поставщик, и ни пережимать её, ни переделывать по дороге не берётся.
Правила поставщика тоже остаются его правилами. Что он откажется рисовать, решает он, и отказ по своим правилам он присылает нам, а мы передаём его вам вместе с причиной.
Что нужно, чтобы получить ключ к GPT Image API
Нужен только вход на сайт — больше ничего. Ключ вы создаёте сами в кабинете GEN202.
- Вход. Учётную запись открывает Яндекс либо ссылка из письма, и придумывать пароль не требуется.
- Создание. В кабинете нажимают создание ключа, и шлюз начинает принимать его сразу же.
- Название. Каждому ключу дают своё название длиной до 60 знаков: по нему потом видно, из какого приложения идут запросы.
- Подстановка. Готовый ключ ставят в заголовок запроса, и больше вводить его никуда не надо.
- Отзыв. Ненужный ключ отзывается там же, где выпущен, а остальные ключи счёта работают дальше.
Каким именно заголовком ключ уходит в запрос, показано в примере вызова выше. Ключей на счёте держат сколько нужно — например, по одному на каждое своё приложение.
Сколько ждать результат и сколько хранится готовый файл
Ответ на постановку задачи короткий, и разобрать в нём надо четыре вещи.
- В ответ на постановку приходит один номер, и по нему потом спрашивают, что с задачей.
- Готовое изображение отдаётся ссылкой в поле resultJson, которое разбирается вторым разбором JSON.
- Число списанных кредитов лежит в том же ответе, а до завершения задачи оно нулевое.
- Причину неудачи приносят два поля: короткий код в failCode и объяснение словами в failMsg.
Остальные поля ответа перечислены в разделе «Формат ответа».
Файлы результата хранит поставщик, и держит он их 14 дней. По истечении этого срока ссылка перестаёт открываться. Нужное надолго изображение стоит скачать сразу и положить в своё хранилище.
Ждать бесконечно не придётся: крайний срок задачи на картинку — 15 минут. Не уложившаяся в него задача закрывается как неудачная, и в поле creditsConsumed у неё остаётся ноль.
Отказ по форме запроса не стоит ничего: негодное поле шлюз ловит у себя, и до поставщика такой запрос не доходит. Одновременно незакрытых задач на счёте бывает до 50, и пакетная генерация упирается в этот потолок раньше, чем в баланс. Разбор всех отказов с кодами собран в разделе «Отказы».
Картинка делается не мгновенно, и при прямом обращении к поставщику ответ приходится ждать в том же соединении. Здесь ждать в соединении не надо: постановка сразу отдаёт номер, а состояние спрашивают отдельным запросом тогда, когда удобно.
Отказ по правилам поставщика приходит коротким кодом, и слово, которое ему не понравилось, в ответе не названо. Проверка смотрит и на готовое изображение, поэтому отказ случается уже после работы. Такая задача возвращает удержание целиком, а обычный выход из неё — переписать описание и запустить снова.
Нужен ли ключ OpenAI, чтобы вызвать GPT Image
Нет, ключ OpenAI для этого не нужен.
Учётную запись в OpenAI заводить не надо, включать у них платный доступ и привязывать к нему карту — тоже.
Ключ GEN202 работает на нашем адресе, и форма вызова здесь своя: задача ставится одним запросом, готовый файл забирается вторым. Готовый пример этого порядка стоит выше на странице.
У самого поставщика доступ к картиночным моделям открывают после проверки организации. Присутствие модели в перечне ещё не означает, что её можно вызвать. Здесь ключ начинает приниматься сразу после выпуска, и проверять на этой стороне нечего.
Можно ли купить у нас API ключ OpenAI
Ключ OpenAI выдаёт сам OpenAI, и получают его в его собственном кабинете.
Продаётся здесь другое — доступ к той же модели по нашему ключу и по нашему адресу. Счёт от OpenAI приходит нам, а вы платите российскому продавцу.
Чужой ключ отзывает его владелец, и спросить за это не с кого. Ключ GEN202 выпускаете и отзываете вы сами, а неизрасходованные кредиты остаются на вашем балансе.
Есть ли бесплатный доступ к GPT Image API
Постоянного бесплатного доступа нет. Проверить модель до оплаты всё же можно.
Одна картинка в 1K рисуется бесплатно: она делается в песочнице выше, и регистрироваться для этого не надо.
Бесплатно можно запустить 1 раз в сутки, и разрешение при этом не выбирается. Перебрать так десяток вариантов подряд не получится.
При первом входе начисляются приветственные кредиты. Первые картинки делаются на них, без оплаты.
Бесплатный запуск и приветственные кредиты — это всё, что здесь доступно до оплаты. Дальше изображения считаются по расходу, и платят ровно за сделанное.
GPT Image API из России
Работать из России можно без VPN, а платить — рублями с карты российского банка. Прямой доступ идёт через биллинг поставщика, и счёт он выставляет в долларах. GEN202 стоит между вами и поставщиком: расчёты с ним наши, вы платите российскому продавцу.
GPT Image — так OpenAI называет свои картиночные модели. Все версии семейства он отдаёт через OpenAI API, а номер версии стоит прямо в идентификаторе модели.