Lumi Load Image
Load Image that remembers the order — the reference-image chain for Gemini edits
- image_chain
- image
- mask
- image_chain
Lumi Load Image looks like ComfyUI's built-in Load Image, and it mostly is - with one addition that matters the moment you're doing Gemini-style multimodal edits. It loads an image from your input folder and, on top of the usual image and mask outputs, emits an ordered image chain: a LUMI_IMAGE_CHAIN you can daisy-chain through multiple Lumi Load Image nodes so the order of your reference images survives the graph.
That ordering is the whole point. Gemini's imagen models can take several reference images at once, and the order they arrive in can matter - "here are three concept shots, blend the first and second, keep the third as a palette reference." Normal ComfyUI doesn't guarantee which branch of a fan-out runs first, so a list of images gathered from five separate Load Image nodes is effectively unordered. The chain fixes that: node B takes node A's chain and appends its own image, node C appends to B, and what comes out the end is a guaranteed sequence.
The inputs that matter
- image - the file picker, listing images from ComfyUI's input directory with the usual upload widget.
- image_chain (optional) - feed in the chain from the previous Lumi Load Image in the sequence.
What comes out
Three outputs:
- image - the loaded image as a standard
IMAGEtensor. Works anywhere a Load Image would. - mask - a
MASKfrom the alpha channel, or an empty mask for images with no transparency. - image_chain - the accumulated
LUMI_IMAGE_CHAIN. This is the one that plugs into theinput_imagesinput on Lumi LLM Imagen Processor, turning your loaded images into references the model actually sees.
It handles the usual Load Image chores properly - EXIF rotation, animated/sequence frames, alpha-as-mask. If you just need a plain image load, this works fine as a drop-in; the chain is bonus.
Installing
cd ComfyUI/custom_nodes
git clone https://github.com/illuminatianon/comfyui-lumi-tools
cd comfyui-lumi-tools
uv sync
Restart ComfyUI, or grab "Lumi Tools" from ComfyUI Manager. No dependencies beyond the pack's usual two (dynamicprompts, requests), no downloads.
The gotcha
The chain only exists if you actually use it. If you load three images from three separate Lumi Load Image nodes and wire each one's image output straight into the processor, you've thrown away the ordering guarantee - the input_images input expects a chain, so either build the sequence through the image_chain ports or you'll find the processor expecting a different shape than you're handing it. Also note the pack's files come from the input directory the same way core Load Image does, so if a file isn't showing up, it's in the wrong folder or you need to refresh the list.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | COMBO | Image file to load from ComfyUI input directory | |
| image_chainopt | LUMI_IMAGE_CHAIN | Optional chain from another Lumi Load Image node |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| mask | MASK | — |
| image_chain | LUMI_IMAGE_CHAIN | — |