FL Fal Gemini Image Edit
Google's Nano Banana editor, through Fal.ai
- image_1
- image_2
- image_3
- image_4
- image_5
- image_6
- image_7
- image_8
- image_9
- image_10
- images
- image_urls
- description
- status_msg
This is Google's "Nano Banana" model - Gemini 2.5 Flash Image, Google's rebrand-that-stuck of Gemini-native image editing - reached through Fal.ai's hosted API instead of Google's own Vertex AI stack. If you want Gemini-quality multi-image edits (compositing several references into one output, following a natural-language instruction) without setting up service-account auth, this is the easier door in.
The mechanism
Fal.ai is a GPU-cloud and inference company that hosts a marketplace of other labs' models behind one API surface - it's the same outfit that funded and hosts AuraFlow, and runs the only working API access to IC-Light V2. This node is a thin wrapper: it ships your prompt and up to ten optional reference images to Fal's Gemini 2.5 Flash Image Edit endpoint and gets edited images back, all processed asynchronously on Fal's side.
Inputs and outputs that matter
api_key is your own Fal.ai key - this isn't bundled or free, you sign up at fal.ai and pay per generation. prompt describes the edit or composite you want. image_1 through image_10 are all optional IMAGE inputs - leave them empty for pure text-to-image, fill in one or more for edit/composite mode. num_images (1-4) sets how many results come back per call, aspect_ratio gives you eleven presets from auto through the usual portrait/landscape ratios, resolution is 1K/2K/4K (4K costs more and takes longer), and output_format is png/jpeg/webp. max_retries (1-5) handles transient API failures automatically. enable_web_search is a genuinely unusual option here: it lets the underlying Gemini call ground itself against live web search results while composing the edit, useful if your prompt references something the model needs current information about.
Outputs: images (the batch), image_urls (the hosted URLs Fal returns, handy if you want to reference the result elsewhere without re-uploading), description (Gemini's own text description of what it generated), and status_msg for surfacing API errors without the whole run failing silently.
Installing it
ComfyUI Manager: search Fill-Nodes, install, restart. Manually: cd ComfyUI/custom_nodes && git clone https://github.com/filliptm/ComfyUI_Fill-Nodes, then restart.
Where people get burned
No api_key means an immediate hard failure - there's no environment-variable fallback here, it's a required on-node field. Paste your Fal key directly into the widget, and if you're sharing workflow JSON files, remember a saved workflow with the key typed into the node ships the key along with it.
Because this runs through a metered third party, num_images and resolution both scale your bill directly - keep them low while iterating on a prompt, and only push to 4 images at 4K once you know what you actually want.
Inputs (20)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — | |
| prompt | STRING | make a photo of the man driving the car down the california coastline | — |
| num_images | INT | 11–4 | — |
| aspect_ratio | COMBO | auto | 11 options: auto, 21:9, 16:9, 3:2, 4:3, 5:4, +5 |
| resolution | COMBO | 1K | 3 options: 1K, 2K, 4K |
| output_format | COMBO | png | 3 options: jpeg, png, webp |
| sync_mode | BOOLEAN | false | — |
| seed | INT | 00–666666 | — |
| max_retries | INT | 31–5 | — |
| image_1opt | IMAGE | — | |
| image_2opt | IMAGE | — | |
| image_3opt | IMAGE | — | |
| image_4opt | IMAGE | — | |
| image_5opt | IMAGE | — | |
| image_6opt | IMAGE | — | |
| image_7opt | IMAGE | — | |
| image_8opt | IMAGE | — | |
| image_9opt | IMAGE | — | |
| image_10opt | IMAGE | — | |
| enable_web_searchopt | BOOLEAN | false | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| image_urls | STRING | — |
| description | STRING | — |
| status_msg | STRING | — |