> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apiyi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GPT-Image-2-VIP Генерация/редактирование изображений

> Модель для реверс-инжиниринга генерации изображений GPT gpt-image-2-vip (линейка Codex). Фиксированная цена $0.03/изображение. Поддерживает 30 явных размеров (10 соотношений сторон × 3 уровня разрешения: 1K / 2K / 4K). Тот же формат вызова, что и у gpt-image-2-all. Около 90–150 с на изображение — для рабочих нагрузок, которым нужны зафиксированные размеры вывода.

<Info>
  **Параметр `size` снова доступен** (обновлено 2026-07-22): при явной передаче `size` теперь размеры вывода фиксируются, как и ожидается, а справочная таблица из 30 размеров на этой странице снова действует. Примечание: `size` работает только на эндпоинтах `/v1/images/generations` и `/v1/images/edits` — **чат-эндпоинт `/v1/chat/completions` не поддерживает параметр `size`**, поэтому генерация изображений через chat не может фиксировать размеры. За актуальным статусом см. раздел [Живые обновления](/en/live).
</Info>

<Info>
  Все Image API — **синхронные**: здесь нет ID задачи для опроса, и если ваш клиент отключится, результат будет потерян, а запрос все равно будет тарифицироваться. Задайте для этой модели timeout с запасом; см. [Основы и лучшие практики Image API](/ru/api-capabilities/image-api-best-practices).
</Info>

## Обзор

**gpt-image-2-vip** — это **реверс-инжиниринговая модель генерации изображений GPT** в линейке Codex, доступная на платформе APIYI. Та же фиксированная стоимость **\$0.03/image** , что и у [`gpt-image-2-all`](/ru/api-capabilities/gpt-image-2-all/overview), и **идентичный формат запроса/ответа** — единственное существенное отличие в том, что `vip` **принимает поле `size`** с **30 распространенными размерами (10 соотношений сторон × 3 уровня разрешения: 1K Fast / 2K Recommended / 4K Detail)**, включая 4K.

<Note>
  **🎨 Позиционирование**: используйте `gpt-image-2-vip`, когда вам нужно **зафиксировать размер вывода** (hero-изображения для e-commerce, шаблоны постеров, миниатюры видео, обои 4K и т. д.). Просто замените поле `model` на `gpt-image-2-vip` и добавьте поле `size` — весь остальной код остается таким же, как у `gpt-image-2-all`.
</Note>

<CardGroup cols={2}>
  <Card title="API преобразования текста в изображение" icon="wand-sparkles" href="/ru/api-capabilities/gpt-image-2-vip/text-to-image">
    `/v1/images/generations` — текстовый prompt + `size` для явного задания размеров вывода.
  </Card>

  <Card title="API редактирования изображений" icon="image" href="/ru/api-capabilities/gpt-image-2-vip/image-edit">
    `/v1/images/edits` — multipart-загрузка с инструкциями по редактированию/объединению.
  </Card>
</CardGroup>

## Ключевые отличия от `gpt-image-2-all`

`gpt-image-2-vip` и [`gpt-image-2-all`](/ru/api-capabilities/gpt-image-2-all/overview) — оба каналы, созданные путем реверс-инжиниринга, с одинаковой ценой и одинаковым кодом вызова. **Они зеркально повторяют друг друга** — достаточно переключить поле `model` в одном и том же запросе, и поведение в основном идентично. Отличия:

| Параметр                       | `gpt-image-2-all`                                                                     | `gpt-image-2-vip`                                      |
| ------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------------------ |
| **Канал**                      | Реверс-инжиниринговый веб ChatGPT                                                     | Реверс-инжиниринговая командная строка Codex           |
| **Цена**                       | \$0.03 / image                                                                        | \$0.03 / image (фиксированно для всех размеров)        |
| **Параметр `size`**            | ❌ Не поддерживается (указывайте в prompt)                                             | ✅ 30 размеров, включая 4K                              |
| **4K (например, `3840x2160`)** | ❌                                                                                     | ✅ Уровень 4K Detail                                    |
| **Время генерации**            | \~30–60 секунд                                                                        | \~90–150 секунд (на уровне официального `gpt-image-2`) |
| **Параметр `quality`**         | ❌ Не поддерживается                                                                   | ❌ Не поддерживается (не передавайте)                   |
| **Эндпоинты**                  | `/images/generations` + `/images/edits`                                               | То же, что слева (идентично)                           |
| **Формат ответа**              | `b64_json` (по умолчанию, raw base64, без префикса) / `url` (явный `response_format`) | То же, что слева                                       |
| **Лучше всего для**            | Управляется prompt, не зависит от размера                                             | Нужен зафиксированный размер вывода (включая 4K)       |

