Nano Banana 2.1の対応内容

下の生成例の出力:2K、16:9。プロンプト:Generate an image of a corner cafe after rain at dusk, warm light on the wet pavement, with a neon sign that reads "BANANA CAFE".
パラメーターと制限
Nano Banana 2.1とNano Banana 2の違い
どちらのモデルも、同じリクエストを受け付け、同じ形のレスポンスを返します。切り替えるときに変えるのは、モデルIDだけです。新規のプロジェクト:Nano Banana 2.1
512pxのプレビュー:Nano Banana 2
512 のサイズはありません。Nano Banana 2は同じ料金で引き続き使えるため、既存の連携を移行する必要はありません。
Nano Banana 2.1、2K、16:9:25秒、$0.045。プロンプト:Generate an image of a corner cafe after rain at dusk, warm light on the wet pavement, with a neon sign that reads "BANANA CAFE".

Nano Banana 2、2K、16:9:21秒、$0.055。プロンプト:Generate an image of a corner cafe after rain at dusk, warm light on the wet pavement, with a neon sign that reads "BANANA CAFE".
呼び出す前に
APIキーを作成する
default グループのキーを作成し、課金方式(计费模式)を従量優先(按量优先、推奨)または回数課金(按次计费)にします。従量課金(按量计费)のキーは、Nano Banana 2.1のような回数課金のモデルを呼び出せません。キーを設定し、依存パッケージをインストールする
cURL用の保存関数を追加する
jq が必要です。次のシェル関数は、Geminiネイティブのレスポンスにある、思考用ではない最後の画像を、mimeType に合った拡張子で保存します。promptFeedback、finishReason の各フィールドが出力されます。画像を生成する
- cURL
- Python
candidates[0].content.parts[].inlineData.data にBase64で入って返り、形式は mimeType でわかります。どちらの例も、デコードして、形式に合ったPNG、JPEG、WebPのファイルとして保存します。
aspectRatio を省略すると、モデルがプロンプトからフレームを選びます。1:1と16:9の出力ピクセル数は、前述の「呼び出す前に」の表にあります。ほかの比率は、Googleの画像生成ガイドを参照してください。
画像を編集する
最初に指示、そのあとに参照画像をinlineData パートとして送ります。プロンプトでは、画像を順番で指します(「1枚目の画像」「2枚目の画像」)。Nano Banana 2.1は最大14枚の参照画像に対応し、内訳はオブジェクト画像が最大10枚、人物画像が最大4枚です。
- cURL
- Python
jq で組み立てます。それぞれの mimeType は、ファイルの形式と一致させてください。大きな画像をURLで渡す
リクエスト本文全体は20 MB以内に収めてください。参照画像が大きい場合や、すでにCDNにある場合は、ダウンロードしてエンコードする代わりに、fileData パートでURLを渡します。
https://cdn.example.com/your-photo.jpgは自分の画像のURLに置き換え、mimeTypeも画像の形式に合わせます。fileDataパートとinlineDataパートは、同じparts配列に混在させられます。並べた順に、1枚目、2枚目、…の参照画像として数えられます。- サーバーが画像をダウンロードするため、URLはログインなしでアクセスできる必要があります。詳しい条件は、Nano Bananaの概要の「大きな画像と画像URL」を参照してください。
Google検索で画像を裏付ける
現在の事実や、実在するランドマークの見た目に依存する画像には、googleSearch ツールを追加します。このリクエストはウェブ検索と画像検索の両方を有効にし、モデルが書いたテキストも返るよう TEXT を許可しています。
searchTypesはオブジェクトにする必要があります。指定しない場合はウェブ検索だけが使われ、imageSearchだけを指定すると画像検索だけが使われます。- 検索するかどうかと、検索の種類は、モデルが決めます。実行した検索クエリは
groundingMetadataに入ります。 - 画像検索では、現時点で、実在の人物の画像を参照として使えません。
- 裏付けのある結果をエンドユーザーに表示する場合は、Googleのグラウンディングガイドが求める形で、検索候補を表示してください。
- 検索1回ごとに、$0.045の呼び出し料金に$0.014が加算されます。2回検索したリクエストは$0.073です。検索回数は呼び出しログで確認できます。詳しくは、Nano Bananaの概要の「課金」を参照してください。
OpenAI互換ルートを使う
すでにOpenAI SDKを使っているアプリでは、base_url を https://api.laozhang.ai/v1 にし、model を gemini-nano-banana-2.1 にします。このルートには、アスペクト比、サイズ、形式の設定がありません。モデルがプロンプトからフレームを選んだ1KのPNGが返り、多くは16:9です。比率を固定したい場合、2Kや4Kにしたい場合、JPEGにしたい場合は、Geminiネイティブのルートを使ってください。
画像は、message.content の中のBase64のデータURLとして返ります。次のスクリプトを nano_banana_21_chat.py として保存します。
エラーと課金
無効なパラメーターはHTTP 400を返し、課金されません。14種の比率にないaspectRatio(たとえば 7:3)は400を返し、エラーメッセージが空になることもあります。比率は、前述の「パラメーターと制限」の表で確認してください。
リクエスト本文が大きすぎると413を返します。大きな画像は、前述の「大きな画像をURLで渡す」の方法でURLとして渡してください。
- 1回の料金は$0.045です。出力サイズ、思考レベル、参照画像の数、生成か編集かで変わりません。
- Google検索グラウンディングは、検索1回あたり$0.014が加算されます。
- リクエストがHTTP 200で画像を返さないことがあります。たとえば、プロンプトが画像を求めていない場合や、安全チェックで出力がブロックされた場合です。
- この場合も1回分が課金されます。
finishReasonを確認し、プロンプトや参照画像を変えてから再送してください。- 詳しくは、Nano Bananaの概要の「空のレスポンスで課金されないようにする」を参照してください。
- 429と5xxのレスポンスは、バックオフを入れて再試行します。タイムアウトしたリクエストは、再送する前に呼び出しログを確認してください。
よくある質問
Nano Banana 2から移行するには?
モデルIDをgemini-3.1-flash-image から gemini-nano-banana-2.1 に変えるだけです。リクエストとレスポンスは変わりません。そのうえで、次の2点を確認してください。
"imageSize": "512"を指定しているリクエストは、1Kに変えるか、Nano Banana 2のままにします。Nano Banana 2.1は、512を指定されると1Kの画像を返し、その呼び出しを課金します。thinkingLevelを指定しない場合、Nano Banana 2.1はmediumで思考します。Nano Banana 2の既定はminimalです。速い動作に合わせたい場合は、minimalを明示してください。
思考レベルの変更と料金への影響は?
Geminiネイティブのルートでは、generationConfig.thinkingConfig.thinkingLevel に minimal、medium、high のいずれかを指定します。レベルが高いほど、レイアウトと文字に労力をかけるため、時間もかかります。
"includeThoughts": true も指定すると、レスポンスに、"thought": true が付いた思考のテキストと下書きの画像が加わります。save_image 関数とPythonスクリプトは、これらを読み飛ばします。
4Kは1Kより高いですか?
いいえ。1回の料金は常に$0.045です。2026年10月7日と14日に1K、2K、4Kで試した呼び出しは、いずれもこの金額で記録されました。Googleは出力トークンで課金し、料金のページによると、4K画像は約$0.113です。1Kの画像だけで足りる場合は、Nano Banana 2 Liteのほうが1回あたりの料金が低くなります。Nano Banana 2.1とProのどちらを使う?
1回$0.045のNano Banana 2.1から始めてください。画像が世界知識、多言語の文字、正確なブランド要素に依存する場合や、編集でスタイルの参照や最大5枚の人物の参照画像が必要な場合は、Nano Banana Pro(gemini-3-pro-image、1回$0.09)に移ります。どちらも同じリクエストを受け付けるので、決める前に、自分のプロンプトで両方を試してください。
2026年10月14日に同じプロンプトを2K、16:9で実行したところ、Nano Banana 2.1は25秒、Nano Banana Proは69秒でした。

