Nodes/ComfyUI-nkxx/🍌 Grsai Nano Banana
ComfyUI Node

🍌 Grsai Nano Banana

Google's image model on the Grsai channel, 14 reference images and all

By nkxx188·Created 11 months ago·Updated 6 months ago· 14
🍌 Grsai Nano Banana
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • image_7
  • image_8
  • image_9
  • image_10
  • image_11
  • image_12
  • image_13
  • image_14
  • image
  • status
prompt一只可爱的小猫
modelnano-banana-pro
concurrency1
aspect_ratioauto
image_size默认
api_key

Nano Banana is Google's closed image line - Gemini 2.5 Flash Image as "Nano Banana 1", Gemini 3 Pro Image as "Nano Banana Pro", Gemini 3.1 Flash as "Nano Banana 2". You cannot download any of them; the only door is an API, and this node is that door on the Grsai channel (nkxx.grsai.ai for a key, grsai.dakka.com.cn under the hood). It's the flagship node of the pack: prompt plus up to fourteen reference images in, a batch of IMAGE out. No GPU, no checkpoint, no VRAM - your local machine just phones home and gets pixels back.

The "14 reference images" is the headline because that's the Nano Banana Pro signature move - character consistency, style lock, product-from-sketch, all by stacking references. The Grsai channel passes those through to Google's model, and the pack's real job is handling uploads, concurrency, and credit reporting so you don't have to.

The inputs that matter

  • prompt (multiline) - what you want. Chinese works; the model is multilingual.
  • model - nano-banana-fast, nano-banana-pro (default), nano-banana-pro-vt, nano-banana-pro-cl, nano-banana-2, nano-banana-2-cl. "fast" is the cheap draft, pro/2 are the quality flagships.
  • concurrency (1–10, default 1) - how many parallel generations. Each concurrent slot is a separate billed render.
  • aspect_ratio - auto plus the usual 1:121:9 set.
  • image_size - 默认 / 1K / 2K / 4K. The pack maps 默认 to 2K for pro/2 models, 1K for fast. 4K is the Pro/2 flagship feature.
  • api_key (optional) - falls back to GRSAI_KEY or the ApiKeyManager.
  • image_1image_14 (optional IMAGE) - reference images. Wire in a DynamicImageList output and you get exactly as many sockets as you need.

Outputs: image (IMAGE batch) and status (STRING - including a credit-balance readout, which is how the pack reminds you this is metered).

How it works under the hood

The source is readable on the Grsai side. It uploads your reference images to the channel, POSTs to /v1/draw/nano-banana with your model/prompt/ratio, then downloads the returned image URLs with a thread pool. The status string includes a credits check against the channel's /client/common/getCredits endpoint. Everything is synchronous in-graph: run the node, wait for the render, get the image.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/jieg9341-lab/ComfyUI-nkxx

restart (or ComfyUI Manager, search "ComfyUI-nkxx"). First launch auto-installs requests, pandas, openpyxl, yt-dlp, opencv-python, aiohttp. Get a Grsai key at nkxx.grsai.ai.

Common issues

  • "未配置 Grsai API Key": no key anywhere - node field, GRSAI_KEY, or pack config.
  • All images fail: check the status errors. Credit balance hitting zero is the classic cause; the node reports 积分 (credits) right in the status line.
  • Cost creep: concurrency × 4K × references multiplies the bill per run. Draft at fast/1K, then render final at Pro/4K.
  • Filtering: Nano Banana is Google's model - it refuses whatever Google refuses, and no node setting changes that. That's the closed-model tradeoff, not a bug.
CategoryNkxx/Grsai/图像

Inputs (20)

NameTypeDefaultDescription
promptSTRING一只可爱的小猫
modelCOMBOnano-banana-pro6 options: nano-banana-fast, nano-banana-pro, nano-banana-pro-vt, nano-banana-pro-cl, nano-banana-2, nano-banana-2-cl
concurrencyINT11–10
aspect_ratioCOMBOauto11 options: auto, 1:1, 16:9, 9:16, 4:3, 3:4, +5
image_sizeCOMBO默认4 options: 默认, 1K, 2K, 4K
api_keyoptSTRING
image_1optIMAGE
image_2optIMAGE
image_3optIMAGE
image_4optIMAGE
image_5optIMAGE
image_6optIMAGE
image_7optIMAGE
image_8optIMAGE
image_9optIMAGE
image_10optIMAGE
image_11optIMAGE
image_12optIMAGE
image_13optIMAGE
image_14optIMAGE

Outputs (2)

NameTypeDescription
imageIMAGE
statusSTRING