<Tip>
  **Краткое решение**: **не нужна строгая фиксация размера, нужен самый быстрый результат** → `gpt-image-2-all`; **нужен зафиксированный размер или 4K** → `gpt-image-2-vip`; **нужен регулятор `quality` или строгое соответствие полям OpenAI API** → используйте официальный [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview).
</Tip>

## Основные возможности

<CardGroup cols={2}>
  <Card title="Фиксированный размер вывода" icon="expand">
    Поле `size` поддерживает 30 распространенных размеров — hero-изображения для e-commerce, шаблоны постеров, обои 4K — все выводится с точным числом пикселей.
  </Card>

  <Card title="4K с высоким разрешением" icon="image">
    Тариф 4K Detail охватывает 2880×2880 / 3840×2160 / 3840×1632 и т. д., подходит для крупных материалов.
  </Card>

  <Card title="Единая стоимость для всех размеров" icon="dollar-sign">
    1K / 2K / 4K стоят \$0.03 за image — без надбавки за 4K.
  </Card>

  <Card title="Тот же формат вызова, что и -all" icon="copy">
    Структура запроса, поля и форма ответа идентичны `gpt-image-2-all` — переключайте модели, меняя только строку `model`.
  </Card>
</CardGroup>

<CardGroup cols={2}>
  <Card title="Высококачественный рендеринг текста" icon="type">
    Стабильный рендеринг китайского/английского текста, вывесок и текста для постеров — идеально для инфографики и маркетинговых материалов
  </Card>

  <Card title="Поддержка китайских prompt" icon="languages">
    Нативное понимание китайских описаний без перевода
  </Card>

  <Card title="Редактирование на естественном языке" icon="message-circle">
    Редактируйте с помощью диалоговых описаний, маски не требуются, поддерживается многораундовая итерация
  </Card>

  <Card title="Поддержка стандартных эндпоинтов" icon="plug">
    Совместимо со стандартными эндпоинтами OpenAI Images API `/images/generations` и `/images/edits`
  </Card>
</CardGroup>

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

| Model             | Тарификация | Цена               | Вывод                                                       |
| ----------------- | ----------- | ------------------ | ----------------------------------------------------------- |
| `gpt-image-2-vip` | За вызов    | **\$0.03 / image** | 1 изображение за вызов, поле `size` фиксирует размер вывода |

<Info>
  **Примечания к тарификации**:

  * **Фиксированная цена \$0.03/image для всех 30 размеров** — без доплаты за 4K Detail
  * Неудачные запросы не тарифицируются (ошибки аутентификации, ошибки проверки параметров)
  * Для N изображений вызывайте API N раз параллельно
</Info>

## Настройка группы

`gpt-image-2-vip` находится в группе `Default` — **дополнительная группа не нужна**. На реверс-канале сейчас стабильная доступность, поэтому нет сценария резервного перехода на enterprise-группу, как у официального релея `gpt-image-2`.

| Модель            | Группа       | Примечания                                                                                                                                      |
| ----------------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `gpt-image-2-vip` | `Default`    | Реверс-линия Codex, фиксированная цена \$0.03/изображение, \~90–150 с                                                                           |
| `gpt-image-2-vip` | `image2_OSS` | **коэффициент тарифа 1x (без надбавки)**, детерминированный вывод URL — никогда не переходит на base64, когда группа по умолчанию под нагрузкой |

### Нужен детерминированный вывод URL → переключитесь на группу `image2_OSS`

По измерениям в июле 2026 года в группе по умолчанию, `gpt-image-2-vip` (и `gpt-image-2-all`) возвращают `b64_json`, когда `response_format` не указан; передайте `response_format: "url"` явно, чтобы получить URL изображения. Формат вывода группы по умолчанию **не гарантирован** — исторически по умолчанию использовался `url` с переходом на `b64_json` при нагрузке, и это менялось между версиями канала.

