Краткий ответ
Когда API возвращаетfinishReason: NO_IMAGE, а parts имеет значение null, модель обычно обработала запрос, но не вернула содержимое изображения.
Это не обязательно означает, что промпт вызвал блокировку по требованиям безопасности контента. Такие промпты, как «Что такое GEO?» или «Объясни эту концепцию», больше похожи на текстовые вопросы. Модель может быть не в состоянии подтвердить, что пользователь явно хочет получить изображение, поэтому возвращает NO_IMAGE.
Явно укажите намерение создать изображение в начале промпта, затем опишите объект, компоновку, стиль и требования к результату.
Почему возникает NO_IMAGE?
1. Промпт выглядит как текстовый вопрос
Например:- какой тип изображения нужно сгенерировать;
- какие элементы должны появиться на изображении;
- как следует расположить информацию;
- должен ли ответ содержать только изображение.
2. Намерение сгенерировать изображение недостаточно конкретно
Некоторые инструменты платформы автоматически добавляют в начало инструкции, например «Сгенерируйте изображение:». Однако при прямом вызове API запрос может быть прозрачно перенаправлен без автоматического добавления полной инструкции для генерации изображения. Вместо того чтобы писать только:3. В промпте отсутствует визуальное описание
Если промпт только объясняет концепцию, модель не знает, как превратить её в визуальную композицию. Укажите, например:- тип изображения: инфографика, плакат, блок-схема или рекламный графический материал;
- компоновка: три колонки, временная шкала или радиальная структура;
- визуальный стиль: технологичный, деловой, минималистичный или выполненный в фирменном стиле;
- иерархия текста: заголовок, нумерованные разделы, основной текст и компоновка;
- инструкция для вывода: сгенерируйте только изображение, без текстового объяснения.
Пример GEO-промпта
Вы можете переписать исходный промпт следующим образом:Как устранить неполадку NO_IMAGE
Шаг 1: Проверьте, содержит ли ответ данные изображения
parts, inlineData, image или эквивалентное поле изображения в ответе. Если parts имеет значение null, ответ обычно не содержит изображения.Шаг 2: Убедитесь, что prompt явно запрашивает изображение
Шаг 3: Затем проверьте факторы безопасности контента
NO_IMAGE, проверьте наличие NSFW-контента, несовершеннолетних, известных IP, удаления водяных знаков, портретов реальных людей или других политик безопасности на стороне upstream.Шаг 4: Проверьте журналы вызовов
usageMetadata показывает, что модель обработала запрос, но не доказывает, что изображение было сгенерировано или что сработала блокировка безопасности.Чем NO_IMAGE отличается от блокировки безопасности?
finishReason: NO_IMAGE означает только, что изображение не было возвращено. Само по себе это не доказывает, что промпт нарушил политику. Используйте полную ошибку, промпт и журналы вызовов вместе.Часто задаваемые вопросы
Всегда ли добавление «сгенерируй изображение» решает проблему?
Всегда ли добавление «сгенерируй изображение» решает проблему?
Была ли тема GEO заблокирована из-за безопасности контента?
Была ли тема GEO заблокирована из-за безопасности контента?
NO_IMAGE сама по себе не может полностью исключить решение о политике, принятое на upstream-уровне. В данном случае промпт больше похож на объяснение знаний, поэтому сначала целесообразнее проверить, достаточно ли ясно указано намерение создать изображение.Почему в usageMetadata указаны tokens, если изображение не возвращено?
Почему в usageMetadata указаны tokens, если изображение не возвращено?
usageMetadata лишь показывает, что модель обработала входные данные и выдала tokens рассуждения или текста. Это не означает, что ответ содержит изображение. Проверьте поля данных изображения в ответе.Взимается ли плата за NO_IMAGE?
Взимается ли плата за NO_IMAGE?
NO_IMAGE. Проверьте журналы вызовов APIYI, чтобы подтвердить, создала ли операция запись о списании.Всё ещё не удаётся решить проблему? Обратитесь в поддержку
Если после явного указания назначения изображения запрос по-прежнему возвращаетNO_IMAGE, обратитесь в поддержку APIYI и укажите:
- Название модели и группу token;
- Полное сообщение об ошибке и
request ID; - Промпт с удалёнными конфиденциальными данными;
- Время возникновения;
- Запись тарификации из журналов вызовов.