Skip to Content
モデルの使い方Nano Bananaエラー対処

Nano Banana のエラー対処

パラメーターの値は Nano Banana のテキストから画像生成とサイズを参照してください。

症状から探す

ポイントまず問題の種類を確認します:パラメーターの誤り、アスペクト比の不一致、画像が返らない、リクエストのタイムアウトのどれかです。
症状最も多い原因参照先
400 Request contains an invalid argumentアスペクト比または解像度がそのモデルの対応範囲外invalid argument
出力のアスペクト比や解像度が想定と違うimageConfig の位置が間違っている、またはそのモデルがその値に対応していないアスペクト比や解像度が違う
レスポンスに画像が見つからないparts の先頭要素しか読んでいない、またはリクエストが安全ポリシーでブロックされた画像がない
410 model_deprecated提供終了した -preview のモデル ID を使った410
編集結果が元画像と無関係参照画像の渡し方が間違っている画像編集の書き方
タイムアウト、504、524クライアントまたはプロキシのタイムアウト設定が短すぎるタイムアウト

400 Request contains an invalid argument

400 Bad Request
{ "error": { "code": 400, "message": "Request contains an invalid argument.", "status": "INVALID_ARGUMENT" } }

このエラーは具体的なパラメーターを示しません。実測では、以下のいずれの場合もこのエラーが返りました:

リクエスト原因対処
aspectRatio: "5:3"アスペクト比が対応一覧にない対応しているアスペクト比を使う。モデルごとに使える値を参照
Nano Banana に aspectRatio: "1:8" を指定前世代は 1:4、4:1、1:8、8:1 に非対応Nano Banana 2 または 2 Lite を使う
2 Lite に imageSize: "512" または "2K" を指定2 Lite は 1K のみ対応1K に変更するか、Nano Banana 2 を使う
Pro に imageSize: "512" を指定Pro は 512 に非対応1K 以上に変更する
いずれかのモデルに imageSize: "8K" を指定上限は 4K4K 以下に変更する

切り分け方:まず imageConfig を外して再試行します。正常に生成されれば原因はアスペクト比か解像度なので、1 項目ずつ戻して特定します。

アスペクト比や解像度が違う

まず出力画像の実際の幅と高さを確認し、次の表と照らし合わせてください:

状況対処
imageConfig をリクエストボディの最上位(contents と同じ階層)に書いているgenerationConfig の中に移す。下記の正しい書き方を参照
Pro で 1:4、4:1、1:8、8:1 が必要Pro はこの 4 種類に非対応のため、Nano Banana 2 または 2 Lite を使う
Nano Banana(2.5)で 2K、4K が必要2.5 は imageSize に非対応のため、Nano Banana 2 または Pro を使う
OpenAI 互換エンドポイントでサイズを指定したいこのエンドポイントは aspect_ratio でアスペクト比を指定し、解像度のパラメーターには非対応。2K、4K が必要な場合はネイティブエンドポイントを使う
アスペクト比を指定していないアスペクト比はモデルが決定する。固定したい場合は aspectRatio を明示的に指定する

正しい書き方:

{ "contents": [{ "parts": [{ "text": "..." }] }], "generationConfig": { "responseModalities": ["IMAGE"], "imageConfig": { "aspectRatio": "9:16", "imageSize": "2K" } } }

imageConfig / image_config、aspectRatio / aspect_ratio はどちらの書き方も認識されます。実測では image_config: { aspect_ratio: "9:16" } で正しく 768×1376 が出力されました。

レスポンスに画像がない

原因対処
parts[0] しか読んでいないレスポンスにはテキストと画像が両方含まれることがあり、画像が先頭とは限りません。parts を順に走査し、inlineData を含む要素を探してください
リクエストが安全ポリシーでブロックされた下記の安全ポリシーによるブロックを参照

Cherry Studio や LobeHub などのクライアントで使う場合は、チャットモデルではなく画像生成モデルとして追加してください。

410 model_deprecated

410 Gone
{ "error": { "message": "Model 'google/gemini-3-pro-image-preview' is deprecated and no longer accepts requests; please switch to an active model", "type": "model_deprecated", "code": 410 } }

末尾が -preview の旧 ID は提供を終了しました。正式版の ID に置き換えてください:

提供終了置き換え先
google/gemini-3-pro-image-previewgoogle/gemini-3-pro-image
google/gemini-3.1-flash-image-previewgoogle/gemini-3.1-flash-image

ネイティブエンドポイントのパスに含めるモデル ID は、google/ プレフィックスの有無どちらでも、実測で正常に呼び出せました。

編集結果が元画像と無関係

書き方対処
/v1/images/generations に input_images を指定input_images は Qwen-Image 専用のフィールドで、Gemini は非対応です。/v1/images/edits でファイルをアップロードするか、ネイティブエンドポイントの inlineData を使ってください

