Power Lora Selector
Stack a dozen LoRAs in one node, toggle each row on and off
- lora_stack
- lora_stack
IPT-PowerLoraSelector is the Info-Prompt-Toolkit pack's take on the multi-LoRA loader: one node, as many LoRA rows as you want, each row with its own on/off toggle, LoRA pick, and strength. If you've used rgthree's Power Lora Loader - the community's default answer for "load a stack of LoRAs with per-entry toggles" - the interaction is immediately familiar. The difference is what comes out the other side.
Where a normal LoRA loader hands you a patched model, this node outputs an IPT-LoraStack: a compact description of which LoRAs at what strengths. That stack travels through the pack's image_info object, gets recorded in the saved metadata, and comes back out when you load the image with Image Reader. In other words, your LoRA stack stops being a set of widgets you have to remember and becomes part of the image's reusable generation data. Connect the output to Load New Model, Use Loaded Model, or Image Info Context and the stack is applied and saved in one move.
How it works
The node's real face is its row editor. items is a JSON string the frontend renders as an interactive list - each row has the LoRA name, a strength, an on/off toggle, model info, and a remove control. (The README also mentions a right-click View Model Info... that looks up the selected LoRA's Civitai metadata by SHA256, and can show a tag list for it.) At execution, the node parses the rows, skips anything disabled, resolves each LoRA name against your loras folder, and appends each enabled row as a stack entry. A connected lora_stack input gets used as the starting point, so you can chain selectors. Strengths are clamped to the -100..100 range, and a malformed row raises a clear, numbered error instead of failing silently.
The inputs that matter
- items - the row editor's JSON. You'll edit it visually, not by typing JSON.
- lora_stack - optional existing stack to append the enabled rows onto.
One output: lora_stack, feeding the pack's model-loading or image-info nodes.
Installing it
Part of the IPT pack - install once, restart ComfyUI:
cd ComfyUI/custom_nodes
git clone https://github.com/kinorax/comfyui-info-prompt-toolkit.git
cd comfyui-info-prompt-toolkit
pip install -r requirements.txt
ComfyUI Manager works too (search "ComfyUI-Info-Prompt-Toolkit"). No model downloads for the node itself - the LoRAs are whatever you already have in ComfyUI/models/loras.
Where people get burned
The stack is metadata, not a live patched model - if you bypass the pack's loader path (say, by feeding the stack to something that expects a MODEL), nothing will be applied and you'll get an inscrutable type error. Double-check that the lora_stack output lands in a node that consumes IPT-LoraStack. Also remember the stack is order- and strength-sensitive: the pack's caching treats a different order or different strength as a different condition, so rows you shuffle will re-run the load rather than hit cache. And if items ever gets corrupted to invalid JSON, the node stops with a message naming the row - read the row number it gives you before editing.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| items | STRING | [] | JSON rows used by the Power Lora Selector editor |
| lora_stackopt | IPT-LoraStack | Optional LoRA stack to append the enabled rows to |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| lora_stack | IPT-LoraStack | — |