WaveSpeedAI Google Nano Banana Pro Edit Multi
Nano Banana Pro edits that draw on up to six reference images
- client
- output_images
Nano Banana Pro is the bigger, meaner sibling of the model everyone fell for in late 2025, and this node points it at a whole pile of images at once. While the plain Nano Banana Edit takes one main image, the Pro Edit Multi node takes a primary image plus up to five optional references - and edits across all of them. Same sentence-based editing, but now the model can hold your subject, your style reference, and your target all in one pass.
From razvanmatei-sf/razv-wavespeed, so the ground rules are unchanged: it's a paid WaveSpeed AI API call, it needs the pack's WaveSpeedAI Client node, and your images arrive as URL strings.
The output is a fixed pair of edited images (output_images, a batch tensor of size 2). num_images is locked at 2 with min and max both set to 2 - you don't get to choose, the API returns two variants. That's either a feature (two shots of the same edit to pick from) or a billable surprise (it's two generations), depending on your mood.
How it works
image_1 is the primary edit target; image_2 through image_6 are optional references the model can draw from. Your prompt describes the edit, the node POSTs to the Nano Banana Pro edit endpoint, and the two results come back as a single batched IMAGE tensor. Wire that into a batch-aware preview/save node and you'll see both variants.
- aspect_ratio - one of
3:2,2:3,3:4,4:3. Defaults to 3:2, so portrait edits need an explicit2:3or3:4. - output_format - png or jpeg. Same rule as its sibling: png keeps transparency, jpeg doesn't.
- enable_sync_mode - defaults on.
The inputs that matter
- image_1 - the image being edited. Required.
- prompt - the instruction. With multiple references, be explicit about which image is what: "keep the character from image_1, the lighting from image_2…"
- image_2…image_6 - optional references. The whole point of this node; leaving them empty makes it a fancier single-image edit.
- aspect_ratio - get this right first, or your edit comes back cropped to the wrong shape.
Install
Shared pack:
cd ComfyUI/custom_nodes
git clone https://github.com/razvanmatei-sf/razv-wavespeed
# restart ComfyUI
Or ComfyUI Manager → search "razv-wavespeed" → Install. Add a WaveSpeed AI key via the WaveSpeedAI Client node, config.ini (copy from config.ini.tmp, [API] section), or a WAVESPEED_API_KEY env var.
Common issues
- Two images out, every time. If you expected one result, the second variant is still billed. Read the node before you budget.
- URL inputs only. No upload node in the current build - paste publicly reachable URLs.
- Reference confusion. With six images in play, an ambiguous prompt produces an edit that's a blend of everything. Name your references in the prompt.
- Aspect ratio is fixed after the fact. You can't crop your way out of a 3:2 default you didn't mean to use.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| client | WAVESPEED_AI_API_CLIENT | — | |
| prompt | STRING | Text description of the edit to perform | |
| image_1 | STRING | Primary input image URL (connect from Upload Image node) | |
| aspect_ratio | COMBO | 3:2 | Aspect ratio of the output images |
| num_images | INT | 22–2 | Number of edited images to generate (fixed at 2) |
| output_format | COMBO | png | Output format - use PNG for transparency support |
| enable_sync_mode | BOOLEAN | true | Wait for generation to complete before returning |
| image_2opt | STRING | Second input image URL (optional) | |
| image_3opt | STRING | Third input image URL (optional) | |
| image_4opt | STRING | Fourth input image URL (optional) | |
| image_5opt | STRING | Fifth input image URL (optional) | |
| image_6opt | STRING | Sixth input image URL (optional) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| output_images | IMAGE | — |