参照画像が読み取られたかの確認方法:ネイティブエンドポイントでは usageMetadata.promptTokensDetails に IMAGE 要素があるかを確認し、OpenAI 互換エンドポイントでは usage.input_tokens_details.image_tokens を確認します。実測では 1024×1024 の参照画像 1 枚で 1,120 トークンでした。

安全ポリシーによるブロック

リクエストが安全ポリシーでブロックされると、レスポンスに画像は含まれず、理由が finishReason または promptFeedback.blockReason に記録されます。各値の意味(Google 公式の定義に基づく):

フィールドの値意味対処
finishReason: "IMAGE_SAFETY"生成された画像が違反と判定されたプロンプトを変更する。そのまま再試行しても結果は変わらない
finishReason: "PROHIBITED_CONTENT" または blockReason: "PROHIBITED_CONTENT"プロンプトまたは参照画像に禁止されたコンテンツが含まれるプロンプトを変更するか、参照画像を差し替える
blockReason: "SAFETY"プロンプトが安全ポリシーでブロックされたプロンプトを変更する
finishReason: "NO_IMAGE"、"IMAGE_OTHER"モデルが画像を生成しなかったプロンプトをより明確にするか、時間をおいて再試行する

コードではレスポンスに必ず画像が含まれると想定しないでください。まず candidates が存在するか、finishReason が STOP かを確認してから inlineData を読み取ります。各フィールドの定義は Gemini API · FinishReason  を参照してください。

タイムアウト、504、524

API は同期型で、実測では 1K で約 5〜20 秒、4K で約 30 秒かかり、混雑時はさらに長くなります。よくある 60 秒のデフォルトタイムアウトでは足りません。

  • クライアントのタイムアウトを 300 秒以上に設定してください。
  • Nginx、Vercel、Cloudflare などの中間プロキシのタイムアウト設定を確認してください。これらのデフォルト値は通常 60〜100 秒程度です。
  • 4K の PNG は約 16 MB で、レスポンスボディは 20 MB を超えます。プロキシが大きなレスポンスを切り詰めないことを確認してください。

クライアントが途中で接続を切っても、リクエストは課金されます。

その他のエラー

エラー原因対処
Invalid JSON payload received. Unknown name "image_size": Cannot find field.OpenAI 互換エンドポイントに image_size を指定したこのエンドポイントは解像度のパラメーターに非対応のため、ネイティブエンドポイントの imageSize を使う
404 model_not_foundモデル ID の綴り誤りモデル ID 一覧からコピーする
429リクエスト頻度が上限を超えた同時実行数を下げ、バックオフしてから再試行する。レート制限を参照

サポートに問い合わせる際は、レスポンスの request_id と完全なエラー情報を添えてください。

よくある質問

Nano Banana で Request contains an invalid argument エラーが出た場合はどうすればよいですか?

このエラーは具体的なパラメーターを示しませんが、多くの場合はアスペクト比または解像度がそのモデルの対応範囲を超えています。たとえば 5:3 は対応していないアスペクト比で、Nano Banana 2 Lite は 1K のみ、Pro には 512 がなく、すべてのモデルで上限は 4K です。まず imageConfig を外して再試行し、1 項目ずつ戻して特定してください。

Nano Banana で aspectRatio を指定したのにアスペクト比が違う場合はどうすればよいですか?

まず imageConfig がリクエストボディの最上位ではなく generationConfig の中にあるかを確認します。次に、モデルがその値に対応しているかを確認します。Pro は 1:4、4:1、1:8、8:1 に非対応で、前世代の Nano Banana は imageSize に非対応です。

Nano Banana のレスポンスに画像が見つからないのはなぜですか?

よくある原因は、コードが parts の先頭要素しか読んでおらず、画像がその後ろにあるケースです。parts を順に走査して inlineData を探してください。もう 1 つの原因はリクエストが安全ポリシーでブロックされたケースで、その場合 finishReason は STOP になりません。

gemini-3-pro-image-preview で 410 model_deprecated が返る場合はどうすればよいですか?

プレビュー版の ID は提供を終了しました。google/gemini-3-pro-image-preview を google/gemini-3-pro-image に、google/gemini-3.1-flash-image-preview を google/gemini-3.1-flash-image に置き換えてください。

Nano Banana で IMAGE_SAFETY が出た場合はどうすればよいですか?

IMAGE_SAFETY は生成された画像が安全ポリシーで違反と判定されたことを示し、そのまま再試行しても結果は変わりません。実在の人物、著作権で保護されたキャラクター、センシティブな内容を避けるようにプロンプトを変更してから再試行してください。

Nano Banana で画像編集するときに参照画像が反映されないのはなぜですか?

input_images は Qwen-Image 用のフィールドで、Gemini は非対応です。/v1/images/edits でファイルをアップロードするか、Gemini ネイティブエンドポイントで画像を inlineData としてテキストと同じ parts に入れてください。

最終更新日