GPT Image 2 API: цены и пример на Python
Вызывается одним ключом LaoZhang API через тот же эндпоинт, что и студия YingTu. Ниже — эндпоинт, параметры, цена за картинку и код, который можно скопировать. Ваш настоящий ключ в примерах не появляется. На 9 октября 2026 г. все ID моделей на этой странице оплачиваются за изображение, без подписки, и работают с одним ключом.
Главное (на 10 октября 2026 г.)
- ID моделей на этом эндпоинте: gpt-image-2-vip, gpt-image-2.5-flare-vip, gpt-image-2.5-sunburst-vip. Один ключ LaoZhang подходит для всех.
- Цена за изображение: GPT Image 2 VIP $0.03, GPT Image 2.5 Flare $0.03, GPT Image 2.5 Sunburst $0.03. Без подписки, каждое изображение оплачивается отдельно.
- Base URL https://api2.laozhang.ai, формат запросов OpenAI: POST /v1/images/generations · /v1/images/edits.
- Новым аккаунтам LaoZhang дают $0.1 на тест: около 3 изображений GPT Image 2 VIP.
- Баланс на laozhang.ai пополняется банковской картой через Stripe или в USDT.
Запуск за 3 шага
- 1
Создайте API-ключ на laozhang.ai (новым аккаунтам — $0.1).
- 2
Скопируйте ID модели и код ниже, ключ положите в переменную окружения.
- 3
Сгенерируйте одно изображение, проверьте ответ и масштабируйте.
Эндпоинт и авторизация
- Базовый URL
- https://api2.laozhang.ai
- Авторизация
- Bearer API-ключ
- Формат запроса
- OpenAI Images
- Референсы
- Есть
- Лимит референсов
- До 5 изображений в YingTu (не максимум провайдера)
- Статус проверки
- Пока не подтверждено — нет доступной даты проверки.
Пример кода
Подставьте свой промпт. Для референсов используйте пример редактирования ниже.
Пример генерации
export LAOZHANG_API_KEY="replace-with-your-key"
curl --fail-with-body --max-time 500 \
-X POST 'https://api2.laozhang.ai/v1/images/generations' \
-H "Authorization: Bearer ${LAOZHANG_API_KEY}" \
-H "Content-Type: application/json" \
--data '{"model":"gpt-image-2-vip","prompt":"A minimal coffee poster with the exact headline “COFFEE MADE SIMPLE”, high contrast type, warm natural light, clean commercial layout.","size":"2048x2048","quality":"high"}'
# The JSON response can contain base64 image data or an image URL.
# If this request times out, check request and billing logs before retrying.Пример редактирования по референсу
import base64
import mimetypes
import os
import sys
import requests
API_KEY = os.environ.get("LAOZHANG_API_KEY")
if not API_KEY:
raise RuntimeError("Set the LAOZHANG_API_KEY environment variable before running this example.")
REQUEST_TIMEOUT_SECONDS = 500
headers = {"Authorization": f"Bearer {API_KEY}"}
def extension_for_mime(mime_type):
return {
"image/jpeg": "jpg",
"image/png": "png",
"image/webp": "webp",
"image/gif": "gif",
}.get(mime_type, "bin")
def decode_base64_image(value, fallback_mime="image/png"):
mime_type = fallback_mime
encoded = value
if value.startswith("data:"):
header, encoded = value.split(",", 1)
mime_type = header[5:].split(";", 1)[0] or fallback_mime
return base64.b64decode(encoded, validate=True), mime_type
def parse_json_response(response):
try:
result = response.json()
except ValueError as error:
print("API returned a non-JSON response.", file=sys.stderr)
raise SystemExit(1) from error
if not isinstance(result, dict):
print("API returned an unexpected JSON shape.", file=sys.stderr)
raise SystemExit(1)
return result
def extract_image(result):
if not isinstance(result, dict):
return None
images = result.get("data") or []
first_image = images[0] if images and isinstance(images[0], dict) else {}
encoded = first_image.get("b64_json")
if isinstance(encoded, str) and encoded:
return decode_base64_image(encoded)
image_url = first_image.get("url")
if isinstance(image_url, str) and image_url:
image_response = requests.get(image_url, timeout=REQUEST_TIMEOUT_SECONDS)
image_response.raise_for_status()
mime_type = image_response.headers.get("Content-Type", "image/png").split(";", 1)[0]
return image_response.content, mime_type
return None
def save_result_image(result):
extracted = extract_image(result)
if not extracted:
keys = sorted(result.keys()) if isinstance(result, dict) else []
print(f"No image data in response. Top-level keys: {keys}", file=sys.stderr)
raise SystemExit(1)
image_bytes, mime_type = extracted
output_path = f"output.{extension_for_mime(mime_type)}"
with open(output_path, "wb") as output_file:
output_file.write(image_bytes)
print(f"Image saved: {output_path} ({mime_type})")
API_URL = "https://api2.laozhang.ai/v1/images/edits"
data = {
"model": "gpt-image-2-vip",
"prompt": "A minimal coffee poster with the exact headline “COFFEE MADE SIMPLE”, high contrast type, warm natural light, clean commercial layout.",
"size": "2048x2048",
"quality": "high"
}
opened_files = []
files = []
image_1_path = "image_1.jpg" # Replace with your reference image path
image_1_mime = mimetypes.guess_type(image_1_path)[0] or "image/jpeg"
image_1_file = open(image_1_path, "rb")
opened_files.append(image_1_file)
files.append(("image", (image_1_path, image_1_file, image_1_mime)))
try:
try:
response = requests.post(
API_URL,
headers=headers,
data=data,
files=files,
timeout=REQUEST_TIMEOUT_SECONDS,
)
except requests.Timeout as error:
print(
"Request timed out after 500 seconds. The result status may be unknown; "
"check call and billing logs before retrying.",
file=sys.stderr,
)
raise SystemExit(1) from error
finally:
for image_file in opened_files:
image_file.close()
if response.status_code != 200:
print(f"API error {response.status_code}: {response.text}", file=sys.stderr)
raise SystemExit(1)
save_result_image(parse_json_response(response))Параметры запроса
Поля соответствуют текущему клиенту YingTu и примерам кода.
| Параметр | Передача |
|---|---|
| model | Обязателен. Используйте точный ID модели с этой страницы. |
| prompt | Обязателен. Передайте инструкцию, но не API Key. |
| настройки вывода | size — один из точных размеров, доступных для этой модели. |
| quality | Необязательно: low, medium или high. |
| референсы | Необязательно. До 5 файлов в браузере YingTu передаются как multipart-поля image в эндпоинт редактирования. |
Ответ и тайм-аут
- Ответ с изображением
- Клиент декодирует
data[0].b64_json, включая data URL, либо загружаетdata[0].urlи сохраняет MIME-тип. - Ответ без изображения
- Без
b64_jsonилиurlответ не считается успешным; сообщение API показывается при наличии.
Тайм-аут клиента: 500 секунд
Через 500 секунд текущий клиент YingTu прекращает ожидание; результат и списание могут оставаться неизвестными.
Без автоматического повтора
YingTu не повторяет запрос автоматически. Перед новым платным вызовом проверьте журналы запросов и списаний.
Типичные ошибки
- Аутентификация
- Проверьте ключ в переменной окружения и Bearer-заголовок.
- Доступ или баланс
- Проверьте в LaoZhang доступ к модели, баланс, биллинг и ограничения аккаунта.
- Лимит запросов
- Снизьте параллелизм и изучите сообщение провайдера или аккаунта.
- Нет изображения
- Проверьте причины блокировки и завершения, сообщение API и response ID.
- Тайм-аут
- Итог может быть неизвестен; проверьте журналы вызовов и списаний до повтора.
Известные ограничения
Проверьте эти пункты перед использованием результата.
- Проверьте реальные размеры загруженного файла.
- Проверяйте весь видимый текст, цифры и знаки.
- Проверьте идентичность, логотипы, упаковку, цвета и мелкие детали.
- Доступность и задержка могут меняться.
- Цены, баланс, доступ и списания уточняйте в LaoZhang.
ID моделей GPT Image 2 на этом эндпоинте
Эндпоинт и формат запроса одинаковые, меняется только ID модели.
| Модель | ID модели | Цена | Размеры |
|---|---|---|---|
| GPT Image 2 VIP | gpt-image-2-vip | $0.03/ изобр. | 1K / 2K / 4K |
| GPT Image 2.5 Flare | gpt-image-2.5-flare-vip | $0.03/ изобр. | 1K / 2K / 4K |
| GPT Image 2.5 Sunburst | gpt-image-2.5-sunburst-vip | $0.03/ изобр. | 1K / 2K / 4K |
Вопросы об API
Сколько стоит GPT Image 2 API?
Оплата за изображение, без подписки: GPT Image 2 VIP $0.03, GPT Image 2.5 Flare $0.03 и GPT Image 2.5 Sunburst $0.03. Все списания видны в аккаунте LaoZhang.
Как получить ключ GPT Image 2 API?
Создайте токен на laozhang.ai (кнопка токена вверху страницы). Один ключ подходит для всех моделей из таблицы; новым аккаунтам дают $0.1 на тест. Работает из России.
Какой базовый URL?
https://api2.laozhang.ai/v1, формат OpenAI Images: /v1/images/generations и /v1/images/edits.
Есть ли бесплатный доступ к GPT Image 2 API?
Есть сумма на тест: новые аккаунты LaoZhang получают $0.1 — примерно 3 изображения GPT Image 2. Дальше каждый вызов списывается с баланса за изображение; ни абонплаты, ни пакетов покупать не нужно.
Какие размеры принимает GPT Image 2 API?
В size передаётся одно из 30 точных значений «ширинаxвысота»: по 10 пропорций в 1K, 2K и 4K, например 1280x1280, 2048x2048 (по умолчанию) или 3840x2160. Качество — low, medium или high; любой размер и качество стоят одинаково, $0.03.
Где хранить API Key?
Используйте переменную окружения из примера. Не сохраняйте ключ в коде, логах или промпте.
Тайм-аут означает ошибку?
Не всегда. После 500 секунд результат или списание могут быть неизвестны; проверьте журналы.
Лимит референсов задан провайдером?
Нет. Это ограничение браузерной версии YingTu, а не максимум модели.
Где проверить цену и доступ?
Актуальные цена, баланс, доступ и списания находятся в аккаунте LaoZhang.
Цена и оплата
Оплата за изображение. Показана текущая цена LaoZhang; фактические списания, баланс и доступ к моделям — в вашем аккаунте LaoZhang.
- ID модели
- gpt-image-2-vip
- Цена
- $0.03/ изобр.
- Размеры
- 1K / 2K / 4K
- Точные размеры
- 30 доступных размеров
- Уровни качества
- low / medium / high
- Формат API
- OpenAI Images
Сначала попробовать в студии
Все эти настройки есть в студии изображений YingTu, а новые пользователи получают $0.1 бесплатно.
Связанные страницы
YingTuLaoZhang