PVL Gemini with fallback Multi
Six images, two providers, one text output
- image1
- image2
- image3
- image4
- image5
- image6
- text
This is the node you get when the pack's two most useful Gemini ideas collide: multi-image input and the OpenAI fallback. Up to six images (image1 … image6) go in alongside your prompt, Gemini handles them with parallel batch calls, and if Gemini fails on any item, OpenAI takes over. It's the "multi-modal, but make it resilient" member of the family.
If your workflow is reference-sheet analysis, batch captioning, or any job where the picture set is the payload and the answer can't afford to be "try again tomorrow," this is the one to reach for. It inherits everything from both parents - the six-image payload from PVL Gemini API Multi, the fallback machinery from PVL Gemini with fallback API - so there's no new mechanics to learn, just more wires.
How it works
Same engine as the whole Gemini line: connected images get converted and sent inline to Google's v1beta endpoint with your prompt; batch runs parallel calls; results join via delimiter (default [++]). With openai_fallback on, items that exhaust their Gemini retries get re-sent to OpenAI with your chosen openai_model. force_openai makes it OpenAI-only.
Two quirks distinguish this from its single-image sibling: top_k is a STRING here rather than an int (leave it as "65"), and thinking_level accepts both word forms (off, minimal, low, medium, high) and numeric forms (0–4) - a bit of drift between the node variants that tells you this pack was built by adding features on top of features.
The inputs that matter
image1…image6- the payload. Only connect what you need.prompt+instructions- the question and its framing. With six images, comparison-style prompts pay off.model- defaults togemini-2.5-flash; the dropdown includes the Gemini 3 previews.thinking_level-offby default; raise it when answers feel shallow. Remember the word/number drift across models.batchanddelimiter- parallel calls and result joining.- The fallback block:
openai_fallback,force_openai,openai_model(defaultGPT-5 mini),openai_api_key. tries(note: this variant allows up to 100),timeout,temperature,top_p,top_k,seed,debug.
Output: a single text string.
Installing it
Standard pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/pvlprk/comfyui-pvl-api-nodes
Restart, export GEMINI_API_KEY and optionally OPENAI_API_KEY (or fill the fields). No downloads.
Common issues
The same batch traps as the other Gemini nodes, with a couple of wrinkles. First, the image ports take a single frame - a batch of six frames on one port only sends the first. Use the pack's batch-splitting utility if you genuinely need all six seen. Second, the fallback is failure-only: bad-but-successful output stays bad. Third, the tolerance here is higher by design - tries goes to 100 and top_p to 10 - which is great for flaky long queues and a footgun for cost if you crank both and let a 64-item batch retry endlessly. And with two providers in play, a failure can mean two bills; check the pricing page before you build an overnight job around it.
Inputs (25)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | gemini-2.5-flash | 5 options: gemini-3-pro-preview, gemini-3-flash-preview, gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite |
| tries | INT | 21–100 | — |
| timeout | INT | 450–600 | — |
| temperature | FLOAT | 1.000–2 | — |
| top_p | FLOAT | 0.950–10 | — |
| top_k | STRING | 65 | — |
| thinking_level | COMBO | off | 10 options: off, minimal, low, medium, high, 0, +4 |
| batch | INT | 11–64 | — |
| delimiter | STRING | [++] | — |
| append_variation_tag | BOOLEAN | false | — |
| debug | BOOLEAN | false | — |
| instructions | STRING | — | |
| prompt | STRING | — | |
| seed | INT | 0 | — |
| image1opt | IMAGE | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — | |
| image4opt | IMAGE | — | |
| image5opt | IMAGE | — | |
| image6opt | IMAGE | — | |
| api_keyopt | STRING | — | |
| openai_fallbackopt | BOOLEAN | false | — |
| force_openaiopt | BOOLEAN | false | — |
| openai_modelopt | COMBO | GPT-5 mini | 4 options: GPT-5.1, GPT-5 pro, GPT-5 mini, GPT-5 nano |
| openai_api_keyopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |