Блог

Codex не генерирует изображения через API-реселлера? Это руководство решает проблему

Вы направляете Codex на API-реселлера, просите модель codex сгенерировать изображение, и… он либо выдаёт 502, либо возвращает абзац, который начинается со слов «Вот как я предложил бы это оформить…», — а самого изображения так и нет.

Не спешите сомневаться в своей конфигурации. Обычно вы тут ни при чём: реселлер просто не реализовал путь генерации изображений для модели codex. Руководство короткое: сначала за несколько минут добьёмся, чтобы изображения генерировались, а потом объясним, почему большинство реселлеров с этим не справляются.

Сначала получим изображение (просто повторяйте за нами)

Быстрая настройка (рекомендуется)

Три шага — и через несколько минут изображения генерируются:

  1. Установите Codex: для десктопного приложения следуйте руководству по настройке Codex Desktop; для CLI — руководству по настройке Codex (или установите Codex напрямую с сайта OpenAI);
  2. Направьте Codex на Moyi API: зарегистрируйтесь в Moyi API, получите API-ключ и по руководству пропишите в ~/.codex/config.toml base_url Moyi API и свой ключ (полный пример — в следующем разделе; две ключевые строки: wire_api = "responses" и [features].image_generation = true);
  3. Когда всё готово, попросите codex сгенерировать изображение — например, «иконку погодного приложения в плоском стиле в синих тонах». Через несколько секунд изображение должно появиться.

wire_api и переключатель генерации изображений — места, на которых спотыкаются чаще всего; скопируйте их из примера ниже, и всё будет в порядке.

Полный config.toml

Предпочитаете полный контроль? Вот полная ручная настройка (полное пошаговое описание — в руководстве по настройке Codex).

Сначала задайте API-ключ как переменную окружения:

bash
export MOYIAPI_API_KEY="your-moyiapi-key"

Затем отредактируйте ~/.codex/config.toml:

toml
model = "gpt-5-codex"                           # укажите точное название модели codex из вашей консоли
model_provider = "moyiapi"

[model_providers.moyiapi]
name = "Moyi API"
base_url = "https://api.moyiapi.com/v1"   # уточните точный URL на сайте или в консоли
env_key = "MOYIAPI_API_KEY"
wire_api = "responses"                         # критично: генерация изображений должна идти через responses, а не chat

[features]
image_generation = true                        # включить встроенную генерацию изображений

Следите за двумя ловушками: wire_api должен быть равен responses (на chat инструмента image_generation нет), а [features].image_generation должен быть true. После настройки попросите codex сгенерировать изображение, чтобы убедиться, что всё работает.

Изображение получили? Вот почему в других местах оно не получается

Если на другом API-реселлере у вас раз за разом ничего не выходило, вы, скорее всего, попали в одну из ловушек ниже. Всем, кто запускал модель codex через реселлера, это знакомо: код, чат и отладка работают гладко, а разваливается только генерация изображений. Три классических сценария сбоя:

  • Глухая 502 — запрос даже не доходит;
  • Запрос проходит, но модель деградирует до обычного текста — вместо «изображения» приходит словесное описание;
  • Самый жуткий вариант — по логам видно, что генерация идёт, даже partial_image исправно тикает, а итоговый агрегированный результат пуст.

Выглядят они по-разному, но первопричина одна: генерация изображений у модели codex не идёт через стандартный эндпоинт /v1/images/generations.

Она идёт через встроенный инструмент image_generation в Responses API, который под капотом вызывает модель серии gpt-image (например, gpt-image-2). Данные изображения возвращаются потоком по SSE в виде чанков partial_image_b64, и эти чанки нужно правильно агрегировать, чтобы восстановить изображение целиком. Этот путь требует от реселлера гораздо большего, чем обычный текст. Реселлер должен как минимум делать три вещи одновременно:

  1. Полностью реализовать эндпоинт /responses — а не только куда более распространённый /v1/chat/completions;
  2. Без искажений пробрасывать вызов инструмента image_generation — никакой подмены моделей, никакого понижения уровня;
  3. Правильно агрегировать потоковые чанки изображения — не терять фрагменты partial_image_b64.

