comfy_nanobanana — ComfyUI 向け Gemini API 連携ツール

AI/ML

概要

Comfy Nano Banana は、Google の Gemini API を ComfyUI と組み合わせて使うための Python ベースの統合ツールです。ユーザーが自分の API キーを用いて Gemini の最新モデル(画像生成用の flash-image-preview など)へ直接リクエストを投げ、画像生成・テキスト生成・マルチモーダルな入出力を扱えるように設計されています。特に ComfyUI のノードとして動作する「動的バッチ画像ユーティリティ」を備え、1~4 枚の画像を同時に生成する並列処理や、画像をコンテキストに含めたテキスト生成が可能です。軽量で導入が容易なため、既存の ComfyUI ワークフローに Gemini を素早く組み込みたい開発者やアーティストに適しています。

GitHub

リポジトリの統計情報

  • スター数: 9
  • フォーク数: 1
  • ウォッチャー数: 9
  • コミット数: 8
  • ファイル数: 9
  • メインの言語: Python

主な特徴

  • Gemini の画像生成(flash-image-preview)とテキスト生成を ComfyUI から直接利用可能
  • 画像を入力コンテキストとして扱えるマルチモーダル対応
  • 動的なバッチ画像ユーティリティノードによる同時生成(並列処理)サポート
  • API キーを用いた直接通信で外部サービスに依存しないシンプルな統合

技術的なポイント

comfy_nanobanana のコアは、ComfyUI のノードとして動作する小さな Python モジュール群と、Google Gemini API への呼び出しロジックです。設計上は「軽さ」と「組み込みやすさ」を重視しており、ComfyUI の既存ワークフローに差し込むだけで Gemini の機能を利用できます。画像生成では Gemini の flash-image-preview モデルを利用することで、高品質なプレビュー生成を目指しており、API 呼び出しの際に生成枚数や解像度などのパラメータを渡して制御します。テキスト生成は画像をコンテキストに含めることでマルチモーダル応答を得られる点が特徴で、たとえば生成した画像を説明文の入力として与え、説明文やキャプションを生成する用途に適します。

バッチ処理周りは実用的な工夫がされており、1〜4 枚の画像を同時に生成するユーティリティノードにより、並列リクエストを扱いつつも過負荷にならないよう設計されています。ComfyUI のノードグラフ内で複数の出力を扱いやすくするための出力整形やエラーハンドリングも備えており、API キーの設定やレスポンスの扱いをシンプルに保つことで、ノード接続だけで機能を利用できます。

セキュリティ面では API キーをユーザー側で管理する前提で、ライブラリはキーを直接使って Gemini エンドポイントへ HTTP/HTTPS リクエストを送る実装が想定されます。依存関係は最小限に抑えられており、ComfyUI 環境に容易に導入できるのが利点です。開発者は README に従って API キーとモデル指定を行うだけで、ComfyUI 上での画像/テキスト作成やマルチモーダルな処理を開始できます。

(上記はリポジトリの説明と README 抜粋に基づく要約であり、実装の詳細や API の呼び出し方法はリポジトリ内のコードとドキュメントを参照してください。)

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • LICENSE: file
  • MANIFEST.in: file
  • README.md: file
  • init.py: file

…他 4 ファイル

まとめ

ComfyUI に Gemini を素早く組み込むための軽量ツール。導入が簡単で実用性が高い。

リポジトリ情報:

READMEの抜粋:

Comfy Nano Banana

Google Gemini API integration for ComfyUI - Generate images and text using Google’s latest AI models, plus a dynamic batch images utility node.

Features

  • 🎨 Image Generation - Create images using Gemini’s flash-image-preview model
  • 📝 Text Generation - Generate text responses with optional image context
  • 🖼️ Multimodal Support - Use images as input context for both text and image generation
  • 🚀 Concurrent Batch Processing - Generate 1-4 images concur…