Перейти к основному содержанию

Ошибки генерации изображений Gemini: коды API и когда повторять

В приложении Gemini картинку блокируют вход, возраст, страна, лимит или правила. В API решает код: 429 и 5xx повторяют с паузой, 400, 402 и 403 — нет.

LaoZhang AI TeamОпубликованоОбновлено 8 мин чтения
Содержание
Ошибки изображений Gemini: отдельно приложение, отдельно коды API и блокировки

Ошибка генерации изображения в Gemini бывает двух видов, и устраняются они по-разному. В приложении Gemini (сайт gemini.google.com или мобильное приложение) кода обычно нет: картинку не дают создать аккаунт, возраст, страна, лимит или правила Google. В Gemini API причину называет код ответа, и по нему же видно, есть ли смысл повторять запрос. По правилам Google повторяют только 429, 408 и ошибки 5xx, с нарастающей паузой; 400, 402 и 403 не пройдут, пока не исправлена причина.

Ниже сначала короткий разбор для приложения, затем таблица кодов API. Модели и даты указаны по состоянию на 5 октября 2026 года.

Gemini не создаёт картинку в приложении: вход, возраст, страна, лимит

Что происходитПричинаЧто сделать
Генерация не запускается, Gemini просит войтиИзображения создаются только после входа в аккаунт GoogleВойдите в личный аккаунт
Создавать можно, а редактировать загруженное фото — нетРедактирование изображений доступно с 18 лет, создание — с 13 лет (или с возраста, установленного в стране)Проверьте возраст в аккаунте Google; до 18 лет редактирование закрыто
«Недоступно в вашем регионе»Функция работает только в странах и на языках, которые поддерживает приложение. России нет в списках стран приложения Gemini, Google AI Studio и Gemini APIОфициального способа пользоваться функцией из России нет; подробности — в разборе что из Nano Banana доступно из России
Не работает в рабочем или учебном аккаунтеДля таких аккаунтов действуют другие условия и ограниченияПроверьте в личном аккаунте или спросите администратора
Картинки перестали создаваться после серииИсчерпан лимит: он считается по вычислительной нагрузке, обновляется каждые 5 часов до недельного потолка. Пока не восстановилась дневная квота Nano Banana 2, не работает и «Redo with Pro»Дождитесь обновления лимита; как он устроен — в материале сколько картинок бесплатно в Gemini
Gemini отказывается, особенно когда в запросе реальный человекСрабатывают правила Google: нельзя использовать чужое изображение без согласия, создавать интимные изображения без согласия, сцены насилия и другой запрещённый контент. Уже созданную картинку система может удалитьИзмените запрос так, чтобы он не нарушал правила; что разрешено с людьми — в статье почему Gemini не генерирует изображения людей
«Что-то пошло не так», генерация зависаетСбой на стороне сервиса или соединенияПовторите позже; разбор по симптомам — в статье Nano Banana не работает в Gemini

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

Коды ошибок Gemini API для изображений: что значат и повторять ли

Google публикует коды ошибок для Interactions API — на нём построены текущие примеры генерации изображений в документации. Ответ с ошибкой содержит объект error с полями code и message; по code и стоит ветвить логику.

КодHTTPЧто случилосьЧто делатьПовторять
invalid_request400Неверный формат запроса или параметрСверить запрос со справочником API: ID модели, размер, поляНет
parameter_unknown400В запросе неизвестный параметрУдалить егоНет
failed_precondition400Не выполнено условие, например выключен биллингПроверить платёжный аккаунт проектаНет
authentication401Ключ отсутствует, неверен или истёкПроверить ключ и то, к какому проекту он относитсяНет, пока ключ не исправлен
payment_required402Исчерпан предоплаченный баланс (Prepay)Пополнить баланс или включить автопополнениеНет: Google прямо пишет, что запрос не пройдёт без пополнения
permission_denied403У ключа нет доступа к ресурсуПроверить права ключа и доступ к проектуНет
model_not_found404Модели с таким ID нет, в том числе отключённойПерейти на действующий ID (список ниже)Нет
rate_limit_exceeded429Превышен лимит запросов или токенов в минуту или секундуПауза с экспоненциальным ростомДа
quota_exceeded429Исчерпана дневная квотаДождаться сброса или запросить увеличениеТолько после сброса
api_error500Внутренняя ошибка сервераПовторить; если не проходит, писать в поддержкуДа
service_unavailable503Сервис перегружен или недоступенПауза с экспоненциальным ростомДа
deadline_exceeded504Запрос не уложился в срокУвеличить или убрать таймаут на стороне клиентаДа, с бо́льшим таймаутом