Если ваш бизнес **зависит от вывода URL** (запись URL напрямую в базу данных, отображение на frontend по URL, base64 неприемлем), переключите группу вашего token на **`image2_OSS`** — группу, специально созданную для **детерминированного вывода URL**, с **коэффициентом тарифа 1x (без надбавки)**, действующую для обеих реверс-моделей `gpt-image-2-vip` и `gpt-image-2-all`. Она гарантирует, что ответ всегда содержит URL изображения и никогда не переходит на base64.

<Frame caption="Token creation: set billing mode to &#x22;pay-as-you-go first&#x22; and pick the image2_OSS group (1x) — use it when you need deterministic URL output">
  <img src="https://mintcdn.com/apiyillc/eNGQJU-a_dFb12gU/images/image2-oss-token-setup-20260525.png?fit=max&auto=format&n=eNGQJU-a_dFb12gU&q=85&s=727f61464cc759006a59e8de6ceccd32" alt="Экран создания token: сначала режим тарификации pay-as-you-go, группа image2_OSS (коэффициент тарифа 1x), группа, которая выводит URL изображений, подходит для gpt-image-2-all и gpt-image-2-vip" width="1278" height="846" data-path="images/image2-oss-token-setup-20260525.png" />
</Frame>

<Tip>
  **Продвинутый вариант (если вы также используете `gpt-image-2-all` и официальный релей `gpt-image-2`)**: если ваш token покрывает все три модели, задайте приоритет групп вашего token так:

  * **Первый приоритет**: `image2Enterprise` (корпоративная группа с коэффициентом тарифа 1.2x, выделенная стабильная полоса для официального релея)
  * **Резерв по умолчанию**: `Default` (обе реверс-модели находятся здесь и маршрутизируются по модели)

  Итог: официальный релей `gpt-image-2` использует корпоративную полосу для стабильности, а две реверс-модели остаются в группе по умолчанию — один token покрывает все три, без взаимного влияния.
</Tip>

📖 О группе `image2Enterprise`: [/en/live/2026-04/image2-enterprise-stable](/en/live/2026-04/image2-enterprise-stable)

## Технические характеристики

| Атрибут                        | Значение                                                                                                                      |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| **Название модели**            | `gpt-image-2-vip`                                                                                                             |
| **Тип канала**                 | Официальный реверс-инжиниринг (линия Codex)                                                                                   |
| **Тарификация**                | \$0.03 / изображение, за вызов (единая цена для всех размеров)                                                                |
| **Время генерации**            | **\~90–150 секунд** (на уровне официального `gpt-image-2`; медленнее, чем 30–60с у `gpt-image-2-all`)                         |
| **Параметр `size`**            | ✅ 30 размеров: 10 соотношений сторон × 3 уровня разрешения (1K Быстрый / 2K Рекомендуемый / 4K Детальный)                     |
| **Поддержка 4K**               | ✅ уровень 4K Detail (например, `3840x2160` / `2880x2880`)                                                                     |
| **Параметр `quality`**         | ❌ Не поддерживается, не передавайте                                                                                           |
| **Параметр `n`**               | ❌ Не поддерживается, одно изображение за вызов                                                                                |
| **Формат ответа по умолчанию** | `b64_json` (сырые данные base64, **без префикса `data:`**, подтверждено в 2026-07; всегда явно передавайте `response_format`) |
| **Необязательный формат**      | `url` (ускоренная ссылка R2 CDN, **срок действия около 1 дня**, требует явного `response_format: "url"`)                      |
| **Китайские prompt**           | ✅ Нативно поддерживаются                                                                                                      |
| **Возможности**                | text-to-image, редактирование одного изображения, объединение нескольких изображений, редактирование на естественном языке    |

<Warning>
  **⏰ Срок действия URL изображения: \~1 день (по умолчанию)**

  Поле `url` ответа в режиме `url` — это ссылка R2 CDN, которая **истекает примерно через 24 часа** — запросы после этого будут возвращать 404. Для изображений, которые нужно хранить длительное время, **как можно скорее после генерации скачайте их и сохраните в собственном хранилище** или используйте формат ответа `b64_json`.
</Warning>

## Эндпоинты

`gpt-image-2-vip` совместим с теми же двумя эндпоинтами, что и `gpt-image-2-all`. Просто замените поле `model` и при необходимости добавьте `size`:

