π CR Random LoRA Stack
Roll the dice on which LoRAs fire each run
- lora_stack
- LORA_STACK
A LoRA is a small adapter that patches a checkpoint toward a character, style, or concept - a 10-to-200MB file that bends the base model without retraining it. Stacking a few at once is normal. CR Random LoRA Stack takes that a step further: it randomly decides which of its LoRAs get included on each run, so you can generate a big batch and let chance mix your adapters for you. It's an exploration tool - great for style roulette, generating variety, or hunting for combinations you wouldn't have picked deliberately.
It builds a LORA_STACK, which is the important structural bit: this node doesn't touch your model directly. It assembles a stack description that you then hand to CR Apply LoRA Stack, which does the actual patching. The stack pattern (shared with the Efficiency nodes) means you can chain several stack-builders together before applying them all at once.
How it works
The node has three LoRA slots. For each one, a chance value (0 to 1) sets the probability it gets included on a given run. exclusive_mode On means at most one LoRA fires at a time instead of several stacking together. stride controls how often the dice are re-rolled - a stride of 1 re-randomizes every generation, higher values hold the same pick across several runs before switching. force_randomize_after_stride forces a fresh roll once the stride is up. Each slot also has its own switch (an on/off master for that slot) plus model and clip weights.
Because the random pick keys off the run, you get the variety by queuing a batch - one image won't show you anything, a batch of thirty will.
The inputs and outputs that matter
lora_name_1/2/3- pick a LoRA per slot from yourmodels/lorasfolder. (If the dropdown only showsNone, you have no LoRAs installed - that's the whole cause, not a bug.)chance_1/2/3(0β1) - inclusion probability per slot. This is the dial that makes it "random."exclusive_mode(Off/On) - one-at-a-time vs. stacking.stride- runs between re-rolls.model_weight_N/clip_weight_N- strength per slot when it fires. The old 0.5β0.8 rule of thumb is SDXL-era advice; newer architectures often want 1.0+.lora_stack(optional input) - chain in an existing stack to extend it.
Output: LORA_STACK - wire it into CR Apply LoRA Stack (or another stack node), not into your model directly.
How to install it
Comfyroll Studio (Suzie1 and RockOfFire), a mature utility pack - no models bundled, no heavy dependencies. You supply your own LoRA files in ComfyUI/models/loras.
- ComfyUI Manager - search Comfyroll Studio, install, restart.
- Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git, then restart.
Also on CivitAI.
Common issues
The most common confusion: the output is a LORA_STACK, and stacks do nothing until an Apply LoRA Stack node consumes them. If nothing's changing in your images, check that you actually applied the stack. Second: empty lora_name dropdowns mean no LoRAs in your loras folder - drop some files in and refresh. Third, a LoRA only works on the architecture it was trained for; an SDXL LoRA does nothing on Flux, so a "dead" slot may just be a mismatched adapter.
And the pack-wide one: if the node's missing, look for Comfyroll Studio: Failed to load ... and NameError: name 'CR_HalftoneGrid' is not defined in your log. That NameError is a symptom of a real import failure (usually an incompatible Pillow version from another node) that can down the whole pack. Reinstall Pillow (pip install --upgrade --force-reinstall pillow) and restart.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| exclusive_mode | COMBO | 2 options: Off, On | |
| stride | INT | 11β1000 | β |
| force_randomize_after_stride | COMBO | 2 options: Off, On | |
| lora_name_1 | COMBO | 1 options: None | |
| switch_1 | COMBO | 2 options: Off, On | |
| chance_1 | FLOAT | 1.000β1 | β |
| model_weight_1 | FLOAT | 1.00-10β10 | β |
| clip_weight_1 | FLOAT | 1.00-10β10 | β |
| lora_name_2 | COMBO | 1 options: None | |
| switch_2 | COMBO | 2 options: Off, On | |
| chance_2 | FLOAT | 1.000β1 | β |
| model_weight_2 | FLOAT | 1.00-10β10 | β |
| clip_weight_2 | FLOAT | 1.00-10β10 | β |
| lora_name_3 | COMBO | 1 options: None | |
| switch_3 | COMBO | 2 options: Off, On | |
| chance_3 | FLOAT | 1.000β1 | β |
| model_weight_3 | FLOAT | 1.00-10β10 | β |
| clip_weight_3 | FLOAT | 1.00-10β10 | β |
| lora_stackopt | LORA_STACK | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LORA_STACK | LORA_STACK | β |