Skip to main content

Краткий ответ

Когда API возвращает finishReason: NO_IMAGE, а parts имеет значение null, модель обычно обработала запрос, но не вернула содержимое изображения. Это не обязательно означает, что промпт вызвал блокировку по требованиям безопасности контента. Такие промпты, как «Что такое GEO?» или «Объясни эту концепцию», больше похожи на текстовые вопросы. Модель может быть не в состоянии подтвердить, что пользователь явно хочет получить изображение, поэтому возвращает NO_IMAGE. Явно укажите намерение создать изображение в начале промпта, затем опишите объект, компоновку, стиль и требования к результату.

Почему возникает NO_IMAGE?

1. Промпт выглядит как текстовый вопрос

Например:
Это объясняет концепцию, но не содержит чёткого указания:
  • какой тип изображения нужно сгенерировать;
  • какие элементы должны появиться на изображении;
  • как следует расположить информацию;
  • должен ли ответ содержать только изображение.
Даже если запрос содержит слова «сгенерировать изображение», модель всё равно может интерпретировать запрос в целом как просьбу о текстовом объяснении.

2. Намерение сгенерировать изображение недостаточно конкретно

Некоторые инструменты платформы автоматически добавляют в начало инструкции, например «Сгенерируйте изображение:». Однако при прямом вызове API запрос может быть прозрачно перенаправлен без автоматического добавления полной инструкции для генерации изображения. Вместо того чтобы писать только:
Прямо укажите тип изображения и визуальную цель:

3. В промпте отсутствует визуальное описание

Если промпт только объясняет концепцию, модель не знает, как превратить её в визуальную композицию. Укажите, например:
  • тип изображения: инфографика, плакат, блок-схема или рекламный графический материал;
  • компоновка: три колонки, временная шкала или радиальная структура;
  • визуальный стиль: технологичный, деловой, минималистичный или выполненный в фирменном стиле;
  • иерархия текста: заголовок, нумерованные разделы, основной текст и компоновка;
  • инструкция для вывода: сгенерируйте только изображение, без текстового объяснения.

Пример GEO-промпта

Вы можете переписать исходный промпт следующим образом:
«Сгенерировать изображение» — это лишь подсказка о действии. Она не заменяет описание визуального результата. Чем яснее вы опишете тип изображения, объект, композицию и стиль, тем легче модели определить, что запрос относится к генерации изображений.

Как устранить неполадку NO_IMAGE

1

Шаг 1: Проверьте, содержит ли ответ данные изображения

Проверьте parts, inlineData, image или эквивалентное поле изображения в ответе. Если parts имеет значение null, ответ обычно не содержит изображения.
2

Шаг 2: Убедитесь, что prompt явно запрашивает изображение

Убедитесь, что prompt содержит чёткую инструкцию, например «сгенерируйте изображение», «создайте постер» или «создайте изображение». Не отправляйте только текстовый вопрос, например «Что такое…» или «Объясните…».
3

Шаг 3: Затем проверьте факторы безопасности контента

Если prompt явно запрашивает изображение, но всё равно возвращает NO_IMAGE, проверьте наличие NSFW-контента, несовершеннолетних, известных IP, удаления водяных знаков, портретов реальных людей или других политик безопасности на стороне upstream.
4

Шаг 4: Проверьте журналы вызовов

Просмотрите полный ответ, имя модели, ID запроса и запись о списании в журналах вызовов. usageMetadata показывает, что модель обработала запрос, но не доказывает, что изображение было сгенерировано или что сработала блокировка безопасности.

Чем NO_IMAGE отличается от блокировки безопасности?

finishReason: NO_IMAGE означает только, что изображение не было возвращено. Само по себе это не доказывает, что промпт нарушил политику. Используйте полную ошибку, промпт и журналы вызовов вместе.

Часто задаваемые вопросы

Нет. Это лишь делает основное намерение более понятным. Также опишите тип изображения, объект, композицию, стиль и требования к результату. Для абстрактных концепций явно попросите создать инфографику, плакат или блок-схему.
Сама концепция GEO, по-видимому, не содержит очевидного риска для безопасности. Однако NO_IMAGE сама по себе не может полностью исключить решение о политике, принятое на upstream-уровне. В данном случае промпт больше похож на объяснение знаний, поэтому сначала целесообразнее проверить, достаточно ли ясно указано намерение создать изображение.
usageMetadata лишь показывает, что модель обработала входные данные и выдала tokens рассуждения или текста. Это не означает, что ответ содержит изображение. Проверьте поля данных изображения в ответе.
Не определяйте тарификацию только по NO_IMAGE. Проверьте журналы вызовов APIYI, чтобы подтвердить, создала ли операция запись о списании.

Всё ещё не удаётся решить проблему? Обратитесь в поддержку

Если после явного указания назначения изображения запрос по-прежнему возвращает NO_IMAGE, обратитесь в поддержку APIYI и укажите:
  • Название модели и группу token;
  • Полное сообщение об ошибке и request ID;
  • Промпт с удалёнными конфиденциальными данными;
  • Время возникновения;
  • Запись тарификации из журналов вызовов.
Никогда не отправляйте полный API-ключ. Удалите ключ перед отправкой скриншотов или журналов.

Поддержка WeCom

Отсканируйте QR-код или нажмите на эту карточку, чтобы напрямую связаться с поддержкой.

Поддержка по электронной почте

Поддержка: [email protected]Рекомендуем указать «NO_IMAGE» и название модели в теме письма.

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

Ошибки генерации изображений Nano Banana

Распространённые причины, включая проблемы с безопасностью, удаление водяных знаков, известную интеллектуальную собственность и несовершеннолетних

Как устранить ошибки API моделей?

Общие рекомендации по ошибкам 401, 429, 503, 504, тайм-аутам и проблемам с группами

Как читать суммы тарификации в логах?

Используйте логи вызовов, чтобы подтвердить успешность запроса и факт списания средств