> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apiyi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Nano Banana 2.1 画像生成/編集

> Google Nano Banana 2.1 (gemini-nano-banana-2.1) の一般提供が開始されました。Nano Banana 2 のアップグレード版として、画質、テキストレンダリング、マルチターンの整合性が向上しています。1リクエストあたり $0.05（4Kを含む）、または1M token あたり入力 $0.66 / 出力 $13.2 の token ベース課金が利用可能です。

## 概要

**Nano Banana 2.1**は、Googleが2026年10月6日にリリースした画像生成モデルです。モデルIDは\*\*`gemini-nano-banana-2.1`\*\*で、一般提供（GA）としてリリースされました。[Nano Banana 2](/ja/api-capabilities/nano-banana-2-image/overview)（`gemini-3.1-flash-image`）のアップグレード版であり、Flashレベルの速度を維持しながら、画質、画像内テキストのレンダリング、マルチターンの編集における一貫性を向上させ、前バージョンのタイリングアーティファクトを修正しています。Googleはすべての新規プロジェクトに2.1を推奨しています。

<Note>
  **🆕 2026年10月6日リリース**: APIYIで現在利用可能であり、**リクエスト単位**の課金（1リクエストあたり\$0.05、1K / 2K / 4K共通価格）と**tokenベース**の課金（100万tokensあたり入力\$0.66 / 出力\$13.2）の両方に対応しています。Nano Banana 2も同価格で引き続き利用可能で、Googleは停止日を発表していません。
</Note>

<Info>
  すべての画像APIは**同期式**です。ポーリング用のタスクIDは存在せず、クライアントが切断された場合は課金されたままで結果が失われます。このモデルには十分なタイムアウト値を設定してください。詳細は[画像APIの基本とベストプラクティス](/ja/api-capabilities/image-api-best-practices)を参照してください。
</Info>

<CardGroup cols={2}>
  <Card title="テキスト画像生成API" icon="wand-sparkles" href="/ja/api-capabilities/gemini-nano-banana-2.1/text-to-image">
    テキストpromptから画像を生成します。インタラクティブなPlaygroundも用意されています。
  </Card>

  <Card title="画像編集API" icon="image" href="/ja/api-capabilities/gemini-nano-banana-2.1/image-edit">
    画像と指示をアップロードして編集結果を取得します。インタラクティブなPlaygroundも用意されています。
  </Card>
</CardGroup>

## AIエージェントに統合を任せる

<Note>
  Codex、Claude Code、Cursorで開発している場合は、以下のpromptをコピーして貼り付けてください。まずこのページのプレーンテキスト版を取得し（任意のドキュメントURLの末尾に`.md`を追加）、お使いの技術スタックに合わせたコードを記述します。タイムアウト、防御的な`parts`のパース、アップロードの圧縮、解像度パラメーターといった最もよくある落とし穴は、すでに要件として明記されています。
</Note>