Если вы работаете через generateContent, ситуации те же, но выглядят иначе: HTTP-статус приходит вместе со статусом вроде RESOURCE_EXHAUSTED (для 429) или INVALID_ARGUMENT и FAILED_PRECONDITION (для 400), а блокировки содержимого — в полях finishReason и promptFeedback.blockReason.

С 402 чаще всего сталкиваются после перехода на платный уровень: с 23 марта 2026 года новые аккаунты по умолчанию работают по предоплате, минимальное пополнение — $5, и при нулевом балансе каждый запрос возвращает 402. Неудачные запросы с ошибками 400 и 500 не оплачиваются, но расходуют квоту. Если в сообщении стоит «Your API key was reported as leaked», Google заблокировал ключ как утёкший: нужен новый ключ из AI Studio, а старый лучше нигде не публиковать. Подробно о долгих 503 — в разборе ошибки 503 у Nano Banana Pro и в статье ошибка Gemini High Demand; сводка ошибок именно Nano Banana Pro — в справочнике ошибок Nano Banana Pro.

Ошибка 429 у моделей изображений: минутный лимит, квота или limit 0

Один и тот же HTTP 429 означает несколько разных ограничений, и пауза помогает не от всех.

  • rate_limit_exceeded — минутный или секундный лимит. У моделей изображений, кроме запросов и токенов, считается число изображений в минуту (IPM). Здесь пауза с нарастанием как раз помогает.
  • quota_exceeded — дневная квота. Лимит запросов в день (RPD) сбрасывается в полночь по тихоокеанскому времени, и повторы до этого момента бесполезны.
  • Лимит расходов за скользящие 10 минут: $10 на Tier 1, $50 на Tier 2, $200 на Tier 3. Он тоже приходит как 429 RESOURCE_EXHAUSTED. Пример расчёта: при цене Nano Banana Pro $0,134 за картинку 1K или 2K лимит Tier 1 исчерпывается примерно на 74 изображениях за 10 минут ($10 / $0,134 ≈ 74,6).
  • Бесплатный уровень. Генерация изображений через API на бесплатном уровне не предусмотрена ни для одной текущей модели, поэтому запрос из бесплатного проекта сразу упирается в квоту; по сообщениям разработчиков, в тексте ошибки обычно стоит free_tier_requests и limit 0. Если так происходит в уже платном проекте, смотрите разбор free_tier_requests limit 0 на платном тарифе.

Лимиты действуют на проект, а не на ключ, так что новый ключ в том же проекте 429 не снимет. Точные цифры для вашего проекта показывает AI Studio. Подробный порядок проверки — в статье как исправить ошибку 429 Gemini Image, а случай с Nano Banana Pro — в материале ошибка RESOURCE_EXHAUSTED у Nano Banana Pro.

Четыре причины 429: минутный лимит, суточная квота, расходы и limit: 0

Блокировки и ответ без картинки: IMAGE_SAFETY, IMAGE_OTHER, NO_IMAGE

Если запрос прошёл, а изображения нет, причина в коде блокировки или ошибки генерации. В Interactions API это значения code, в generateContent — те же названия заглавными буквами в finishReason или promptFeedback.blockReason.

КодЧто означаетЧто делать
image_safetyНарушение правил безопасности в изображенииИзменить запрос или исходное фото
image_prohibited_contentЗапрещённый контент в изображенииИзменить запрос в рамках правил
image_recitationРезультат слишком похож на защищённый материалСделать запрос оригинальнее, без копирования известных работ
image_otherБлокировка без уточнения причиныРазбор — в статье Nano Banana 2 blockReason OTHER
no_imageМодель не смогла создать изображениеПроверить ответ по шагам — Nano Banana не генерирует изображение в API
missing_thought_signatureВ многоходовом диалоге потеряна подпись мышления (thought signature)Возвращать предыдущие ответы модели целиком — ошибка thought signature в Nano Banana 2