| Эндпоинт                      | Назначение                                     | Content-Type          | Лучше всего для                                                                                               |
| ----------------------------- | ---------------------------------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------- |
| `POST /v1/images/generations` | Генерация изображений по тексту                | `application/json`    | Стандартный формат OpenAI Images API — один и тот же код может работать и с официальным, и с обратным каналом |
| `POST /v1/images/edits`       | Редактирование изображений (одного/нескольких) | `multipart/form-data` | Стандартный формат OpenAI Images API — один и тот же код может работать и с официальным, и с обратным каналом |

<Tip>
  **Используйте OpenAI Images API** (`/v1/images/generations` + `/v1/images/edits`) по двум причинам:

  1. **Более стабильно**: upstream-ресурсов для канала Images API больше, поэтому процент успешных вызовов выше
  2. **Совместимость с официальным релеем для простого переключения**: метод вызова и параметры вроде `size` полностью совместимы с [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview) официального релея — если у обратного канала возникнут проблемы с risk-control, **просто замените имя `model`** без изменений кода

  Также есть чатовый эндпоинт (`/v1/chat/completions`, больше не рекомендуется) — см. FAQ ниже.
</Tip>

<Tip>
  **Варианты доменов**: `api.apiyi.com` — основной домен. Вы также можете использовать альтернативные домены шлюза, например `b.apiyi.com` / `vip.apiyi.com`. Поведение ответов идентично.
</Tip>

## Поддерживаемые размеры (полная таблица из 30 размеров)

`gpt-image-2-vip` поддерживает **10 соотношений сторон × 3 уровня разрешения = 30 размеров**. Передавайте `size: "WIDTHxHEIGHT"` (нижний регистр ASCII `x`) напрямую в теле запроса.

### 1K Быстрый — черновики и недорогие итерации

| Соотношение | Название | Пиксели     |
| ----------- | -------- | ----------- |
| 1:1         | Квадрат  | `1280x1280` |
| 2:3         | Портрет  | `848x1280`  |
| 3:2         | Фото     | `1280x848`  |
| 3:4         | Портрет  | `960x1280`  |
| 4:3         | Стандарт | `1280x960`  |
| 4:5         | Соцсети  | `1024x1280` |
| 5:4         | Большой  | `1280x1024` |
| 9:16        | История  | `720x1280`  |
| 16:9        | Широкий  | `1280x720`  |
| 21:9        | Кино     | `1280x544`  |

### 2K Рекомендуемый — уровень по умолчанию (большинство готовых материалов)

| Соотношение | Название | Пиксели     |
| ----------- | -------- | ----------- |
| 1:1         | Квадрат  | `2048x2048` |
| 2:3         | Портрет  | `1360x2048` |
| 3:2         | Фото     | `2048x1360` |
| 3:4         | Портрет  | `1536x2048` |
| 4:3         | Стандарт | `2048x1536` |
| 4:5         | Соцсети  | `1632x2048` |
| 5:4         | Большой  | `2048x1632` |
| 9:16        | История  | `1152x2048` |
| 16:9        | Широкий  | `2048x1152` |
| 21:9        | Кино     | `2048x864`  |

### 4K Детальный — крупноформатные материалы

| Соотношение | Название | Пиксели     |
| ----------- | -------- | ----------- |
| 1:1         | Квадрат  | `2880x2880` |
| 2:3         | Портрет  | `2336x3520` |
| 3:2         | Фото     | `3520x2336` |
| 3:4         | Портрет  | `2480x3312` |
| 4:3         | Стандарт | `3312x2480` |
| 4:5         | Соцсети  | `2560x3216` |
| 5:4         | Большой  | `3216x2560` |
| 9:16        | История  | `2160x3840` |
| 16:9        | Широкий  | `3840x2160` |
| 21:9        | Кино     | `3840x1632` |

<Info>
  **Фиксированная цена для всех 30 размеров**: \$0.03/изображение. Без доплаты за 4K Detail.
</Info>

<Tip>
  **Выбор уровня**:

  * **1K Быстрый** — черновики, миниатюры, A/B-тесты. Самый быстрый вывод (цена фиксированная, но цикл итерации короче).
  * **2K Рекомендуемый** — **уровень по умолчанию**. Подходит для большинства готовых материалов (герой-изображения для e-commerce, постеры, инфографика).
  * **4K Детальный** — печать, большие экраны, миниатюры для видео, крупный формат для настольных устройств / наружной рекламы.
