簡単な回答
API がfinishReason: NO_IMAGE を返し、parts が null である場合、モデルは通常リクエストを処理しましたが、画像コンテンツを返しませんでした。
これは、必ずしもプロンプトがコンテンツセーフティブロックを引き起こしたことを意味するわけではありません。「GEOとは何ですか?」や「この概念を説明してください」のようなプロンプトは、テキストに関する質問として解釈されやすくなります。モデルは、ユーザーが明示的に画像を求めていることを確認できない可能性があるため、NO_IMAGE を返します。
プロンプトの冒頭で画像を生成する意図を明確にし、その後に対象、レイアウト、スタイル、出力要件を記述してください。
NO_IMAGE が発生するのはなぜですか?
1. prompt がテキストによる質問のように見える
たとえば、次のような内容です。- どの種類の画像を生成するのか
- 画像にどの要素を含めるのか
- 情報をどのようにレイアウトするのか
- レスポンスに画像のみを含めるのか
2. 画像生成の意図が十分に具体的ではない
一部のプラットフォームツールでは、「画像を生成してください:」のような指示が自動的に先頭へ追加されます。ただし、直接 API を呼び出す場合、完全な画像生成指示が自動的に追加されず、リクエストがそのまま転送されることがあります。 次のように書くのではなく、3. prompt に視覚的な説明がない
prompt が概念の説明だけの場合、モデルはそれをどのようなビジュアル構成に変換すればよいのか判断できません。次の内容を指定することを検討してください。- 画像の種類:インフォグラフィック、ポスター、フローチャート、プロモーショングラフィック
- レイアウト:3列、タイムライン、放射状構成
- ビジュアルスタイル:テクノロジー、ビジネス、ミニマリスト、ブランド調
- テキスト階層:タイトル、番号付きセクション、本文、レイアウト
- 出力指示:テキストによる説明を付けず、画像のみを生成するよう指定する
GEOプロンプトの例
元のプロンプトは次のように書き換えられます。NO_IMAGE のトラブルシューティング
1
手順 1:レスポンスに画像データが含まれているか確認する
レスポンス内の
parts、inlineData、image、または同等の画像フィールドを確認します。parts が null の場合、通常、レスポンスには画像コンテンツが含まれていません。2
手順 2:prompt が画像を明示的に要求していることを確認する
prompt に「画像を生成する」「ポスターを作成する」「画像を作成する」などの明確な指示が含まれていることを確認します。「What is…」や「Explain…」のようなテキストのみの質問を送信しないでください。
3
手順 3:次にコンテンツセーフティ要因を確認する
prompt が明確に画像を要求しているにもかかわらず
NO_IMAGE が返される場合は、NSFW コンテンツ、未成年者、著名な IP、ウォーターマークの除去、実在人物のポートレート、その他の上流側の安全ポリシーに該当していないか確認します。4
手順 4:呼び出しログを確認する
呼び出しログで、完全なレスポンス、モデル名、リクエスト ID、課金記録を確認します。
usageMetadata はモデルがリクエストを処理したことを示しますが、画像が生成されたことや、安全ブロックが発生したことを証明するものではありません。NO_IMAGE とセーフティブロックの違いは何ですか?
finishReason: NO_IMAGE は画像が返されなかったことだけを意味します。これだけで prompt がポリシーに違反したことを証明するものではありません。完全なエラー、prompt、呼び出しログを組み合わせて確認してください。よくある質問
「画像を生成」と追加すれば、常に問題は解決しますか?
「画像を生成」と追加すれば、常に問題は解決しますか?
いいえ。基本的な意図がより明確になるだけです。画像の種類、対象、構図、スタイル、出力要件についても説明してください。抽象的な概念の場合は、インフォグラフィック、ポスター、またはフローチャートを明示的に指定してください。
GEOのトピックはコンテンツセーフティによってブロックされましたか?
GEOのトピックはコンテンツセーフティによってブロックされましたか?
GEOの概念自体に明らかな安全上のリスクが含まれているようには見えません。ただし、
NO_IMAGEだけでは、上流側のポリシー判断を完全に排除することはできません。この場合、promptは知識の説明に近い内容なので、まず確認すべき点としては画像の意図が不明確であることがより適切です。画像が返されなかったのに、なぜusageMetadataにtokenが含まれているのですか?
画像が返されなかったのに、なぜusageMetadataにtokenが含まれているのですか?
usageMetadataは、モデルが入力を処理し、推論またはテキストのtokenを生成したことを示しているだけです。レスポンスに画像が含まれていることを意味するものではありません。レスポンス内の画像データフィールドを確認してください。NO_IMAGEでも課金されますか?
NO_IMAGEでも課金されますか?
NO_IMAGEだけを基準に課金を判断しないでください。APIYIの呼び出しログを確認し、リクエストによって課金レコードが作成されたかどうかを確認してください。それでも解決しない場合はサポートにお問い合わせください
画像の意図を明示した後もリクエストがNO_IMAGEを返す場合は、APIYIサポートにお問い合わせのうえ、以下の情報をお知らせください。
- モデル名とtokenグループ
- 完全なエラーメッセージと
request ID - プロンプト(機密情報を伏せたもの)
- 発生日時
- 呼び出しログの課金記録
WeComサポート
QRコードをスキャンするか、このカードをクリックしてサポートに直接お問い合わせください。
メールサポート
サポート: [email protected]件名には「NO_IMAGE」とモデル名を含めることをおすすめします。
関連ドキュメント
Nano Banana 画像生成の失敗
安全性、透かしの除去、著名な知的財産、未成年者などの一般的な原因
モデル API のエラーをトラブルシューティングするにはどうすればよいですか?
401、429、503、504、タイムアウト、グループの問題に関する一般的なガイダンス
ログで課金額を確認するにはどうすればよいですか?
呼び出しログを使用して、リクエストが成功したか、課金されたかを確認します