Для блокировок Google советует одно: изменить входные данные и отправить снова. Настройки safetySettings здесь не помогут. Настраиваемые фильтры у текущих моделей Gemini и так по умолчанию выключены, поэтому BLOCK_NONE ничего не меняет, а встроенная защита, например в части безопасности детей, не отключается вовсе. В Interactions API своих настроек безопасности нет. Подробнее о том, что можно настроить, — в материале фильтры безопасности Nano Banana Pro.

Как повторять запросы к Gemini API: правила Google

Правила из руководства Google по устранению неполадок:

  1. Повторять только временные ошибки: 429, 408 и 5xx. Ошибки 400, 402 и 403 не повторять: это неверный ключ, пустой баланс или синтаксис.
  2. Увеличивать паузу экспоненциально: 1 с, 2 с, 4 с, 8 с.
  3. Добавлять к паузе случайный разброс (jitter), чтобы клиенты не повторяли запросы одновременно.
  4. Ограничить число попыток.

По руководству Google официальные SDK повторяют временные ошибки сами: Python SDK — до четырёх раз, с паузой от примерно 1 секунды до 60 секунд. В google-genai 2.28.0 это не включено по умолчанию: в тесте 5 октября 2026 года с локальным сервером, который отвечал 429 RESOURCE_EXHAUSTED, клиент genai.Client() без настроек отправил один запрос и сразу выбросил APIError. Это относится к client.models.generate_content: client.interactions.create в той же версии повторяет 429 сам (в том же тесте — четыре запроса примерно за 3 секунды). Повторы включаются одной строкой конфигурации:

python
from google import genai
from google.genai import types

client = genai.Client(
    http_options=types.HttpOptions(retry_options=types.HttpRetryOptions())
)

С этой настройкой в том же тесте клиент отправил 5 запросов (первый и четыре повтора) с паузой, растущей примерно от 1 секунды до потолка 60 секунд; в список кодов, которые SDK повторяет, входят 408, 429, 500, 502, 503 и 504. SDK для JavaScript, Go и Java в этом тесте не проверялись.

Выберите один уровень повторов: либо HttpRetryOptions в SDK, либо собственный цикл. Если включить оба, попытки перемножатся: пять своих попыток поверх пяти запросов SDK дают до 25 запросов. Собственный цикл нужен прежде всего для прямых REST-запросов, например такой:

python
import os
import random
import time

import requests

URL = "https://generativelanguage.googleapis.com/v1beta/interactions"
RETRY_STATUSES = {408, 429, 500, 502, 503, 504}
MAX_ATTEMPTS = 5


def create_image(prompt: str) -> dict:
    headers = {
        "x-goog-api-key": os.environ["GEMINI_API_KEY"],
        "Content-Type": "application/json",
    }
    body = {
        "model": "gemini-3.1-flash-image",
        "input": [{"type": "text", "text": prompt}],
        "response_format": {"type": "image", "image_size": "2K", "aspect_ratio": "16:9"},
    }
    for attempt in range(MAX_ATTEMPTS):
        resp = requests.post(URL, headers=headers, json=body, timeout=180)
        if resp.ok:
            return resp.json()
        try:
            error = resp.json().get("error", {})
        except ValueError:
            error = {}
        code = error.get("code", "")
        # Дневная квота не восстановится за секунды: повторять бессмысленно
        retryable = resp.status_code in RETRY_STATUSES and code != "quota_exceeded"
        if not retryable or attempt == MAX_ATTEMPTS - 1:
            raise RuntimeError(f"{resp.status_code} {code}: {error.get('message', resp.text)}")
        time.sleep(min(2 ** attempt, 60) + random.uniform(0, 1))

Функция возвращает JSON ответа; изображение в нём закодировано в base64 (в SDK это поле output_image.data). 400, 401, 402, 403 и 404 сразу поднимают исключение: для них нужна правка запроса, ключа или баланса, а не повтор.

Обработка ошибок API: исправление постоянных причин, временные повторы и проверка ответа без картинки

Перед повтором проверьте запрос: ID модели, «2K», /v1beta

