Nodes/ComfyUI Assistant Node/PVL Google NanoBanana PRO Multi API
ComfyUI Node

PVL Google NanoBanana PRO Multi API

The flagship, multi-image, with Google Search even

By pvlprk·Created about a year ago·Updated 8 months ago· 1
PVL Google NanoBanana PRO Multi API
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • image_7
  • image_8
  • text
  • images
prompt
seed0
modelgemini-3-pro-image-preview
resolution1K
output_formatpng
num_images1
retries3
timeout_sec120
debug_logfalse
capture_text_outputfalse
use_google_searchfalse
use_fal_fallbacktrue
force_falfalse
delimiter[++]
sync_modefalse
aspect_ratio1:1
endpoint_override
api_key
fal_api_key
fal_route_img2imgfal-ai/nano-banana-pro/edit
fal_route_txt2imgfal-ai/nano-banana-pro
request_id

This is the top of the Nano Banana food chain. Where the rest of this pack's Google nodes run Gemini 2.5 Flash Image, this one runs Gemini 3 Pro Image - the model Google markets as Nano Banana Pro: 4K native output, up to 14 reference images (this node exposes eight), and "thinking" before generation. It's the flagship, it's the priciest, and if you're chasing the best closed-model output available through an API, this is where you go.

The pack's signature resilience carries over: use_fal_fallback defaults on, routing to fal's nano-banana-pro / nano-banana-pro/edit routes when Google stumbles, with force_fal to skip Google entirely. There's also use_google_search - a toggle that grounds the image generation with live web search results, which is a genuinely unusual feature and a sign of how far the API has come. It's useful for "generate an image of [current event] in this style" type prompts, at the cost of latency and, presumably, your patience.

How it works

Same architecture as the rest of the family: connected reference images (up to eight) plus your prompt go to the Gemini 3 Pro Image model; [++]-delimited prompts split into parallel generations; resolution (default 1K) selects output scale; fal fallback catches failures. The text output captures the model's response when capture_text_output is on.

The inputs that matter

  • prompt - the generation brief.
  • model - default gemini-3-pro-image-preview.
  • resolution - 1K by default; 2K/4K are where this model's edge lives (4K is the flagship spec), and they cost more.
  • image_1image_8 - reference images for multi-image control.
  • num_images - up to 16 per run, the most of any node in this pack.
  • use_google_search - off by default; flip on for fact-grounded or current-scene generation.
  • aspect_ratio - default 1:1.
  • use_fal_fallback, force_fal, fal_api_key, fal_route_txt2img (fal-ai/nano-banana-pro), fal_route_img2img (fal-ai/nano-banana-pro/edit).
  • api_key, capture_text_output, seed, output_format, retries, timeout_sec, debug_log, delimiter, sync_mode, endpoint_override, request_id.

Outputs: text (STRING) and images (IMAGE).

Installing it

Standard pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/pvlprk/comfyui-pvl-api-nodes

Restart, export GEMINI_API_KEY and FAL_KEY, or fill the fields. No downloads.

Common issues

Let's be straight about cost: this is the most expensive node in the pack to run, and the KB's pricing picture puts Nano Banana Pro anywhere from $0.039 to $0.24 per image depending on resolution. At 4K with num_images at 16, one execution can be a real line item. Treat it as a quality ceiling you visit deliberately, not a default. Second, use_google_search is off by default for a reason - it adds latency and its output is only as good as the search results; leave it off until you have a prompt that clearly needs it. Third, the thinking-mode behavior means responses are slower than Flash Image even when it works, so don't diagnose "the node is stuck" - wait. And the filtering is the same family policy: celebrity/IP and sensitive-content prompts get blocked, which is exactly when the fal fallback engages (and bills you).

CategoryPVL/API

Inputs (30)

NameTypeDefaultDescription
promptSTRING
seedINT00–18446744073709550000
modelSTRINGgemini-3-pro-image-preview
resolutionSTRING1K
output_formatCOMBOpng2 options: png, jpeg
num_imagesINT11–16
retriesINT30–10
timeout_secINT1205–600
debug_logBOOLEANfalse
capture_text_outputBOOLEANfalse
use_google_searchBOOLEANfalse
use_fal_fallbackBOOLEANtrue
force_falBOOLEANfalse
delimiterSTRING[++]
sync_modeBOOLEANfalse
image_1optIMAGE
image_2optIMAGE
image_3optIMAGE
image_4optIMAGE
image_5optIMAGE
image_6optIMAGE
image_7optIMAGE
image_8optIMAGE
aspect_ratiooptSTRING1:1
endpoint_overrideoptSTRING
api_keyoptSTRING
fal_api_keyoptSTRING
fal_route_img2imgoptSTRINGfal-ai/nano-banana-pro/edit
fal_route_txt2imgoptSTRINGfal-ai/nano-banana-pro
request_idoptSTRING

Outputs (2)

NameTypeDescription
textSTRING
imagesIMAGE