Большинство реселлеров спотыкаются на одном из этих трёх пунктов: одни проксируют только текстовый эндпоинт и вообще не реализуют /responses; другие ради экономии тихо подменяют codex более дешёвым аналогом, что сразу ломает вызов инструмента; третьи реализуют эндпоинт, но небрежно пишут агрегацию потока, так что изображение нормально генерируется у вышестоящего провайдера, но теряется на стороне реселлера. Moyi API работает «из коробки» именно благодаря этому: он проксирует весь этот путь полностью и без искажений, не халтурит и не подменяет модель, поэтому генерация изображений в codex просто работает, и вам не приходится самим склеивать чанки.

Изображения всё ещё нет? Проверьте три вещи

Если изображение по-прежнему не появляется, не спешите менять сервис — пройдитесь по этому списку по порядку, и причина обычно найдётся:

  1. Установлен ли wire_api в responses? Самая частая ловушка. Многие копируют старую конфигурацию, где wire_api всё ещё chat, — а на этом пути инструмента image_generation попросту нет, и codex не может генерировать изображения.
  2. Есть ли у вашего ключа права на изображения? Некоторые реселлеры по умолчанию включают только текстовые модели, а для изображений нужен отдельный запрос или переключатель в консоли. В Moyi API это включено по умолчанию; если вы используете старый ключ от другого сервиса, сначала проверьте.
  3. Не подменили ли codex? Если с первыми двумя пунктами всё в порядке и текст работает, а генерация изображений тихо не срабатывает, вышестоящий провайдер мог заменить codex более дешёвой моделью без поддержки вызова инструментов. Именно поэтому важен вопрос «настоящая ли модель»: от него зависит не только генерация изображений, но и то, попадает ли вообще каждый ваш вызов на настоящую модель.

FAQ

Почему Codex возвращает 502 — или просто текст, — когда я прошу его сгенерировать изображение через реселлера?

Генерация изображений идёт не через обычный chat-эндпоинт, а через инструмент image_generation в Responses API. Если реселлер не реализовал /responses, подменяет модель или не справляется с агрегацией SSE-чанков изображения, вы увидите 502, текстовое «описание» или пустое изображение.

Использует ли генерация изображений в Codex эндпоинт /v1/images/generations?

Нет. Она использует встроенный инструмент image_generation в Responses API, за которым стоит модель серии gpt-image. Изображение возвращается потоком по SSE в виде чанков partial_image_b64, и его нужно собрать заново.

Какую настройку конфигурации упускают чаще всего?

wire_api. Он должен быть равен responses — на chat инструмента image_generation не существует, поэтому изображения не генерируются. Скопируйте пример config.toml выше — и всё готово.

Нужно ли моему ключу отдельное право на изображения?

Некоторые реселлеры по умолчанию включают только текстовые модели, а для изображений нужен отдельный запрос или переключатель в консоли. В Moyi API это включено по умолчанию; если вы используете старый ключ от другого сервиса, сначала проверьте.

Как понять, что модель подменили?

Если текст работает нормально, а генерация изображений тихо не срабатывает, вышестоящий провайдер мог заменить codex более дешёвой моделью без поддержки вызова инструментов. Самый прямой способ этого избежать — выбрать сервис, который сохраняет модели настоящими и не понижает их уровень. Подробнее о выборе надёжного шлюза — в нашем руководстве по AI-реселлерам.

Подводим итоги

Если codex у какого-нибудь реселлера уже заставил вас пройти через ад «изображения не генерируются», вы, скорее всего, не виноваты — реселлер просто не довёл дело до конца. Следуйте шагам выше, чтобы запустить генерацию изображений, и избавьте себя от головной боли.

Примечание: Moyi API обеспечивает прямой доступ из материкового Китая без VPN, оплату в юанях (Alipay / WeChat Pay) и единую точку входа для Claude / GPT / Gemini; он работает с Claude Code, Codex, Cursor и Cline. Для команд доступны также высокий QPM, SLA, счета-фактуры и договоры. Сайт — moyiapi.com, руководства по настройке — в документации.

Готовы подключиться?Войдите в консоль, пополните баланс и создайте API-ключ.
Codex не генерирует изображения через API-реселлера? Это руководство решает проблему · Moyi API