Многие 400 и 404 при генерации изображений вызваны не сбоем, а устаревшим кодом.

  • ID модели. Действующие модели изображений: gemini-3.1-flash-image (Nano Banana 2), gemini-3-pro-image (Nano Banana Pro) и gemini-3.1-flash-lite-image (Nano Banana 2 Lite). gemini-3-pro-image-preview и gemini-3.1-flash-image-preview отключены 25 июня 2026 года, gemini-2.5-flash-image — 2 октября 2026 года, модели Imagen 4 — 17 августа 2026 года. Запрос к отключённому ID возвращает 404 model_not_found.
  • Размер с заглавной K. Допустимы "1K", "2K", "4K"; строчное "1k" API отклоняет. По умолчанию создаётся 1K, а Nano Banana 2 Lite поддерживает только 1K.
  • Где задаётся размер. В Interactions API — response_format.image_size и response_format.aspect_ratio, в generateContent — generationConfig.imageConfig.imageSize и aspectRatio.
  • Версия API. Генерация изображений идёт через /v1beta: и /v1beta/interactions, и /v1beta/models/…:generateContent. Функции в статусе бета доступны только в /v1beta.
  • Число вариантов. candidateCount — целое от 1 до 8.

Пошаговая настройка ключа, предоплаты и первого запроса — в руководстве Gemini Image API: ключ, предоплата $5, модели и код на Python.

Вопросы об ошибках генерации изображений в Gemini

Каков лимит генерации изображений в Gemini?

Фиксированного числа картинок в день Google не публикует. В приложении лимит считается по вычислительной нагрузке, обновляется каждые 5 часов и ограничен недельным потолком; с планом Google AI он выше. В API лимиты задаются на проект и зависят от уровня (Tier), а цифры для конкретного проекта показывает AI Studio.

Почему Gemini пишет, что функция «недоступна в вашем регионе»?

Функция не открыта для вашей страны. Google ограничивает генерацию изображений странами и языками, которые поддерживает приложение, а России нет ни в списках приложения Gemini, ни в списках AI Studio и Gemini API. Официального способа снять это ограничение нет.

Как отредактировать изображение в Gemini?

Загрузите фото или откройте уже созданную картинку и опишите правку словами; можно загрузить несколько изображений и попросить их совместить. На компьютере: gemini.google.com → раздел Library → изображение → Chat. Редактирование доступно только с 18 лет.

Поможет ли новый API-ключ при ошибке 429?

Нет, если ключ создан в том же проекте: лимиты Gemini API действуют на проект, а не на ключ. Помогает пауза при минутном лимите, ожидание сброса при дневной квоте, а если лимит расходов мешает при обычной работе, — запрос на его повышение.

Временные изображения Nano Banana и исправление ошибок — полное руководство
Генерация изображений

Временные изображения Nano Banana и исправление ошибок: Полное руководство по устранению неполадок 2026

Временные изображения при вызовах Nano Banana Pro API — это не баг, а процесс «мышления» Google. В этом руководстве объясняется архитектура мышления, а затем рассматривается исправление каждой распространённой ошибки Nano Banana: фильтры IMAGE_SAFETY, лимиты 429, пустой вывод, ошибки размеров и другое. Включены проверенные данные о ценах и готовые для продакшена шаблоны кода.

25 мин
Nano Banana 2: бесплатное создание изображений в приложениях и отдельный платный доступ через API
Генерация изображений

Nano Banana 2 бесплатно: как попробовать и что изменилось в Gemini

Попробовать создание изображений без подписки можно в Gemini. Но с 9 октября бесплатные аккаунты переходят на Auto, поэтому результат нельзя автоматически считать работой Nano Banana 2. Ниже — первый запрос, правка, скачивание и выбор после исчерпания лимита.

8 мин
Иллюстрация создания изображения коллекционной фигурки по референсу с подставкой и упаковкой
Генерация изображений

Промпт Nano Banana для фигурки: по фото, с настройкой и исправлениями

Чтобы получить картинку в стиле коллекционной фигурки, загрузите фото и задайте узнаваемые детали, материал и простую сцену. Ниже — готовый промпт и отдельные запросы для исправления результата.

10 мин