<Prompt description="コーディングエージェントにNano Banana 2.1の画像生成および画像編集の統合やデバッグを行わせます。Codex、Claude Code、Cursorなどにコピー＆ペーストしてください。" icon="bot" actions={["copy"]}>
  このプロジェクトにNano Banana 2.1（`gemini-nano-banana-2.1`）の画像生成 + 画像編集を統合（またはデバッグ）してください。

  コードを書く前にドキュメントを読んでください：このページのプレーンテキスト版を取得するには [https://docs.apiyi.com/en/api-capabilities/gemini-nano-banana-2.1/overview.md](https://docs.apiyi.com/en/api-capabilities/gemini-nano-banana-2.1/overview.md) をfetchしてください。詳細なパラメーターについては、画像生成および画像編集のページにも同様に`.md`を追加してください。

  要件：

  1. タイムアウト：Geminiネイティブフォーマットの`POST https://api.apiyi.com/v1beta/models/gemini-nano-banana-2.1:generateContent`を使用し、クライアントのタイムアウトを360秒に設定してください。画像呼び出しはタスクIDのない同期処理です。クライアントが切断されると、結果は失われますがリクエストは課金されます。中間のすべてのレイヤー（リバースプロキシ、ゲートウェイ、サーバーレス実行時間制限）の制限値も引き上げてください。生成時間より短いレイヤーがあるとリクエストが切断されます。Nodeを使用する場合、undiciには3つの独立したタイムアウトがあり、SDKの`timeout`ではそれらをカバーできないことに注意してください。

  2. レスポンスのパース（**最も間違いやすい点**）：画像は`candidates[0].content.parts[]`内の`inlineData.data`にbase64形式で格納されています。ただし、`parts`は**長さや順序が保証されていない異種混在の配列**です。テキストパートが最初に来て、画像がインデックス0ではなく1になる場合があります。そのため、**絶対に`parts[0]`や`parts[1]`をハードコードしないでください**。代わりに`parts`を反復処理し、`inlineData`を持つすべてのパートを収集して、**最後のパート**を取得してください（複雑なタスクでは複数のドラフトが返されることがあり、最後のものが最終版です）。`image/png`をハードコードするのではなく、レスポンスから`mimeType`を読み取ってください。画像をレンダリングし、「ディスクに保存」アクションを提供してください。

  3. アップロードの圧縮：編集の場合、参照画像をbase64として`inlineData`に含めてください。アップロード前に圧縮を行ってください — 1.5MBを超えるファイルのみ、長辺を2048pxに縮小（アップスケールは絶対に行わない）、元のフォーマットで品質0.9で再エンコードし、複数画像のリクエストでは合計サイズを6MB未満に抑えてください。base64エンコードによってサイズは約3分の1増加するため、各画像は5MB未満に保ってください。1つの画像の圧縮に失敗した場合は、リクエスト全体を失敗させるのではなく、元の画像にフォールバックしてください。また、**1つのパートに含めることができるのは`text`または`inlineData`のいずれか一方のみで、両方を含めることはできません** — 正しい構造は1つのテキストパート + N個の画像パートです。

  4. 解像度パラメーター：**常に**`generationConfig.imageConfig.imageSize`（`1K` / `2K` / `4K`、デフォルトは`1K`。**このモデルは`512`をサポートしておらず、渡すと400が返されます**）および`aspectRatio`（有効な14種類のアスペクト比がこのページに記載されています）**を渡してください**。`aspectRatio`がない場合、モデルはコンテンツに基づいてアスペクト比を選択するため、出力の形状が予測できなくなります。tokenベースの課金では、**解像度が価格を直接決定します**。UIには解像度とアスペクト比の両方をドロップダウンとして配置してください。

  5. エラーハンドリング：コンテンツモデレーションによってリクエストがブロックされた場合、HTTPステータスは200のままですが、`candidates[0].content.parts`は空になります。まず`candidatesTokenCount == 0`を確認し、次に`finishReason`が`STOP`でないかどうかを確認してください。`IMAGE_SAFETY`のようなブロックは**課金されず**、同じリクエストを1〜2回再試行すると成功することが多いため、自動的に再試行してください。

  6. キーは環境変数`APIYI_API_KEY`から読み取り、`Authorization: Bearer ...`として送信してください。決してハードコードしたり、Gitにコミットしたりしないでください。

  7. 完了したら、実際に画像生成の呼び出しと画像編集の呼び出しをそれぞれ1回実行し、生成された画像と両方の呼び出しのコストを表示してください。
</Prompt>

<Accordion title="このpromptによって防げる問題">
  | 要件 | 回避できる落とし穴 |
  | - | - |
  | `parts`インデックスをハードコードしない | `parts`の数と順序は保証されていないため、固定インデックスを使用すると断続的に失敗します。[Nano Banana開発者ガイド](/ja/api-capabilities/nano-banana-dev-guide)を参照してください |
  | 最後の画像パートを取得する | 複雑な編集では複数のドラフトが返される場合がありますが、最後のものが最終版です |
  | `512`を絶対に送信しない | 2.1では512ティアが廃止されました。これを使用しているNano Banana 2のコードは400で失敗します |
  | 常に`imageSize`と`aspectRatio`を渡す | tokenベースの課金では、解像度が価格を決定します。アスペクト比がない場合、モデルが独自に選択するため、同じpromptでも横長または縦長で返される可能性があります |
  | アップロード前に圧縮する | base64によってサイズは約3分の1増加します。[画像の圧縮と出力解像度](/ja/api-capabilities/image-compression-resolution)を参照してください |
  | `IMAGE_SAFETY`を自動再試行する | モデレーションによるブロックは画像なしで200を返し、課金されません。単純な再試行で成功することがよくあります。[Gemini画像エラーハンドリング](/ja/api-capabilities/gemini-image-error-handling)を参照してください |
</Accordion>

## 主な機能

<CardGroup cols={2}>
  <Card title="画質の向上" icon="sparkles">
    Nano Banana 2 よりも視覚的品質が向上し、前バージョンで見られたタイリングアーティファクトが修正されました
  </Card>

  <Card title="より正確なテキスト描写" icon="type">
    画像内のテキストがより鮮明になり誤字も減少 — ポスター、マーケティング素材、インフォグラフィックスに最適です
  </Card>

  <Card title="マルチターン編集の安定化" icon="message-circle">
    対話形式の編集を行っても、キャラクターやシーンの一貫性がより強固に維持されます
  </Card>

  <Card title="3段階の思考レベル" icon="brain">
    minimal / medium / high、デフォルトは medium — 前バージョンから1段階レベルが追加されました
  </Card>
</CardGroup>

<CardGroup cols={2}>
  <Card title="最大4K出力" icon="expand">
    1K / 2K / 4K に対応。リクエストごとの課金のため、4K でも 1K と同じ料金で利用できます
  </Card>

  <Card title="14種類のアスペクト比" icon="maximize">
    極端に縦長・横長の 1:4、4:1、1:8、8:1 にも対応。Google によると、ワイドフォーマットは高解像度でより美しく仕上がります
  </Card>

  <Card title="マルチリファレンスの融合" icon="users">
    最大10個のオブジェクト参照 + 4つのキャラクター参照 + 3つのスタイル参照に対応
  </Card>

  <Card title="Google Search グラウンディング" icon="search">
    天気カードや市場チャートなど、リアルタイムの情報を必要とする画像には `googleSearch` ツールを連携できます
  </Card>
</CardGroup>

## Nano Banana 2との違い

| | **Nano Banana 2.1** | Nano Banana 2 |
| - | - | - |
| モデルID | `gemini-nano-banana-2.1` | `gemini-3.1-flash-image` |
| ステータス | GA（一般提供）；Googleは新規プロジェクトでの利用を推奨 | GA（一般提供）；引き続き利用可能 |
| 品質 / テキストレンダリング / マルチターンの一貫性 | より優れている | 良好 |
| 解像度 | 1K / 2K / 4K | 512 / 1K / 2K / 4K |
| 4K画像あたりの出力 tokens | 3780 | 2520 |
| 思考レベル | minimal / medium / high（デフォルト: medium） | minimal / high（デフォルト: minimal） |
| Google価格：入力 | \$1.50 / 1M | \$0.50 / 1M |
| Google価格：画像出力 | \$30 / 1M | \$60 / 1M |
| Google価格：4K画像あたり | \$0.113 | \$0.151 |
| **APIYI リクエスト単位** | **\$0.05** | \$0.055 |
| **APIYI tokenベース** | 入力 \$0.66 / 出力 \$13.2（1Mあたり） | 入力 \$0.18 / 出力 \$21.6（1Mあたり） |

<Tip>
  **どちらを選ぶべきか**:

  * **新規プロジェクト** → Nano Banana 2.1：より高品質で、リクエストあたりの価格も安価です
  * **すでにNano Banana 2をご利用の場合** → モデル名を変更することで移行できます。コードで`512`ティアを使用している場合は、先に`1K`へ変更してください
  * **512pxのサムネイルが必要な場合** → Nano Banana 2をそのまま利用するか、[Nano Banana 2 Lite](/ja/api-capabilities/nano-banana-lite-image/overview)をご利用ください
  * **最高品質を求める場合** → [Nano Banana Pro](/ja/api-capabilities/nano-banana-image/overview)（リクエストあたり\$0.09）
</Tip>

## 料金

<Info>
  **課金モードの選択**: Nano Banana 2.1は2つの課金モードに対応しており、token作成時の「Billing model」設定で選択できます:

  * **Pay-as-you-go** または **Pay-as-you-go Priority** → token単位の課金
  * **Pay-per-request** または **Pay-per-request Priority** → リクエスト単位の課金
  * ⚠️ **Hybrid billingは選択しないでください**
</Info>

### リクエスト単位の課金

| モデル | APIYI価格 | Google価格 (4K) | Google比 |
| - | - | - | - |
| **Nano Banana 2.1** `gemini-nano-banana-2.1` | **1リクエストあたり\$0.05**（1K / 2K / 4K共通） | 1画像あたり\$0.113 | **約44%** |

### token単位の課金

| 項目 | Google | APIYI | Google比 |
| - | - | - | - |
| 入力 | \$1.50 / 1M tokens | \$0.66 / 1M tokens | **44%** |
| 出力（画像、テキスト、思考を一律レートで計算） | 画像: \$30 / 1M、テキストおよび思考: \$7.50 / 1M | \$13.2 / 1M tokens | 画像レートの**44%** |

<Note>モデルの価格は公式サイトと連動しており、変更される場合があります。上記の表は参考情報です。最新かつ正確な情報は上部ナビゲーションの**モデル料金**タブをご確認ください: [モデル料金](/en/models/index)。</Note>

### token単位の課金: 本番環境での実際の課金額

Nano Banana 2.1は**デフォルトで生成前に思考を行います**（デフォルトレベル: medium）。画像tokenに加えて、各画像は約400〜1,300の思考およびその他の出力tokenを生成し、画像と合算して\$13.2 / 1Mで課金されます。そのため、token単位の課金における1画像あたりのコストは**固定ではなく、変動します**。以下の表は、2026-10-07の実際のtoken課金リクエストから取得したもので、金額はコンソール内の実際の課金額です（解像度は出力tokenから推測）:

| シナリオ | 入力tokens | 出力tokens | 実際の課金額 |
| - | - | - | - |
| 1K テキストからの画像生成 | 36 | 1,970 | \$0.0260 |
| 1K 単一画像の編集 | 1,137 | 2,015 | \$0.0273 |
| 1K 単一画像の編集（思考多め） | 1,132 | 2,409 | \$0.0325 |
| 2K テキストからの画像生成 | 13 | 2,623 | \$0.0346 |
| 2K 単一画像の編集 | 1,188 | 2,957 | \$0.0398 |
| 2K 14枚の参照画像の合成 | 15,735 | 2,827 | \$0.0581 |
| 4K テキストからの画像生成 | 13 | 4,703 | \$0.0621 |
| 4K 複雑なprompt | 72 | 4,933 | \$0.0652 |

当日の60件のtoken課金リクエストの分布:

| 解像度 | リクエスト数 | 最小 | 中央値 | 最大 | リクエスト単位の価格 |
| - | - | - | - | - | - |
| 1K | 31 | \$0.021 | \$0.029 | \$0.033 | \$0.05 |
| 2K | 19 | \$0.033 | \$0.036 | \$0.058 | \$0.05 |
| 4K | 10 | \$0.061 | \$0.063 | \$0.067 | \$0.05 |

<Tip>
  **課金モードの選び方**:

  * **1K / 2K → token単位の課金**: 通常1画像あたり\$0.02〜\$0.04となり、リクエスト単位の価格（\$0.05）を下回ります
  * **4K → リクエスト単位の課金**: 固定で\$0.05ですが、token単位の課金では\$0.06以上かかります
  * **1回のリクエストに多数の参照画像がある場合**（10枚以上など）: 入力tokensによりtoken単位の課金コストが\$0.05近くまたはそれ以上になるため、この場合もリクエスト単位の課金をご利用ください

  当サービスの[チャージボーナス](/ja/faq/recharge-promotions)と組み合わせることで、実際のコストはさらに低くなります。
</Tip>

<Info>
  **画像tokenだけで見積もるとコストが低く算出される理由**: `usageMetadata`内の`thoughtsTokenCount`は`candidatesTokenCount`に含まれていませんが、APIYIのログでは出力tokensとしてカウントされ課金されます。1120 / 1680 / 3780 tokensで見積もると、コストが20%〜40%過小評価されます。実際の課金状況はコンソールログで確認・照合してください。
</Info>

## 課金に影響するパラメータ

| パラメータ | リクエストあたりのコストへの影響 | 備考 |
| - | - | - |
| `imageConfig.imageSize` | 1K 約\$0.026 → 4K 約\$0.062（tokenベース） | 最大の変動要因。リクエスト単位の課金には影響しません |
| `thinkingConfig.thinkingLevel` | `high` は thinking token を約30%多く消費し、4K画像では約+6%となります | 影響はわずかです。必要な場合に有効にしてください |
| `tools: [{"googleSearch": {}}]` | 検索クエリあたり \$0.014。テストでは画像1枚あたり2回のクエリを実行 | リクエストあたりのコストが顕著に増加します |

### thinkingLevel: デフォルトは medium、high でもコストはわずかに増加するのみ

| 設定 | thinking token（中央値） | 4K画像あたりのコスト（tokenベース） |
| - | - | - |
| 未設定（デフォルトの medium） | 約690 | 約\$0.062 |
| `high` | 約940 | 約\$0.066 |

Nano Banana 2（デフォルトは minimal で、`high` はコストが54%高くなります）とは異なり、2.1 はデフォルトですでに思考を行い、`high` は少し長く思考するだけです。画像内のテキストレイアウトやチャートの比率を正確にする必要がある場合は、気軽に有効にしてください。

### Google Search グラウンディング：検索クエリごとに課金

リアルタイム情報を必要とする画像（天気カード、市況チャート、最新イベントのポスターなど）には、`googleSearch` ツールをアタッチします：

```json theme={null}
{
  "contents": [{ "parts": [{ "text": "A weather card poster for Tokyo today" }] }],
  "tools": [{ "googleSearch": {} }]
}
```

テストではグラウンディングが3回中3回トリガーされ、モデルはリクエストあたり自律的に2回の検索クエリを実行しました。クエリ1回あたりのコストは \$0.014（1,000回あたり \$14）です。**モデルが実行するクエリ数を決定し、事前に上限を設定することはできません**。そのため、1リクエストあたり2〜3回のクエリを見積もっておいてください。

<Warning>
  **検索料金はリクエスト単位の課金にも加算されます**：1リクエストあたり \$0.05 は画像のみを対象としており、`googleSearch` をアタッチした場合、各検索クエリの料金が追加で加算されます。
</Warning>

## グループ

APIYIではNano Banana 2.1を2つのグループで提供しており、token設定で切り替えることができます：

| グループ | レート倍率 | ユースケース |
| - | - | - |
| `Default` | 1.0x | 表示価格通りの標準チャネル。デフォルトとして推奨 |
| `NB-Enterprise` | 1.4x | デフォルトグループの混雑時やタイムアウト時のフォールバックチャネル。安定性を最優先 |

**推奨されるtoken課金モード**: `Pay-as-you-go Priority`を選択してください — Nano Banana 2 / 2.1のtokenベースの課金とNano Banana Proのリクエスト単位の課金の両方に対応しているため、**1つのtokenでシリーズ全体をカバーできます**。`Default`をプライマリグループ、`NB-Enterprise`をフォールバックとして設定してください。プライマリグループが429を返した場合、リクエストは自動的にフォールバックし、生成を継続します。

## 解像度とアスペクト比

### 出力解像度

| 解像度 | 説明 | ユースケース |
| - | - | - |
| 1K | デフォルト | ソーシャルメディア、Web |
| 2K | HD | HDディスプレイ、印刷 |
| 4K | Ultra HD | プロフェッショナルデザイン、商用ポスター |

<Warning>
  **`512` はサポートされていません**: `"imageSize": "512"` は 400 `Image size 512 is not supported for this model` を返します（課金されません）。Nano Banana 2 から移行する際は変更してください。
</Warning>

### サポートされているアスペクト比 (14)

`1:1`, `1:4`, `4:1`, `1:8`, `8:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`

**`aspectRatio` を省略した場合、モデルはコンテンツに基づいてアスペクト比を選択します**: 弊社のテストでは、シーンの prompt はほとんどが 16:9 になり、ポスターの prompt は 2:3 または 3:4 になりました。固定のアスペクト比が必要な場合は、明示的に指定してください。

### 実測出力サイズ（ピクセル）

| 比率 | 1K | 2K | 4K |
| - | - | - | - |
| **16:9** | 1376×768 | 2752×1536 | 5504×3072 |
| **2:3** | 848×1264 | — | 3392×5056 |
| **3:4** | 896×1200 | — | — |
| **8:1** | 2928×352 | — | — |

<Info>
  2026-10-07 時点の実測値です。「—」は未測定を意味します。1K における 8:1 は 2928×352 であり、Nano Banana 2 の 3072×384 とは異なる点にご注意ください。そのため、フロントエンドのレイアウトに **Nano Banana 2 のサイズテーブルを再利用しないでください**。
</Info>

## よくある質問

<AccordionGroup>
  <Accordion title="Nano Banana 2.1とNano Banana 2は同じモデルですか？">
    いいえ。2.1は個別のモデルID（`gemini-nano-banana-2.1`）であり、品質、テキスト描画、マルチターンの一貫性が向上しているほか、異なる価格体系（入力が高価、画像出力が安価、4K画像あたりのtokensが増加）が適用されます。両方のモデルがAPIYIで利用可能であり、互いに影響することはありません。
  </Accordion>

  <Accordion title="Nano Banana 2から移行するには何を変更すればよいですか？">
    1. モデル名を`gemini-3.1-flash-image`（または`-preview`）から`gemini-nano-banana-2.1`に変更します
    2. `"imageSize": "512"`を使用している場合は、`1K`に変更します
    3. tokensからコストを見積もっている場合は、上記の「画像1枚あたりの実際のコスト」の表と照らし合わせて再確認してください

    リクエスト形式、レスポンス構造、複数画像の処理、およびマルチターン編集はすべて同一のままです。
  </Accordion>

  <Accordion title="Nano Banana 2は提供終了になりますか？">
    2026年10月7日現在、Googleは`gemini-3.1-flash-image`の提供終了日を発表しておらず、推奨される代替モデルとして2.1を挙げているのみです。APIYIのNano Banana 2は引き続き同じ価格でご利用いただけます。変更がある場合は事前にお知らせいたします。
  </Accordion>

  <Accordion title="画像のtokensから想定される請求額よりも高くなるのはなぜですか？">
    2.1はデフォルトで思考を行うため、画像ごとに約400〜1300の思考およびその他の出力tokensが追加され、画像と共に出力レートで課金されます。これらは`thoughtsTokenCount`で確認できます。主に4Kを生成する場合は、リクエストごとの課金（\$0.05）の方がお得です。
  </Accordion>

  <Accordion title="同時実行数の制限はありますか？">
    **同時実行数の制限はありません** — 並行リクエストは自由に送信でき、キューに入ったり互いにブロックされたりすることはありません。重要なのは`timeout`です。4Kやピーク時のリクエストには時間がかかる場合があるため（テストでは、ほとんどの4Kリクエストに30〜50秒かかり、数件は2分を超えました）、**クライアントのタイムアウトを360秒に設定してください**。まれに429エラーが発生する場合は、tokenのフォールバックグループとして`NB-Enterprise`を追加してください。
  </Accordion>

  <Accordion title="出力画像にウォーターマークは入りますか？">
    すべての出力画像には、不可視のSynthIDウォーターマーク（GoogleのAI生成コンテンツ用マーカー）が含まれています。これは目に見えず、使用に影響を与えることもありません。
  </Accordion>
</AccordionGroup>

## 関連ドキュメント

* [Nano Banana 2 画像生成/編集](/ja/api-capabilities/nano-banana-2-image/overview) - 旧バージョン、512pxに対応
* [Nano Banana Pro 画像生成/編集](/ja/api-capabilities/nano-banana-image/overview) - 最高品質
* [Nano Banana 開発ガイド](/ja/api-capabilities/nano-banana-dev-guide) - サイズ制御、入力画像の要件、画像URL
* [Nano Banana 料金](/ja/api-capabilities/nano-banana-pricing)
* [Gemini 画像エラーハンドリング](/ja/api-capabilities/gemini-image-error-handling)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.