Nano Banana はGoogleのコミュニティのニックネーム(社内略称)です ジェミニ2.5のフラッシュイメージ — 高品質で低遅延のマルチモーダル画像生成+編集モデル。この長文ガイド(コード、パターン、導入手順、CometAPIの例を含む)では、本番環境で使用できる1つの実用的な呼び出し方法を紹介します。(2) OpenAI互換のチャットインターフェース(テキスト→画像)、(XNUMX) Googleの公式 generateContent テキスト→画像インターフェース、そして(3)Googleの公式 generateContent Base64入出力を用いたimage→imageインターフェース。配布・展開に関するステップバイステップのアドバイス、環境設定、CometAPIからのAPI操作の取得方法、価格とウォーターマークに関する注意事項、そして信頼性とコスト効率に優れた結果を得るためのヒントをご紹介します。
ナノバナナ(ジェミニ2.5フラッシュイメージ)とは何ですか?
Nano Banana は、Google の Gemini ファミリーの最新画像モデルである Gemini 2.5 Flash Image の非公式な名称です。フォトリアリスティックな画像生成と精密な画像編集(ローカル編集、複数画像の融合、編集間での一貫したキャラクタの保持)の両方を実現するよう設計されており、Google Gemini API、Google AI Studio、Vertex AI から利用できます。このモデルには、出所を示す目に見えない SynthID ウォーターマークが付属しています。
これが開発者にとって重要な理由: Nano Banana は、以下を処理できる単一の高品質のマルチモーダル モデルを提供します。
- テキスト → 画像 (テキストプロンプトから新しい画像を作成する)
- 画像 → 画像 (提供された写真を編集/変換する)
- 複数画像のブレンド (複数の写真を1枚の合成画像に組み合わせる)
これらすべてはGoogleの公式generateContentエンドポイント(Vertex AI / Gemini API)、またはCometAPIやOpenRouterなどのサードパーティAPIゲートウェイが提供するOpenAI互換エンドポイント経由で利用できます。つまり、Gemini 2.5 Flash Imageを既存のOpenAI互換コードベースに統合したり、Google公式SDKを直接呼び出したりすることが可能になります。
優れている点
- 対象を絞ったローカル編集 (シャツの色の変更、オブジェクトの削除、ポーズの調整)。
- 再編集を通じて主題/登場人物の一貫性を維持する。
- 複数の画像をブレンド/マージして一貫性のある合成画像を作成します。
- より重い研究モデルと比較して、レイテンシが低く、コスト効率に優れた推論を実現します (Google は「Flash」モデルを高スループットのオプションとして位置付けています)。
API 経由で Nano Banana を呼び出すには、開発環境をどのように設定すればよいですか?
以下は、後述する 3 つの呼び出し方法のいずれの場合にも基準として使用できるステップバイステップのチェックリストです。
前提条件(アカウント、キー、クォータ)
- Google アカウント + Cloud プロジェクト — Google(Gemini API / Vertex AI)経由でGeminiを直接呼び出す場合は、Google Cloudプロジェクトを作成し、Vertex AI / Gemini APIを有効にしてください。課金と適切なロール(例:
Vertex AI AdminorService Account推論権付き)。 - Gemini API アクセス — 一部の Gemini 画像モデルはプレビュー/限定的に利用可能であるため、アカウントに応じてアクセスをリクエストするか、Google AI Studio または Vertex AI 経由でモデルを使用する必要がある場合があります。
- CometAPI(オプションのゲートウェイ) — ベンダーに依存しない単一のAPIで、Geminiを含む様々なモデルをプロキシしたい場合は、CometAPIにサインアップしてAPIキーを取得し、モデルリストを確認してください(CometAPIはGemini 2.5 FlashバリアントとOpenAI互換エンドポイントを公開しています)。CometAPIは開発を簡素化し、アプリコードを変更することなくプロバイダーを切り替えることができます。
ローカルツール
- 言語ランタイム: Node.js 18 以上、Python 3.10 以上を推奨します。
- HTTPクライアント:
fetch/axiosJSの場合;requests/httpxPython (または公式 SDK) 用。 - 画像ヘルパー:
Pillow(Python)またはsharp(Node) サイズ変更、形式変換、Base64 エンコード/デコード用。 - セキュリティ: キーは環境変数またはシークレットボールト(HashiCorp Vault、AWS Secrets Manager、Google Secret Manager)に保存してください。APIキーはコミットしないでください。
Google/互換SDKをインストールする(オプション)
GoogleはSDKを提供しており、 openai ライブラリ互換性シム — OpenAIクライアントライブラリは、ベースURLとAPIキーを数行変更するだけでGeminiでも使用できますが、マルチモーダル機能を完全に利用するには、ネイティブのGemini/Googleクライアントの使用を推奨します。CometAPIまたはOpenAI互換ゲートウェイを使用している場合は、OpenAIクライアントを使用すると開発をスピードアップできます。例:
公式 Google ルート (Python):
python -m venv venv && source venv/bin/activate
pip install --upgrade pip
pip install google-genai # official Google GenAI SDK
pip install Pillow requests jq # for local image handling in examples
CometAPI / OpenAI互換クライアント(Python):
pip install openai requests
Nano Banana の 3 つの通話方法はどのように選択すればよいですか?
呼び出し方法の選択は、アーキテクチャ、レイテンシ/コスト要件、Google の公式エンドポイントを利用するか、サードパーティの OpenAI 互換ゲートウェイを利用するかによって異なります。一般的な 3 つのパターンは次のとおりです。
1) OpenAI互換のチャットインターフェース(テキストから画像へ)
OpenAIスタイルのコードやSDKが既にあり、最小限の変更でモデルを切り替えたい場合に使用します。多くのゲートウェイ(CometAPI、OpenRouter)は、OpenAI互換のRESTサーフェスでGeminiモデルを公開しているため、既存の chat or completions 通話は異なる base_url モデル名。Google Cloud 認証を管理したくない場合は、これが本番環境への最速のパスとなることがよくあります。
2) ジェミニ公式 generateContent — テキストから画像へ
Googleの公式 generateContent ビア genai 公式かつ完全サポートのSDKと最新機能(きめ細かな生成パラメータ、ストリーミング、大規模アセット用のファイルAPI)へのアクセス、そしてGoogle Cloudの課金・モニタリングをご希望の場合は、GoogleクライアントまたはVertex AIをご利用ください。本番環境のサポートとエンタープライズグレードのコントロールが必要な場合は、こちらをお勧めします。
3) ジェミニ公式 generateContent — 画像から画像へ(Base64 入力/出力)
バイナリ画像をインライン(Base64)で送信する必要がある場合、または画像編集/画像間パイプラインが必要な場合に使用します。Googleの generateContent インライン(Base64)画像と、大容量または再利用可能なアセットのためのFile APIをサポートしています。生成/編集された画像に対するレスポンスは通常、Base64文字列として返され、デコードして保存できます。これにより、最も明確なマルチモーダル制御が可能になります。
OpenAI 互換のチャット インターフェース (テキストから画像) を介して Nano Banana を呼び出すにはどうすればよいですか?
OpenAI互換のチャットエンドポイントは、 {role, content} メッセージ。ユーザーメッセージで必要な画像を記述すると、ゲートウェイ(CometAPI または OpenAI 互換シム)がそれを基盤となる Gemini モデルの呼び出しに変換します。これは、アプリで既にチャットフローを使用している場合や、テキスト生成と画像生成を単一のやり取りで組み合わせたい場合に便利です。
ステップ
1.CometAPIにサインアップしてAPIキーを取得するCometAPIに登録し、プロジェクトを作成し、APIキーをコピーします。CometAPIは単一のAPIで複数のモデルを公開しています。 base_url. ()
-
OpenAI対応クライアントをインストールする: パイソン:
pip install openaiまたは新しいものを使用するopenai/OpenAI多くのゲートウェイで使用される SDK ラッパー。 -
SDKをCometAPIにポイントし、チャット完了エンドポイントを呼び出します。:
curl https://api.cometapi.com/v1/chat/completions \
-H "Authorization: Bearer $COMET_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2-5-flash-image-preview",
"stream": true,
"messages": [{"role": "user",
"content": "Generate a cute kitten sitting on a cloud, in a cartoon style"}]
}'
注意:
-
stream は true である必要があります。応答はストリームとして返されます。
-
レスポンス構造は、OpenAI との互換性のために CometAPI によってラップされます。
-
レスポンスにはBase64画像が含まれます。必要に応じてデコードしてクライアントに保存します。
ジェミニ公式を使ってナノバナナに電話するにはどうすればいいですか? generateContent テキストから画像へのインターフェース?
Googleは Gemini 開発者 API (Gemini API)およびGeminiモデルを 頂点AI. Gemini 2.5 Flash Image (Nano Banana) にプログラム的にアクセスするためのサポートについては、公式の generateContent この方法は、テキストのみまたはマルチモーダル生成の標準的なエントリポイントです。Googleの GenAI SDK (Python: google-genai)を使用するか、REST エンドポイントを直接呼び出します。これにより、モデルのパラメータとモダリティに直接アクセスできるようになり、Google のエンドポイントを呼び出すときに高度な機能(正確な編集、複数画像の融合)を使用するための推奨される方法です。
1.Googleの GenAI SDK (Python: google-genai)
配布/呼び出し手順(概要):
- APIキーを取得する Google AI Studio から、または Vertex AI サービス アカウントを設定します (プラットフォームによって異なります)。
- SDKをインストールする (
pip install --upgrade google-genai)にアクセスし、認証します(API キーまたは Google アプリケーションのデフォルト認証情報)。 - 選択する モデル:
gemini-2.5-flash-imageまたはドキュメントに表示されるプレビュー スラッグ (正確なスラッグは GA/プレビューの状態によって異なります)。 - コール
client.models.generate_content(...)プレーンテキストプロンプト(テキストから画像へ)を使用します。 - デコード 返された画像(Base64 で返された場合)を保存/保管します。
Python(公式クライアント)の例 - テキスト→画像:
from google import genai
from base64 import b64decode, b64encode
client = genai.Client(api_key="YOUR_GEMINI_KEY")
prompt = {
"content": "A hyperrealistic photo of a vintage motorcycle parked under neon lights at midnight",
"mime_type": "text/plain"
}
# request generateContent for image output
result = client.generate_content(
model="gemini-2-5-flash-image-preview",
prompt=prompt,
response_modalities=,
image_format="PNG",
)
# handle binary or base64 in response (depends on API mode)
(注: 正確なパラメータ名については公式クライアント API を確認してください。上記の例は Google ドキュメントのパターンに従っています。)
2。 コール ナノ・バナン RESTエンドポイント経由
EST エンドポイント (テキストから画像への例): https://api.CometAPI.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent.
認証オプション: ヘッダーの提供 x-goog-api-key: $CometAPI_API_KEY(CometAPI でキーを作成します。)
これにより、テキスト プロンプトが表示され、返された base64 イメージが保存されます。
curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"parts": [
{ "text": "A photorealistic nano banana dish plated in a stylish restaurant, cinematic lighting, 3:2 aspect ratio" }
]
}]
}' \
| jq -r '.candidates.content.parts[] | select(.inline_data) | .inline_data.data' \
| base64 --decode > gemini-image.png
注: イメージバイナリはbase64で返されます。
candidates.content.parts.inline_data.data上記の例ではjqインラインデータを取得してデコードします。公式ドキュメントにも同じフローが示されています。
ジェミニ公式を使ってナノバナナに電話するにはどうすればいいですか? generateContent 画像間インターフェース (Base64 入出力)?
イメージ間 (base64 入出力) はいつ使用すればよいですか?
次のような場合に、画像間変換を使用します。
- 既存の写真を編集します(修復、スタイルの転送、オブジェクトの置き換え)。
- 複数のソース イメージを 1 つの構成に結合します。
- 編集をまたいで被写体のアイデンティティを維持します (Nano Banana の強みの 1 つ)。
ジェミニの generateContent Base64(またはファイルURI)経由のインライン画像データをサポートし、生成または編集された画像をBase64文字列として返します。ドキュメントには、提供方法の明確な例が記載されています。 inline_data mime_type および data.
分布/呼び出しステップ(画像間)
- 準備 入力画像: ファイルバイトを読み取り、Base64 でエンコードするか、SDK ヘルパー経由で生のバイトを渡します。
- 構築する a
contents配列の一部はインライン画像(mimeTypeおよびdata)以降の部分には、テキスト編集の指示が含まれます。 - POST 〜へ
generateContent(公式 SDK または REST)。 - 受け取ります レスポンス: APIは生成/編集された画像をBase64文字列としてエンコードして返します。デコードしてローカルに保存してください。
例 - Python (GenAI SDK 経由のインラインバイトを使用した画像間変換)
# pip install google-genai
from google import genai
from google.genai import types
import base64
client = genai.Client(api_key="YOUR_GOOGLE_API_KEY")
# Read local image
with open("input_photo.jpg", "rb") as f:
img_bytes = f.read()
# Using SDK helper to attach bytes as a part
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
types.Part.from_bytes(
data=img_bytes,
mime_type="image/jpeg"
),
"Make a high-quality edit: change the subject's jacket color to teal, keep natural lighting and preserve the person's facial features."
],
)
# The returned image will typically be in response.candidates[].content.parts with base64-encoded data
# Decode and save (pseudo-access shown; check SDK response structure)
b64_out = response.candidates.content.parts.data # example path
with open("edited.jpg","wb") as out:
out.write(base64.b64decode(b64_out))
Python の例: base64 を使用した画像→画像 (レストポイント経由)
import base64, json, requests
API_URL = "https://api.gemini.googleapis.com/v1/generateContent"
API_KEY = "YOUR_GEMINI_KEY"
# read and base64-encode image
with open("input.jpg","rb") as f:
b64 = base64.b64encode(f.read()).decode("utf-8")
payload = {
"model": "gemini-2-5-flash-image-preview",
"input": [
{"mime_type": "image/jpeg", "bytes_base64": b64},
{"mime_type": "text/plain", "text": "Remove the lamppost and make the sky golden at sunset."}
],
"response_modalities":
}
resp = requests.post(API_URL, headers={"Authorization":f"Bearer {API_KEY}", "Content-Type":"application/json"}, json=payload)
resp.raise_for_status()
data = resp.json()
# data.candidates... may contain image base64 — decode and save
out_b64 = data
with open("edited.png","wb") as out:
out.write(base64.b64decode(out_b64))
CometAPI RESTポートを使用してアクセスする場合:
curl
--location
--request POST "https://api.CometAPI.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent" ^
--header "Authorization: sk-" ^
--header "User-Agent: Apifox/1.0.0 (https://apifox.com)" ^
--header "Content-Type: application/json" ^
--header "Accept: */*" ^
--header "Host: api.CometAPI.com" ^
--header "Connection: keep-alive" ^
--data-raw "{ \"contents\": } ], \"generationConfig\": { \"responseModalities\": }}"
インラインの場合:画像を読み取り、Base64エンコードします。繰り返し使用する場合、または20MBを超える場合は、File API経由でアップロードし、ファイルハンドルを参照します。
generateContent入力画像とテキストによる編集指示を必要とする正確な編集やワークフローに最適です。
ナノバナナを扱う上での最高のヒントは何ですか?
迅速なエンジニアリングと制御
- 明示的にする: 希望するアスペクト比、スタイルの参考情報(アーティスト名のみ、許可されている場合)、カメラレンズ、照明、構図を記載してください。例: 「フォトリアリスティック、3:2、浅い被写界深度、ゴールデンアワー、ニコン50mmレンズ。」
- 連続編集を使用する: 大規模な一回限りのプロンプトよりも、複数回のパスで小規模なローカル編集を行うことを好みます。これにより、主題の一貫性が保たれます。Nano Banana の強みは、反復編集にあります。
イメージ衛生
- 入力を前処理します。色空間を正規化し、プライバシーが必要な場合は埋め込まれた EXIF を削除し、トークンを節約するために適切な解像度にスケーリングします。
- 出力を後処理します。顔検出を実行し、軽量フィルター (Pillow / sharp) を使用して小さなアーティファクトをクリーンアップしてから、ユーザーに返します。
安全性、コンプライアンス、コンテンツポリシー
- 画像を保存/提供する前に、自動コンテンツ安全性チェック (Vision モデレーション モデルまたはブラックリスト チェック) を実装します。
- 人物の画像をアップロードする場合は、適用されるプライバシー法 (GDPR/CCPA) に従い、必要な同意を得てください。
- 著作権のあるキャラクターや既存のアートワークを要求する場合は、モデルの使用ポリシーと著作権ルールを尊重してください。
メモを閉じる
ナノバナナ(Gemini 2.5 Flashイメージ)は、マルチモーダル画像生成と編集のための実用的で高忠実度のステップを表しています。編集間の一貫性とより豊かなマルチモーダル推論のために設計されています。ナノバナナ(Gemini 2.5 Flashイメージ)は、画像生成/編集の重要なステップであり、マルチステップ編集と複数の統合サーフェス(CometAPIやGoogleのOpenAI互換ゲートウェイなど)に高い一貫性を提供します。 generateContent API)。導入を迅速化するために、CometAPI などのゲートウェイを使用すると、OpenAI スタイルのコードが再利用できます。常に応答の妥当性チェックを行い、コンテンツ ポリシーと出所機能 (SynthID) を尊重し、反復処理中のコストを監視します。
スタートガイド
CometAPIは、OpenAIのGPTシリーズ、GoogleのGemini、AnthropicのClaude、Midjourney、Sunoなど、主要プロバイダーの500以上のAIモデルを、開発者にとって使いやすい単一のインターフェースに統合する統合APIプラットフォームです。一貫した認証、リクエストフォーマット、レスポンス処理を提供することで、CometAPIはAI機能をアプリケーションに統合することを劇的に簡素化します。チャットボット、画像ジェネレーター、音楽作曲ツール、データドリブン分析パイプラインなど、どのようなアプリケーションを構築する場合でも、CometAPIを利用することで、反復処理を高速化し、コストを抑え、ベンダーに依存しない環境を実現できます。同時に、AIエコシステム全体の最新のブレークスルーを活用できます。
開発者はアクセスできる ジェミニ2.5のフラッシュイメージ(ナノバナナコメットAPIリスト gemini-2.5-flash-image-preview/gemini-2.5-flash-image CometAPIを通じてカタログに表示されている最新のモデルのバージョンは、記事の公開日時点のものです。まずは、モデルの機能について調べてみましょう。 プレイグラウンド そして相談する APIガイド 詳細な手順についてはこちらをご覧ください。アクセスする前に、CometAPIにログインし、APIキーを取得していることを確認してください。 コメットAPI 統合を支援するために、公式価格よりもはるかに低い価格を提供します。



