Nodes/ComfyUI-Nanobanana/ComfyUI-Nanobanana Nano Banana Pro
ComfyUI Node

ComfyUI-Nanobanana Nano Banana Pro

Google's flagship image model as a ComfyUI node

By magicwang1111·Created 5 months ago·Updated 4 months ago· 0
ComfyUI-Nanobanana Nano Banana Pro
  • images
  • image
  • text
  • response_json
prompt
seed42
aspect_ratioauto
response_modeIMAGE+TEXT
system_promptYou are an expert image-generation engine. You must ALWAYS produce an image. Interpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition. If a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept. Prioritize generating the visual representation above any text, formatting, or conversational requests.
model_override
parallel_requests1
resolution1K
thinking_levelhigh

If the base Nano Banana node is Google's cheap-and-cheerful image model and Nano Banana 2 is the speed-quality hybrid, Nano Banana Pro is the flagship - and this node in magicwang1111/ComfyUI-Nanobanana maps it to gemini-3-pro-image-preview. This is the model Google sells on 4K native output (4096×4096), up to 14 reference images, "thinking mode," and strong multi-language text rendering. It's also the priciest box in the Gemini image lineup: roughly $0.039–0.24 per image depending on resolution, from the API pricing sheet.

So when do you actually reach for it? Two cases. First, when you need big, clean output with legible text - the multi-language rendering alone justifies Pro over the Flash models for poster, UI mockup, or product-shot work. Second, when you're doing high-fidelity reference editing: feed it a batch of images (up to 14), and it holds character, style, or product identity across generations far better than the base model's 3-image limit allows. That's the workflow the pack's own example JSON demonstrates.

How it works (and what it won't do)

Mechanically it's the same thin client as its siblings: build a generateContent payload, base64 the reference images, POST to /v1beta/models/gemini-3-pro-image-preview:generateContent, decode the response back into an IMAGE tensor. You get image, text, and response_json outputs - note there's no thought_image output here like Nano Banana 2 has. Pro thinks, but this pack doesn't surface the intermediate images for it; you just get the verdict.

The inputs are the shared set - prompt, seed, aspect_ratio, response_mode (required), plus images, system_prompt, model_override, parallel_requests (optional) - with two Pro-specific knobs:

  • resolution - 1K, 2K, 4K. Default 1K; this is where your per-image bill climbs, so 4K is a "this actually needs to be big" button, not a default.
  • thinking_level - only low or high. No minimal/medium here, unlike Flash; Pro thinks in two gears, and high is the default. Turn it to low when you're iterating and the latency is getting annoying.

The aspect_ratio list is the extended set (up to 8:1 and 1:8), same as Nano Banana 2.

One thing to know before you get excited: the model is aggressively censored. The community's honest summary of the Gemini image stack - "powerful, unimaginative, massive hidden biasing" - applies hardest to Pro, and Google's January 2026 policy update tightened the IMAGE_SAFETY filter and added strict famous-IP/celebrity restrictions. When it refuses, the node raises an error containing what the model said instead of returning an image. That's a Google decision, not a pack bug. If you need unbothered output, this isn't the tool; if you work inside the filters, it's excellent.

Installing and configuring

Same pack, same three lines:

cd ComfyUI/custom_nodes
git clone https://github.com/magicwang1111/ComfyUI-Nanobanana.git
cd ComfyUI-Nanobanana
python -m pip install -r requirements.txt

Restart ComfyUI and the node lives in the ComfyUI-Nanobanana category (ComfyUI Manager search "ComfyUI-Nanobanana" also works). The only config is config.local.json in the pack folder - copy config.example.json, drop in your api_key, and you're done. No model files, no VRAM; dependencies are just httpx, pillow, numpy.

Common issues

  • 401/403 out of the gate - the usual cloud-node trio: key, base_url, and whether billing is actually enabled on the Google project. Gemini credits from other surfaces don't always carry over to the API, a recurring community gotcha.
  • 429 rate limits - Pro is throttled hard and billed per image; retry or raise quota.
  • Relay quirks - with a Gemini-native relay, send_seed: false fixes the generation_config.seed rejection, and model_override handles renamed models. If you use AIHubMix as your base_url, the pack already handles it: Pro's explicit thinkingLevel is stripped automatically because that relay rejects it.
  • Your bill - at high thinking and 4K you're at the top of the price range per image. Batch with parallel_requests only when you know a prompt works.

The Pro node isn't a daily driver for everyone - it's the expensive, opinionated, filters-and-all top shelf. When you need 4K output, many references, or clean text, nothing else in this pack touches it.

CategoryComfyUI-Nanobanana

Inputs (10)

NameTypeDefaultDescription
promptSTRING
seedINT420–18446744073709550000
aspect_ratioCOMBOauto15 options: auto, 1:1, 1:4, 1:8, 2:3, 3:2, +9
response_modeCOMBOIMAGE+TEXT2 options: IMAGE+TEXT, IMAGE
imagesoptIMAGE
system_promptoptSTRINGYou are an expert image-generation engine. You must ALWAYS produce an image. Interpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition. If a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept. Prioritize generating the visual representation above any text, formatting, or conversational requests.
model_overrideoptSTRING
parallel_requestsoptINT11–8
resolutionoptCOMBO1K3 options: 1K, 2K, 4K
thinking_leveloptCOMBOhigh2 options: low, high

Outputs (3)

NameTypeDescription
imageIMAGE
textSTRING
response_jsonSTRING