Spaces:
Running
Running
A newer version of the Gradio SDK is available:
6.6.0
metadata
title: NanoBanana V9 - Gemini画像生成
emoji: 🍌
colorFrom: yellow
colorTo: red
sdk: gradio
sdk_version: 5.49.1
app_file: app.py
pinned: false
license: mit
🍌 NanoBanana - Gemini画像生成 (Version 9)
Google Gemini AIを使用したテキストから画像を生成するアプリケーション(Gradio 5 + 新Google Gen AI SDK対応)
✨ V9の主な変更点
- ✅ Gradio 5.49.1にアップグレード(パフォーマンス改善、SSR対応)
- ✅ 新Google Gen AI SDK (
google-genai) に移行 - ✅ FastAPI削除 - Gradio純正API機能を使用
- ✅ 依存パッケージ30%削減(10個→7個)
- ✅ HF Spacesで最適化
🚀 クイックスタート
1. インストール
pip install -r requirements.txt
2. APIキーの設定
Google AI Studioで無料APIキーを取得
3. 起動
python app.py
ブラウザで http://localhost:7860 を開く
📡 API使用方法
エンドポイント
GET /api/health
ヘルスチェック
curl http://localhost:7860/api/health
レスポンス例:
{
"status": "healthy",
"timestamp": "2025-11-24T12:00:00.000Z",
"version": "9.0.0",
"available_models": {...}
}
GET /api/models
利用可能なモデルのリスト
curl http://localhost:7860/api/models
レスポンス例:
{
"models": {
"gemini-2.5-flash-image": {...},
"gemini-3-pro-image-preview": {...}
}
}
POST /api/generate
画像生成
cURLの例:
curl -X POST http://localhost:7860/api/generate \
-H "Content-Type: application/json" \
-d '{
"data": [
"富士山と桜、フォトリアリスティック、4K画質",
"YOUR_GEMINI_API_KEY",
"gemini-2.5-flash-image",
"1024x1024",
"Photorealistic",
true,
"",
"my-image",
false
]
}'
Pythonの例:
from gradio_client import Client
client = Client("http://localhost:7860")
result = client.predict(
prompt="富士山と桜、フォトリアリスティック、4K画質",
gemini_api_key="YOUR_API_KEY",
model="gemini-2.5-flash-image",
size="1024x1024",
style="Photorealistic",
save_to_dataset=False,
dataset_folder="",
custom_filename="my-image",
return_image_data=False,
api_name="/generate"
)
print(result)
レスポンス例:
{
"data": [{
"success": true,
"filename": "my-image.png",
"local_path": "/file=generated_images/my-image.png",
"prompt": "富士山と桜、フォトリアリスティック、4K画質",
"size": "1024x1024",
"style": "Photorealistic",
"model": "gemini-2.5-flash-image",
"dataset_url": "https://huggingface.co/datasets/..."
}]
}
📦 依存関係
gradio==5.49.1
google-genai>=1.52.0
pillow>=10.0.0
numpy>=1.24.0
python-dotenv>=1.0.0
huggingface_hub>=0.27.0
datasets>=2.14.0
🏗️ アーキテクチャ
V9 (Gradio 5 + google-genai)
├── Gradio Blocks UI
├── Gradio Native API (/api/*)
└── Google Gen AI SDK (Client-based)
V8からの主な変更:
- FastAPI層を削除 → Gradio純正APIに統合
- google-generativeai → google-genai SDK
- uvicorn削除 → Gradio単体で起動
🔧 環境変数(オプション)
Dataset保存機能を使用する場合のみ設定してください。
.env.exampleを.envにコピーして設定:
# Hugging Face Dataset(オプション)
HF_TOKEN=your_hf_token_here
DATASET_REPO_ID=your_username/your_dataset_name
📝 V8からの移行ガイド
APIエンドポイントの変更
| V8 (FastAPI) | V9 (Gradio API) | 変更内容 |
|---|---|---|
POST /api/generate/url?param=value |
POST /api/generate + JSON body |
リクエスト形式変更 |
POST /api/generate/full |
POST /api/generate + return_image_data=true |
パラメータ化 |
GET /api/health |
GET /api/health |
互換性あり |
GET /api/models |
GET /api/models |
互換性あり |
リクエストフォーマットの変更
V8 (FastAPI + クエリパラメータ):
curl -X POST "http://localhost:7860/api/generate/url?prompt=富士山&gemini_api_key=...&model=gemini-2.5-flash-image&size=1024x1024&style=Photorealistic"
V9 (Gradio API + JSONボディ):
curl -X POST http://localhost:7860/api/generate \
-H "Content-Type: application/json" \
-d '{"data": ["富士山", "...", "gemini-2.5-flash-image", "1024x1024", "Photorealistic", true, "", "", false]}'
パラメータの順序(V9)
/api/generateエンドポイントのdata配列の順序:
prompt(string) - 画像生成プロンプトgemini_api_key(string) - Gemini APIキーmodel(string) - モデル名(デフォルト: "gemini-2.5-flash-image")size(string) - サイズ(デフォルト: "1024x1024")style(string) - スタイル(デフォルト: "Default")save_to_dataset(boolean) - Dataset保存(デフォルト: true)dataset_folder(string) - Datasetフォルダ名(デフォルト: "")custom_filename(string) - カスタムファイル名(デフォルト: "")return_image_data(boolean) - base64データ返却(デフォルト: false)
🚢 HF Spacesへのデプロイ
- リポジトリを作成
README.mdのYAMLヘッダーを確認: ```yamltitle: NanoBanana V9 emoji: 🍌 colorFrom: yellow colorTo: orange sdk: gradio sdk_version: 5.49.1 app_file: app.py pinned: false
- コードをpush
- HF Spacesの設定でSecretsを追加(オプション):
HF_TOKEN: Hugging Faceトークン(Dataset保存用)DATASET_REPO_ID: データセットリポジトリID
🎨 利用可能なモデル
gemini-2.5-flash-image(推奨)
- 高速・低コスト($0.039/画像)
- 10種類のアスペクト比対応
- 一般用途に最適
gemini-3-pro-image-preview
- 高品質・2K/4K解像度対応
- プロフェッショナル用途向け
🎭 利用可能なスタイル
- Photorealistic(写真風)
- Artistic(芸術的)
- Anime(アニメ風)
- 3D Render(3Dレンダリング)
- Watercolor(水彩画)
- Oil Painting(油絵)
- Digital Art(デジタルアート)
- Sketch(スケッチ)
- Studio Photo(スタジオ写真)
- Minimalist(ミニマリスト)
📏 利用可能なサイズ
- 512x512
- 768x768
- 1024x1024(推奨)
- 1024x768
- 768x1024
- 1536x1536
- 2048x2048(gemini-3-pro-image-previewのみ)
🔍 トラブルシューティング
エラー: "google-genai not found"
pip install google-genai>=1.52.0
エラー: "API key required"
Gemini APIキーが正しく入力されているか確認してください。
画像が生成されない
- Gemini APIキーが有効か確認
- インターネット接続を確認
- モデル名が正しいか確認
📄 ライセンス
MIT License
🙏 謝辞
- Google Gemini AI
- Gradio 5
- Hugging Face
Version: 9.0.0 最終更新: 2025-11-24 開発: Claude Code + tomo2chin2