</Tip>

**Минимальный пример вызова** (передавайте только `size`, **не передавайте `quality`**):

```bash theme={null}
curl "https://api.apiyi.com/v1/images/generations" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $YI_API_KEY" \
  -d '{
    "model": "gpt-image-2-vip",
    "prompt": "Product shot of a white ceramic mug on a gray desk, soft natural light, clean background",
    "size": "2048x1360"
  }'
```

## Лучшие практики

<Steps>
  <Step title="Сжимайте входные изображения до менее 1.5MB (редактирование изображений / слияние нескольких изображений)">
    Сжимайте каждое изображение, которое вы загружаете, до **менее 1.5MB** (качество JPEG 80-90 / уменьшенное разрешение); применяйте тот же лимит к каждому изображению при слиянии нескольких изображений. Спорадические ответы `shell_api_error` / `Unknown error` чаще всего вызываются слишком большими входными данными — сжатие заметно повышает вероятность успеха и снижает задержку. **Выходное разрешение определяется полем `size`, а не размером входных данных** — уменьшение входа только ускоряет процесс, но не снижает качество. Набивание `4K` / `8K` в prompt не создает изображение 4K; разрешение задается `size`, а не лишним текстом в prompt.
  </Step>

  <Step title="Выбирайте размерный уровень по итоговому результату">
    1K Быстрый для черновиков, 2K Рекомендуемый для production, 4K Детализация для печати / больших экранов. Тарификация фиксированная — выбирайте по потребности.
  </Step>

  <Step title="Используйте строчную ASCII x в размере">
    Отправляйте `"size": "1536x1024"` — не `1536×1024` и не заглавную `X`.
  </Step>

  <Step title="Не передавайте quality или n">
    `quality` отклоняется; `n` возвращает 1 изображение за вызов независимо — для нескольких изображений вызывайте параллельно.
  </Step>

  <Step title="Используйте тайм-аут 300s">
    Типичная генерация занимает 90–150s, но время загрузки / скачивания изображений и задержка на длинном хвосте увеличивают его. **Установите 300s как консервативную базовую величину.**
  </Step>

  <Step title="Выбирайте формат ответа по потребности">
    Используйте `b64_json` для прямого рендеринга в web; `url` для хранения/передачи на стороне сервера.
  </Step>

  <Step title="Делитесь кодом с -all">
    Тот же код работает для обоих — переключайте `model` между `gpt-image-2-all` и `gpt-image-2-vip` по мере необходимости. Используйте vip, когда нужен фиксированный размер, и возвращайтесь к -all для самой быстрой итерации.
  </Step>
</Steps>

## Коды ошибок и повторные попытки

| Статус              | Значение                                                                                    | Рекомендация                                                                                                                                                                                    |
| ------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `400`               | размер не входит в набор из 30 размеров или имеет неверный формат                           | Используйте точные строки из таблицы выше                                                                                                                                                       |
| `401`               | Недействительный token                                                                      | Проверьте Bearer Token                                                                                                                                                                          |
| `429`               | Лимит запросов / квота исчерпаны                                                            | Повторите с экспоненциальной задержкой                                                                                                                                                          |
| `500` (4K sporadic) | Колебания вычислений на стороне OpenAI upstream; уровень 4K Detail сталкивается с этим чаще | **Переключитесь на 2K Recommended** и повторите; если 4K обязателен, переключитесь на официальный-прокси [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview) + `image2Enterprise` группа |
| `5xx` (other)       | Временная ошибка шлюза/бэкенда                                                              | Повторите 1–2 раза                                                                                                                                                                              |
| Timeout             | пик Codex + длинный хвост 4K                                                                | Установите таймаут клиента **≥ 300s** (с запасом)                                                                                                                                               |

<Info>
  **Рекомендации для клиента**:

  * Таймаут запроса **начиная с 300 секунд** (с запасом; обычно 90–150s, но для 4K Detail и пиковых хвостов требуется больше)
  * Используйте **экспоненциальную задержку** для 5xx и таймаутов (рекомендуется 2–3 повторные попытки)
  * Логируйте заголовок ответа `request-id` для отладки
</Info>

## FAQ

