Nano Banana 2 · Image Editing
Fourteen reference images, and it can search the web mid-render
- image_urls
- images
- task id
Fourteen source images. That's the headline, and it's not a typo - this node hands Nano Banana 2 a crowd of references and one instruction, and returns an edited frame at anywhere from 0.5k to 4k. From about $0.036 an image.
Nano Banana 2 is Google's Gemini 3.1 Flash image model, the speed-and-quality compromise between the original Nano Banana and the Pro flagship. When it dropped in February 2026 the community reaction was mostly "this is really fast", which is what you'd expect from a Flash branded image model, and also the reason people use it for iteration rather than for the last render of the day.
Two toggles make it interesting beyond the reference count: enable_web_search and enable_image_search. Turn them on and the model looks things up before it draws - current facts, current logos, reference photos of whatever your prompt names. That's the trick Seedream 5.0's preview got attention for: grounding a render in what the world currently looks like rather than what the model remembers.
What the node does
Standard for this pack and worth restating plainly: your images are encoded and uploaded (PNG, or JPEG if a PNG would breach the 10 MiB upload cap), a quote is taken, the job is submitted to SpicyAPI, and the result comes back as an ordinary ComfyUI IMAGE. No weights on your disk, no VRAM, no GPU. It is an HTTP call with a progress bar, and on a laptop that's the difference between doing the work and not.
The inputs
prompt- the tooltip is the useful part: say what to change and what must stay the same. Editing models fail most often because the instruction only covered half of that pair.image_urls- one to fourteen sources, as growing sockets, and in the order your prompt refers to them. That ordering is your only labelling mechanism, so write the prompt to match.aspect_ratio-autokeeps the shape of the source image, which is what you want unless you're delivering a format.resolution-0.5kthrough4k, default1k, the "output size tier". Higher tiers cost more on this model, unlike the Seedream tiers, so check the badge before running big.enable_web_search- off by default; look up current facts before drawing.enable_image_search- off by default; look up reference pictures before drawing.
Outputs: images, plus task id, a STRING identifying the request for the logs or support.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi
Restart ComfyUI. Open Settings > SpicyAPI, paste a key from spicyapi.ai/console/keys, restart once more so the node list is built from your account. Servers without a UI: SPICY_API_KEY in the environment - never in the workflow, so shared graphs and shared PNGs don't carry it. ComfyUI Manager: search SpicyAPI. Nothing else installs.
Money, and what this node is not
About $0.036 per image at the low end, and this is the priciest model family in the pack's image list once you climb the resolution tiers - which makes Settings > SpicyAPI > Max cost per run genuinely important rather than decorative. The 14-reference combos raise the quote too, as you'd expect.
One caution that applies to the whole family: it's a closed Google model behind a hosted endpoint. Its filter is Google's, upstream of SpicyAPI, and no node setting changes it. r/StableDiffusion's habit of telling closed-model posts to go elsewhere is a fair signal about who this is for - if you need the output, here's the door; if you need control, no API node will give you any. Also expect the search toggles to be slower, and to leave your prompt on someone else's server either way.
Troubleshooting
No SpicyAPI key is set - the key isn't configured. 40310 - verify your account email. 40004 - no deployment serves that option combination; change what the message names, nothing charged. request_id ... errors are for support, with the id intact. New models need a ComfyUI restart to appear. And remember that a cancelled run continues server-side, billed if it succeeds.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Say what to change and what must stay the same. | |
| image_urls | COMFY_AUTOGROW_V3 | One to 14 source images, in the order your prompt refers to them. | |
| aspect_ratio | COMBO | auto | Output aspect ratio; auto keeps the shape of the source image. |
| resolution | COMBO | 1k | Output size tier. |
| enable_web_search | BOOLEAN | false | Look up current facts on the web before drawing. |
| enable_image_search | BOOLEAN | false | Look up reference pictures on the web before drawing. |
| seed | INT | 00–2147483647 | This model takes no seed, so the number is never sent. Changing it makes ComfyUI run the node again: set 'control after generate' to randomize for a new result on every run; every run is billed. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| task id | STRING | The SpicyAPI task id, for the console logs or support. |