π§ͺ TOO LoRA Grid
Audition a folder of LoRAs in one sheet, same seed, no babysitting
- model
- clip
- vae
- positive
- negative
- latent_image
- grid
- images
TOO LoRA Grid is a KSampler in disguise: it takes your model, clip, VAE, conditioning and latent like any sampler, but instead of generating one image, it generates one image per LoRA - all with the same seed and settings - and stitches them into a labeled comparison grid. If you've ever spent an evening loading a LoRA, generating, unloading, loading the next, this is the node that does that evening for you in a single queue run.
The killer part is the comparison baseline. The loras widget accepts a special entry form - any_lora.safetensors:"no lora" - which is a null slot: the grid samples that cell without applying any LoRA and labels it whatever you wrote. So you get a no-LoRA reference column right next to your candidates. That's the right way to judge a LoRA: against the base model at the same seed, not against your memory of it. Strength testing works too - list the same LoRA twice at different weights (:0.5 and :0.9) and eyeball the difference directly.
The loras format. One entry per line, lines starting with # are comments:
path/to/lora.safetensors- apply at strength 1.0path/to/lora.safetensors:0.8- apply at explicit strengthpath/to/lora.safetensors:"label"- null slot, no LoRA, custom label
You can use bare filenames; the node resolves them against your LoRA folders and will even try .safetensors/.pt/.ckpt if you omit the extension. Missing files are logged, not fatal.
The other knobs. Seed, steps, cfg, sampler, scheduler, denoise - all the usual sampler settings, plus grid controls (grid_cols, grid_padding) and label styling (label_height, font_size, label_color, bg_color, and a footer_text you can use to bake the prompt into the sheet). Two outputs: grid (the assembled sheet) and images (the individual cells as a batch). Labels use PIL's default fonts with a fallback chain - in a container, install a font like DejaVuSans or the labels fall back to a chunky bitmap font.
Caching. The node hashes your model/conditioning signatures plus the latent image and caches decoded cells, so re-running with nothing changed is instant. Change any parameter or the latent and it re-samples. Handy, but remember the cache is in-memory and dies with the process.
Install.
cd ComfyUI/custom_nodes
git clone https://github.com/tetsuoo-online/Comfyui-TOO-Pack
or ComfyUI Manager β "Comfyui-TOO-Pack" β restart.
The honest caveats. It's one sample per LoRA - it's an audition tool, not a batch statistics rig. And the usual LoRA rule applies: architecture-bound, so an SDXL LoRA grid on a Flux model is wasted runs (the LoRA concept notes make the architecture-matching point everywhere). This version uses the standard sampler inputs; if your pipeline is built on the modern SamplerCustomAdvanced stack (noise/guider/sampler/sigmas), grab the Advanced variant in the same pack instead. For picking "which of these 12 LoRAs actually does what I want," this is the one.
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| clip | CLIP | β | |
| vae | VAE | β | |
| positive | CONDITIONING | β | |
| negative | CONDITIONING | β | |
| latent_image | LATENT | β | |
| loras | STRING | # path:str_model # ex: my_lora.safetensors:1.0 # ex: my_lora.safetensors:"no lora" | β |
| seed | INT | 00β18446744073709550000 | β |
| steps | INT | 201β10000 | β |
| cfg | FLOAT | 7.00β100 | β |
| sampler_name | COMBO | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 | |
| scheduler | COMBO | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 | |
| denoise | FLOAT | 1.000β1 | β |
| grid_cols | INT | 41β16 | β |
| grid_padding | INT | 40β64 | β |
| add_labels | BOOLEAN | true | β |
| label_height | INT | 2412β64 | β |
| font_size | INT | 308β48 | β |
| label_color | STRING | #ffffff | β |
| bg_color | STRING | #111111 | β |
| footer_text | STRING | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| grid | IMAGE | β |
| images | IMAGE | β |