<AccordionGroup>
  <Accordion title="Могу ли я делиться кодом между vip и -all?">
    **Да, почти идентично.** Оба эндпоинта (`/v1/images/generations`, `/v1/images/edits`) используют одинаковые поля запроса, поля ответа и поведение префикса `b64_json`. Единственные различия:

    1. поле `model`: `gpt-image-2-vip` ↔ `gpt-image-2-all`
    2. поле `size`: vip принимает набор из 30 размеров; -all отклоняет `size` (размер вместо этого указывается в prompt)

    Практический вариант: оставьте одну кодовую базу с переключателем `if model == 'vip': payload['size'] = ...`.
  </Accordion>

  <Accordion title="Почему vip настолько медленный?">
    `gpt-image-2-vip` использует обратный канал Codex — **типично 90–150 секунд**, сопоставимо с официальным `gpt-image-2` (100–120с) и медленнее, чем ChatGPT-web-line `gpt-image-2-all` (30–60с). Для задач, **чувствительных к задержке**, лучше использовать `gpt-image-2-all`; переключайтесь на vip только когда вам **нужны фиксированный размер или 4K**.
  </Accordion>

  <Accordion title="Обязательно ли размер должен быть точно из таблицы? Что, если я отправлю 1024x768?">
    **Да — придерживайтесь набора из 30 размеров.** Размеры не из списка могут вызвать upstream `invalid_request_error`. Выберите ближайший уровень для вашего результата.
  </Accordion>

  <Accordion title="Почему 4K часто возвращает 500? Как получить надежный 4K?">
    **Симптом**: на уровне 4K Detail (например, `3840x2160` / `2880x2880`), ошибки `status_code: 500` проще спровоцировать, при этом upstream возвращает `invalid_request_error`:

    ```json theme={null}
    {
      "status_code": 500,
      "error": {
        "message": "An error occurred while processing your request. ... Please include the request ID xxxxxxxx in your message.",
        "type": "invalid_request_error",
        "code": null
      }
    }
    ```

    **Причина**: **колебания вычислительных ресурсов OpenAI** — не ваши параметры запроса. Тот же payload обычно проходит на 2K. Обратный канал Codex более чувствителен к крупным выходам вроде 4K, особенно в часы пик.

    **Способы снизить риск** (по соотношению цена/эффект):

    1. **Отдавайте предпочтение 2K Recommended** (например, `2048x1360` / `2048x2048`) — заметно более высокий процент успеха, та же **\$0.03/image**
    2. **Передавайте меньше входных изображений** для img2img / слияния нескольких изображений — обратный канал Codex хуже работает при большой входной нагрузке, что еще сильнее повышает частоту сбоев 4K; предварительное сжатие каждого входного изображения **ниже 1.5MB** тоже помогает
    3. **Для гарантированного 4K** — переключитесь на официальный-прокси [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview) + **`image2Enterprise` группа**. 4K через официальный-прокси дороже (**\~\$0.3+/image**), но заметно стабильнее — подходит, когда поставка 4K является жестким требованием.

    📖 Примечание из практики: [/en/live/2026-05/gpt-image-2-vip-4k-tips](/en/live/2026-05/gpt-image-2-vip-4k-tips)
  </Accordion>

  <Accordion title="Нужно ли сжимать входные изображения? Помогает ли написать 4K / 8K в prompt?">
    **Да, настоятельно рекомендуется.** Сжимайте каждое входное изображение **ниже 1.5MB** (JPEG quality 80-90 / уменьшенное разрешение): разовые ответы `shell_api_error` / `Unknown error` чаще всего вызываются слишком большими входными данными, а сжатие заметно повышает процент успеха и снижает задержку. Примечание: 1.5MB — **рекомендуемый верхний предел** для надежности и скорости; число 10MB в FAQ выше — это жесткий лимит шлюза.

    **Не беспокойтесь, что сжатие ухудшит качество** — выходное разрешение определяется параметром `size`, а не размером входа. Уменьшение входа только ускоряет работу.

    **Добавление `4K` / `8K` в prompt на самом деле не дает выход 4K.** Если в prompt вы пишете `8K ultra HD`, но для `size` задаете `1024x1024`, вы все равно получите изображение качества 1K. **Для 4K задавайте это в поле `size`** — 1K / 2K / 4K стоят одинаково: фиксированные \$0.03/image во всем наборе из 30 размеров.

    📖 Источник: [/en/live/2026-05/gpt-image-2-vip-unknown-error](/en/live/2026-05/gpt-image-2-vip-unknown-error)
  </Accordion>

  <Accordion title="4K действительно не облагается дополнительной платой?">
    **Нет дополнительной платы.** Уровень 4K Detail (`3840x2160` / `2880x2880` и т. д.) стоит те же \$0.03/image, что и 1K и 2K.
  </Accordion>

  <Accordion title="Поддерживается ли n? Что будет, если я передам n=3?">
    **Нет.** Эта модель возвращает 1 изображение за один вызов — для нескольких изображений используйте **повторные / параллельные вызовы** вместо этого.

    ⚠️ **Важно**: если вы передадите `n=3` в запросе, **billing составит 0.03 × 3 = \$0.09**, но **фактически будет возвращено только 1 изображение**. Уберите поле `n`, чтобы избежать лишних списаний.
  </Accordion>

  <Accordion title="Если контент отклонен или модель отвечает 'I can't do that', будет ли это тарифицироваться?">
    Это реверс-инжиниринговый канал, использующий **синхронные ответы в стиле chat**. Результаты делятся на два случая с **разными правилами тарификации**:

    **1) Возвращен HTTP 5xx → НЕ тарифицируется**

    Когда upstream content policy жестко блокирует запрос, вы увидите что-то вроде:

    ```json theme={null}
    {
      "error": {
        "message": "Image was not generated as expected. Please adjust the prompt and retry (traceid: 0672821c6951af183dbf847130caaf16)",
        "localized_message": "Unknown error",
        "type": "invalid_request_error",
        "param": "",
        "code": null
      }
    }
    ```

    Такие жесткие ошибки **не тарифицируются**. Попросите пользователя изменить prompt и повторить попытку.

    **2) HTTP 200 с текстовым "мягким отказом" → ТАРИФИЦИРУЕТСЯ**

    Когда модель мягко отказывает внутри диалога (например, "I can't do that", "Sorry, this request involves…"), на уровне протокола это выглядит как обычное chat completion, поэтому **это тарифицируется**. Обратный канал не может надежно отличить "текст отказа" от "вывода изображения" на уровне протокола.

    **Почему мы не можем просто не брать плату за мягкие отказы**

    Автоматическое списание с каждого мягкого отказа означало бы, что платформа берет на себя все неудачные вызовы upstream. Что еще важнее, **частые срабатывания upstream content safety также повышают риск блокировки учетной записи поставщика** — это реальные издержки со стороны поставщика, которые мы не можем полностью устранить.

    **Рекомендации для интеграторов**

    * ✅ **Предварительно фильтруйте и предупреждайте пользователей**: добавьте фильтр по ключевым словам/сценариям на фронтенде или шлюзе (имена реальных людей, защищенные авторским правом персонажи, чувствительные темы) и показывайте подсказку в UI вроде "Celebrity / IP topics may fail and still be billed by upstream policy." Это резко сокращает бесполезные списания.
    * ✅ **Ежемесячное возмещение для consumer-продуктов**: мы понимаем, что consumer-facing продукты не могут полностью ограничивать ввод пользователей. Если ваши ежемесячные расходы достаточно велики (**\$1000+/month**), вы можете **ежемесячно пакетно выгружать логи** (вызовы с низкой задержкой обычно являются мягкими отказами) и обращаться в поддержку за разовым ручным кредитом — не нужно подавать апелляцию по каждому вызову.

    📖 Связано: [500 errors are usually content-policy hits (not billed)](/en/live/2026-04/gpt-image-2-all-500-content-policy)
  </Accordion>

  <Accordion title="Нужно ли добавлять префикс data:image/png;base64, к b64_json?">
    **Сначала определите, потом обрабатывайте.** Как подтверждено в июле 2026 года, возвращаемое `b64_json` — это **raw base64 без префикса `data:`**: декодируйте его, чтобы записать файл, или добавьте префикс сами перед рендерингом; **ранние версии действительно включали префикс**. Добавьте в код проверку `startsWith('data:')`: если префикс присутствует, используйте значение напрямую как `img src`; если нет, сначала декодируйте или добавьте префикс — это предотвращает двойное добавление префикса или декодирование строки с префиксом в поврежденное изображение.
  </Accordion>

  <Accordion title="Каков максимальный размер reference image и какие форматы поддерживаются?">
    Рекомендуется **≤ 10MB на изображение**, форматы `png` / `jpg` / `webp`. Слишком большие изображения могут упереться в лимиты шлюза. Каждое изображение при слиянии нескольких изображений должно соответствовать этому ограничению.
  </Accordion>

  <Accordion title="Как долго действуют возвращенные URLs изображений? Нужно ли их скачивать?">
    Поле `url` ответа в режиме `url` — это **ссылка R2 CDN, которая истекает примерно через 1 день (24 часа)**; запросы после этого вернут 404.

    **Настоятельно рекомендуется**: сразу после генерации скачивайте и сохраняйте сгенерированные изображения в **собственное object storage (S3 / OSS / R2), CDN или базу данных**.
  </Accordion>

  <Accordion title="Поддерживается ли streaming?">
    Нет. Эта модель возвращает изображение за один раз; streaming не поддерживается. Если важна задержка, показывайте на стороне клиента индикатор прогресса «generating...» и настройте **тайм-аут 300с** (с запасом).
  </Accordion>

  <Accordion title="Могу ли я использовать официальный OpenAI SDK?">
    Да. Укажите `base_url` на `https://api.apiyi.com/v1` и установите `api_key` в ваш token APIYI. `client.images.generate(model="gpt-image-2-vip", size="2048x1360", prompt=...)` работает напрямую.
  </Accordion>

  <Accordion title="Могу ли я по-прежнему генерировать изображения через /v1/chat/completions?">
    Да, эндпоинт по-прежнему работает, но **больше не рекомендуется** — вместо этого используйте `/v1/images/generations` и `/v1/images/edits` (так стабильнее, и тот же код работает с официальным релеем `gpt-image-2`).

    Стиль на основе chat имеет смысл только в двух сценариях: многошаговое итеративное редактирование или передача онлайн URLs изображений напрямую. Учтите, что когда намерение на изображение неоднозначно, модель может вернуть обычный текст вместо изображения (добавьте перед prompt фиксированный префикс вроде "Generate an image:", чтобы усилить запрос).

    Полные параметры см. в [справке по chat-based API](/en/api-capabilities/gpt-image-2-vip/chat-completions).
  </Accordion>

  <Accordion title="Когда стоит переходить на официальный gpt-image-2?">
    Когда вам нужен переключатель `quality` (low/medium/high), локальная перерисовка на основе маски или строгое соответствие полям OpenAI-API — используйте [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview). См. [Сравнение Official и Reverse](/ru/api-capabilities/gpt-image-2/vs-gpt-image-2-all).
  </Accordion>
