ListenHubDocs
API リファレンス画像生成

Nano Banana

Nano Banana Pro と Flash の制限、極端な 4 種のアスペクト比、そして無料の relax レーン。

Nano Banana は ListenHub における Google の画像モデルファミリーです。精細さ重視の gemini-3-pro-image (Nano Banana Pro)と、速度重視の gemini-3.1-flash-image(Nano Banana Flash)があります。どちらも共通の 画像エンドポイントで動作します。エンドポイント、リクエストスキーマ、非同期の流れ、エラーコードについては 画像生成の概要 を参照してください。本ページで扱うのは Nano Banana 固有の内容だけです。

モデル

モデル表示名主な用途
gemini-3-pro-imageNano Banana Proカタログの中で最も精細な出力
gemini-3.1-flash-imageNano Banana Flashより高速・低コストな生成。Nano Banana ファミリーの中で極端な比率に対応する唯一のティア

どちらも provider: "google" を指定します。プレビュー版の ID gemini-3-pro-image-preview と gemini-3.1-flash-image-preview は引き続き受け付けられ、上記の GA の ID に正規化されます。

制限

制限項目gemini-3-pro-imagegemini-3.1-flash-image
画像サイズ1K、2K、4K1K、2K、4K
アスペクト比標準 10 種極端な 4 種を含む 14 種すべて
デフォルトのアスペクト比1:1(スキーマのデフォルト)1:1(スキーマのデフォルト)
参照画像最大 14 件最大 14 件
quality無視されます無視されます

本ファミリーの中で 1:4、4:1、1:8、8:1 に対応するのは Flash だけです — gemini-3-pro-image に送ると 400 と code: 29003 が返ります。Nano Banana でのアスペクト比の拒否は毎回 29003 を返し、 GPT-Image と Wan 2.7 が使う 26019 ではありません。

どちらのモデルもファミリーレベルの参照画像の上限を宣言していないため、スキーマ全体の上限である 14 件が実質的な 上限になります — カタログの中で最も多い数です。

極端な比率

標準の比率セットでは表現できないバナー、縦長のストリップ、パノラマのために、4 種の比率があります。

比率形状典型的な用途
1:4細長い縦長サイドバー用の画像、縦長のストリップ
4:1幅広の横長ページバナー、ヘッダー
1:8極端な縦長縦にスクロールするパネル
8:1パノラマ幅広のパノラマ、フッターのストリップ

Nano Banana ファミリーの中では Flash だけが対応します。ファミリーの外では seedream-5-0-pro も受け付けます — このモデルは比率ではなくサイズで検証しているためです。

無料枠

どちらのモデルにも専用の無料枠リソースがあり、使えるのは 1K と 2K だけです — 4K のリクエストは必ず クレジットで課金されます。無料枠の獲得方法と参照方法は 概要 にあります。

モデル無料枠リソース
gemini-3-pro-imagegemini-3-pro-image-relax-1k-2k
gemini-3.1-flash-imagegemini-3.1-flash-image

relax レーン

gemini-3-pro-image は、カタログの中で無料枠に独立した実行レーンを持つ唯一のモデルです。どのように実行される かは、アカウントの種類によって決まります。

  • 課金実績のあるアカウント(有効なサブスクリプション、チャージ、またはクレジットパックの購入)は、無料枠を 消費している間も完全な優先度、通常の処理能力、通常のフォールバックを保ちます — 無料枠が変えるのは課金方法で あって、実行されるレーンではありません。
  • 完全無料アカウント(一度も課金していないアカウント)は、スループットに固定の上限がある最低優先度の無料 レーンで実行されます。ピーク時にはリクエストがキューに入ったり、再試行可能な busy / timeout レスポンスで 拒否されたりすることがあります。その場合、クレジットは一切消費されず、無料枠も消費されません — 時間を おいて再試行してください。

完全無料アカウントの relax 失敗では、ローカライズされた文言を解析しなくても判別できる機械可読なメタデータが 返ります。

  • failReason は free_relax_busy または free_relax_timeout になります。
  • retryable は true になります。
  • 無料枠が払い戻されると freeUsageRolledBack が true になります。
  • userMessage は同期エラーレスポンスのボディに、ローカライズ可能な分かりやすい文言を載せます。非同期の タスクオブジェクトは同じ文言を failUserMessage として公開します。2 つのサーフェスではフィールド名が異なり ます — 両方の経路を扱うなら両方を読んでください。

同期リクエストではこれはエラーレスポンスのボディに現れ、非同期リクエストでは失敗したタスクの詳細(およびタスク 一覧)に現れます。どちらの理由も「時間をおいて再試行、課金は発生していない」として扱ってください。

料金

どちらのモデルも画像サイズごとの固定クレジットコストで課金され(pricing.mode は fixed)、どちらも requiresSubscription を設定することはありません。4K は 2K より、2K は 1K より高くなります。正確な 数値はハードコードせず、モデルとサイズを指定して POST /v1/images/generation/estimate-credits を呼び出して取得してください。

例

curl -X POST "https://api.marswave.ai/openapi/v1/images/generation/async" \
  -H "Authorization: Bearer $LISTENHUB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "google",
    "model": "gemini-3.1-flash-image",
    "prompt": "A panoramic mountain range at dawn, layered mist, muted palette",
    "imageConfig": { "imageSize": "2K", "aspectRatio": "8:1" }
  }'

完全なパラメータ一覧と参照画像を含むリクエストの形式は、 画像生成の概要 を参照してください。

このページの内容