Comfly_nano_banana2_edit
Fourteen References and Real Size Control
- image1
- image2
- image3
- image4
- image5
- image6
- image7
- image8
- image9
- image10
- image11
- image12
- image13
- image14
- image
- response
- image_url
This is the heavyweight of the Nano Banana family in this pack - the node that takes the newest generation of Google's image model and exposes every control that exists: a 15-way aspect-ratio menu, an explicit 1K/2K/4K output size, fourteen image-reference inputs, and a text2img/img2img mode switch. If ComflyNanoBanana is the everyday tool, this is the one you reach for when you need a specific canvas and a lot of visual context.
It's also the node where the model lineup moved fastest - the README's changelog shows nano-banana-2 arriving, then the -2k/-4k variants, then gemini-3.1-flash-image-preview - so if you're on an older install, update the pack or you won't see the current model list.
How it works
Prompt, mode, and up to fourteen reference images go to the chosen Gemini-image model via the proxy. Output comes back as an IMAGE tensor, the hosted image_url, and a raw response. You can ask for the image as url or as b64_json via response_format, and there's a webhook if you want the job to call you instead of the node sitting and polling.
The inputs that matter
- prompt - the instruction. Same "describe how the references combine" advice as its sibling, just with more references available.
- mode -
text2img(default) orimg2img. img2img means the first reference is treated as the base image to edit. - model -
nano-banana-2(default),nano-banana-2-2k,nano-banana-2-4k, andgemini-3.1-flash-image-preview. Important quirk, straight from the README: when you pick the-2k/-4kmodel names, theimage_sizeparameter stops working - the resolution is baked into the model name. Choose one or the other. - aspect_ratio - fifteen choices including
auto(default), all the way from16:9to1:4. This is real canvas control. - image_size -
1K/2K/4K, default2K. Billing likely scales with size (and the README notes prices "may be adjusted"), so 2K is the sensible middle. - image1–image14 - the reference pool. You will rarely need all fourteen; a subject + style + scene is the classic trio.
- response_format -
url(default) orb64_json. - seed / webhook - lock a take / get pinged on completion.
Outputs: image (IMAGE), response (STRING), image_url (STRING).
Install
Manager → Comfyui_Comfly, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ainewsto/Comfyui_Comfly
Restart. Standard requirements.txt, no downloads. Key from ai.comfly.chat in Comflyapi.json or the node's apikey.
Where people get burned
The image_size vs. model-name conflict is the trap: pick nano-banana-2-4k and also set image_size to 1K, and you'll wonder why you got a 4K image anyway - the model name wins. Second, mode matters: in img2img the size controls generally don't apply the way they do in text2img (the output follows the source image), so if your canvas looks wrong, check the mode before the resolution. And fourteen reference inputs is a foot-gun - more references is more tokens, more billing, and more chances for the model to compromise between conflicting inputs. Feed three good ones, not fourteen mediocre ones.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| mode | COMBO | text2img | 2 options: text2img, img2img |
| model | COMBO | nano-banana-pro | 4 options: gemini-3.1-flash-image-preview, nano-banana-pro, nano-banana-pro-2k, nano-banana-pro-4k |
| aspect_ratio | COMBO | auto | 15 options: auto, 16:9, 4:3, 4:5, 3:2, 1:1, +9 |
| image_size | COMBO | 2K | 3 options: 1K, 2K, 4K |
| image1opt | IMAGE | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — | |
| image4opt | IMAGE | — | |
| image5opt | IMAGE | — | |
| image6opt | IMAGE | — | |
| image7opt | IMAGE | — | |
| image8opt | IMAGE | — | |
| image9opt | IMAGE | — | |
| image10opt | IMAGE | — | |
| image11opt | IMAGE | — | |
| image12opt | IMAGE | — | |
| image13opt | IMAGE | — | |
| image14opt | IMAGE | — | |
| apikeyopt | STRING | — | |
| response_formatopt | COMBO | url | 2 options: url, b64_json |
| seedopt | INT | 00–2147483647 | — |
| webhookopt | STRING | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| response | STRING | — |
| image_url | STRING | — |