Nodes/comfyui-google-genmedia-custom-nodes/Gemini 2.5 Flash Image (🍌)
ComfyUI Node

Gemini 2.5 Flash Image (🍌)

The original Nano Banana, wired into ComfyUI

By GoogleCloudPlatformΒ·Created 9 months agoΒ·Updated about a month agoΒ· 47
Gemini 2.5 Flash Image (🍌)
  • image1
  • image2
  • image3
  • Generated Image
β—„modelGEMINI_25_FLASH_IMAGEβ–Ί
β—„promptA vivid landscape painting of a futuristic cityβ–Ί
β—„aspect_ratio16:9β–Ί
β—„temperature0.70β–Ί
β—„top_p1.00β–Ί
β—„top_k32β–Ί
β—„harassment_thresholdBLOCK_MEDIUM_AND_ABOVEβ–Ί
β—„hate_speech_thresholdBLOCK_MEDIUM_AND_ABOVEβ–Ί
β—„sexually_explicit_thresholdBLOCK_MEDIUM_AND_ABOVEβ–Ί
β—„dangerous_content_thresholdBLOCK_MEDIUM_AND_ABOVEβ–Ί
β—„system_instructionβ–Ί
β—„gcp_project_idβ–Ί
β—„gcp_regionglobalβ–Ί

Nano Banana started as an anonymous codename on a HuggingFace leaderboard, became a banana emoji meme, and ended up as Google's official branding for Gemini 2.5 Flash Image. This node is that model in graph form. It's the model that made the "ComfyUI is dead" takes surface for five minutes before everyone remembered the API can't touch a local checkpoint - and then they asked for a node like this. So here it is.

What it does

Call gemini-2.5-flash-image on Vertex AI with a prompt and zero to three reference images, get a generated image back as a standard ComfyUI IMAGE tensor. Fast, cheap-ish, and surprisingly good at prompt adherence and text-in-image - the things that first put Nano Banana on the map. Because it returns tensors, you can chain it into your existing graph: upscale the output, img2img it, feed it into Veo as a starting frame.

Inputs and output

Output is Generated Image (IMAGE). Inputs worth touching:

  • prompt - the description. The default is the landscape painting placeholder.
  • image1, image2, image3 - optional reference images for editing. This is the "edit what I show you" mode: give it a photo and an instruction.
  • aspect_ratio - ten choices from 1:1 to 21:9. Note this generation of the model lacks the extreme 1:8 / 8:1 ratios that the 3.1 Flash node gained.
  • temperature / top_p / top_k - the usual knobs; defaults are sensible.
  • system_instruction - optional hidden guidance for consistent output.
  • Four safety-threshold dropdowns (medium-and-above default), plus gcp_project_id and gcp_region (region defaults to global).

Installing it

It lives in the Google GenMedia pack like everything else here:

cd ComfyUI/custom_nodes
git clone https://github.com/GoogleCloudPlatform/comfyui-google-genmedia-custom-nodes
pip install -r comfyui-google-genmedia-custom-nodes/requirements.txt

Or ComfyUI Manager β†’ search comfyui-google-genmedia-custom-nodes β†’ Install. Restart and it's under Google AI/GeminiFlashImage. No models to download - the requirements are Google SDKs. Authenticate with gcloud auth application-default login and set your project/region on the node; every image is a billed Vertex AI call.

The honest take

By now this node is the previous generation - Google has shipped Nano Banana 2 (Gemini 3.1 Flash Image) and Nano Banana Pro (Gemini 3 Pro Image), both in this same pack, and both expose more reference slots and more output sizes. So why would you pick this one? If you want the classic, well-tested behavior, or you're budgeting and the older model's pricing works better for you, it's still perfectly serviceable. Just know the newer siblings exist before you build your whole workflow on the original. All three share the same caveats: paid API, Google's aggressive safety filters, and an invisible SynthID watermark on the output.

CategoryGoogle AI/GeminiFlashImage

Inputs (16)

NameTypeDefaultDescription
modelCOMBOGEMINI_25_FLASH_IMAGE1 options: GEMINI_25_FLASH_IMAGE
promptSTRINGA vivid landscape painting of a futuristic cityβ€”
aspect_ratioCOMBO16:910 options: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, +4
temperatureFLOAT0.700–1β€”
top_pFLOAT1.000–1β€”
top_kINT321–64β€”
image1optIMAGEβ€”
image2optIMAGEβ€”
image3optIMAGEβ€”
harassment_thresholdoptCOMBOBLOCK_MEDIUM_AND_ABOVE4 options: BLOCK_NONE, BLOCK_ONLY_HIGH, BLOCK_MEDIUM_AND_ABOVE, BLOCK_LOW_AND_ABOVE
hate_speech_thresholdoptCOMBOBLOCK_MEDIUM_AND_ABOVE4 options: BLOCK_NONE, BLOCK_ONLY_HIGH, BLOCK_MEDIUM_AND_ABOVE, BLOCK_LOW_AND_ABOVE
sexually_explicit_thresholdoptCOMBOBLOCK_MEDIUM_AND_ABOVE4 options: BLOCK_NONE, BLOCK_ONLY_HIGH, BLOCK_MEDIUM_AND_ABOVE, BLOCK_LOW_AND_ABOVE
dangerous_content_thresholdoptCOMBOBLOCK_MEDIUM_AND_ABOVE4 options: BLOCK_NONE, BLOCK_ONLY_HIGH, BLOCK_MEDIUM_AND_ABOVE, BLOCK_LOW_AND_ABOVE
system_instructionoptSTRINGβ€”
gcp_project_idoptSTRINGGCP project id where Vertex AI API will query Gemini
gcp_regionoptSTRINGglobalGCP region for Vertex AI API

Outputs (1)

NameTypeDescription
Generated ImageIMAGEβ€”