</AccordionGroup>

## Связанная документация

* [Обзор GPT-Image-2-All](/ru/api-capabilities/gpt-image-2-all/overview) - Сестринская модель с той же ценой и более быстрым выводом, идеально подходит, когда вам не нужно фиксировать размер
* [⚖️ Сравнение официальной и реверс-версии](/ru/api-capabilities/gpt-image-2/vs-gpt-image-2-all) - Наглядное руководство по выбору в сравнении с официальным `gpt-image-2` (охватывает `-all` / `-vip`)
* [Песочница Text-to-Image](/ru/api-capabilities/gpt-image-2-vip/text-to-image) - совместимый с `/v1/images/generations` эндпоинт, передайте `size`, чтобы зафиксировать размеры
* [Песочница редактирования изображений](/ru/api-capabilities/gpt-image-2-vip/image-edit) - многоизображенческое объединение и редактирование `/v1/images/edits`
* [Официальный GPT-Image-2](/ru/api-capabilities/gpt-image-2/overview) - Для параметра `quality` / перерисовки по маске / строгого соответствия полей OpenAI-API
* [Обзор серии GPT-Image](/en/api-capabilities/gpt-image-series) - Сравнение официального GPT-Image
* [Руководство по API](/ru/api-manual) - Общие правила вызова

<Info>
  gpt-image-2-vip — это канал, полученный методом реверс-инжиниринга (линейка Codex). Поведение согласовано, но тарификация/возможности могут не полностью совпадать с официальной версией. Для полного соответствия официальному API используйте [`gpt-image-2`](/ru/api-capabilities/gpt-image-2/overview).
</Info>