Nano Banana 2.1、2K、16:9:25秒、$0.045。プロンプト:Generate an image of a corner cafe after rain at dusk, warm light on the wet pavement, with a neon sign that reads "BANANA CAFE".

Nano Banana Pro、2K、16:9:69秒、$0.09。プロンプト:Generate an image of a corner cafe after rain at dusk, warm light on the wet pavement, with a neon sign that reads "BANANA CAFE".
GoogleアカウントやAI Studioのキーは必要?
必要ありません。default グループのLaoZhang APIキーがあれば足ります。リクエストは https://api.laozhang.ai に送り、このページにあるGeminiネイティブ形式とOpenAI互換形式のどちらも使えます。
失敗や画像なしの場合も課金されますか?
上流から200以外の応答が返った場合(無効なパラメーターの400、生成前の429や5xx)は課金されません。HTTP 200は、画像の有無にかかわらず1回分が課金されます。詳しくは、前述の「エラーと課金」と課金と失敗時の扱いを参照してください。JPEG出力は使えますか?
使えます。Geminiネイティブのルートで、generationConfig.imageConfig に imageOutputOptions を追加します。
mimeTypeに指定できるのはimage/png(既定)とimage/jpegです。image/webpは400を返し、課金されません。compressionQualityはJPEGにだけ適用され、0から100の値を取ります。値が小さいほどファイルが小さくなります。- レスポンスの
inlineData.mimeTypeはimage/jpegに変わります。同じ1Kの正方形画像は、PNGで約1.1 MB、JPEGで40〜60 KBになり、料金は同じです。 - OpenAI互換のルートでは形式を指定できず、常にPNGが返ります。
OpenAI互換ルートが横長を返すのはなぜ?
このルートはアスペクト比を渡せないため、モデルがプロンプトからフレームを選び、多くは16:9になります。正方形や縦長にしたいときは、GeminiネイティブのルートでaspectRatio を指定してください。
関連ページと参考資料
- Nano Bananaの概要 — 5モデル、2つのプロトコル、課金の比較
- Nano Banana 2 — 512px出力が必要な場合
- Nano Banana 2 Lite — 低コストの1K画像
- Nano Banana Pro — 複雑なレイアウトとブランド要件の厳しい素材
- Geminiプロトコル — ネイティブのリクエスト構造とSDKの設定
- Google: Gemini Nano Banana 2.1 — 公式の機能と制限
- Google: Nano Banana image generation — サイズ、アスペクト比、参照画像の上限
- 呼び出しログ — リクエストのステータスと課金額の確認