ComfyUI Node Runs on cloud

XY Input: LoRA

LoRA

By jags111·Created 3 years ago·Updated 4 months ago· 1,486
XY Input: LoRA
  • lora_stack
  • X or Y
input_mode
batch_path/example_folder
subdirectoriesfalse
batch_sort
batch_max-1
lora_count3
model_strength1.00
clip_strength1.00
lora_name_1
model_str_11.00
clip_str_11.00
lora_name_2
model_str_21.00
clip_str_21.00
lora_name_3
model_str_31.00
clip_str_31.00
lora_name_4
model_str_41.00
clip_str_41.00
lora_name_5
model_str_51.00
clip_str_51.00
lora_name_6
model_str_61.00
clip_str_61.00
lora_name_7
model_str_71.00
clip_str_71.00
lora_name_8
model_str_81.00
clip_str_81.00
lora_name_9
model_str_91.00
clip_str_91.00
lora_name_10
model_str_101.00
clip_str_101.00
lora_name_11
model_str_111.00
clip_str_111.00
lora_name_12
model_str_121.00
clip_str_121.00
lora_name_13
model_str_131.00
clip_str_131.00
lora_name_14
model_str_141.00
clip_str_141.00
lora_name_15
model_str_151.00
clip_str_151.00
lora_name_16
model_str_161.00
clip_str_161.00
lora_name_17
model_str_171.00
clip_str_171.00
lora_name_18
model_str_181.00
clip_str_181.00
lora_name_19
model_str_191.00
clip_str_191.00
lora_name_20
model_str_201.00
clip_str_201.00
lora_name_21
model_str_211.00
clip_str_211.00
lora_name_22
model_str_221.00
clip_str_221.00
lora_name_23
model_str_231.00
clip_str_231.00
lora_name_24
model_str_241.00
clip_str_241.00
lora_name_25
model_str_251.00
clip_str_251.00
lora_name_26
model_str_261.00
clip_str_261.00
lora_name_27
model_str_271.00
clip_str_271.00
lora_name_28
model_str_281.00
clip_str_281.00
lora_name_29
model_str_291.00
clip_str_291.00
lora_name_30
model_str_301.00
clip_str_301.00
lora_name_31
model_str_311.00
clip_str_311.00
lora_name_32
model_str_321.00
clip_str_321.00
lora_name_33
model_str_331.00
clip_str_331.00
lora_name_34
model_str_341.00
clip_str_341.00
lora_name_35
model_str_351.00
clip_str_351.00
lora_name_36
model_str_361.00
clip_str_361.00
lora_name_37
model_str_371.00
clip_str_371.00
lora_name_38
model_str_381.00
clip_str_381.00
lora_name_39
model_str_391.00
clip_str_391.00
lora_name_40
model_str_401.00
clip_str_401.00
lora_name_41
model_str_411.00
clip_str_411.00
lora_name_42
model_str_421.00
clip_str_421.00
lora_name_43
model_str_431.00
clip_str_431.00
lora_name_44
model_str_441.00
clip_str_441.00
lora_name_45
model_str_451.00
clip_str_451.00
lora_name_46
model_str_461.00
clip_str_461.00
lora_name_47
model_str_471.00
clip_str_471.00
lora_name_48
model_str_481.00
clip_str_481.00
lora_name_49
model_str_491.00
clip_str_491.00
lora_name_50
model_str_501.00
clip_str_501.00

This XY input plots LoRAs against one axis of the grid. You either list specific LoRAs to compare, or point it at a folder and let it sweep every LoRA inside - then the plot renders the same prompt with each one applied. It's how you audition a pile of LoRAs quickly, or find the right strength for one, without regenerating by hand and squinting at the differences.

Like the whole XY family, it's ammo for the XY Plot node and does nothing standalone.

Why you'd reach for it

Two real uses. First, comparison shopping: you downloaded eight character or style LoRAs and want to see which actually deliver on your checkpoint - plot them all, judge the grid. Second, this node can also vary a single LoRA's strength across the axis, which is the honest way to find the right weight instead of the usual "eh, 0.8 is probably fine." LoRA strength genuinely matters and the sweet spot moves per LoRA, so seeing 0.4 through 1.0 laid out is worth the minute it takes.

The inputs and outputs

  • input_mode - switches between listing LoRAs by hand and the batch-folder mode.
  • lora_count and lora_name_1…N - the manual list: how many slots and which LoRA in each.
  • model_strength / clip_strength - the strength used when you're comparing LoRAs at a fixed weight, or the strength held constant when you're sweeping something else.
  • model_str_1…N / clip_str_1…N - per-slot strengths for finer control in the manual list.
  • batch_path / subdirectories / batch_sort / batch_max - the folder route: sweep every LoRA in a directory (batch_max caps the count so a big folder doesn't explode into a hundred cells).
  • lora_stack (optional) - feed in an existing stack so the plotted LoRA sits on top of LoRAs you're already running.

The output is labelled X or Y (XY type) → into the X or Y input of an XY Plot node. For a two-dimensional LoRA sweep (a batch of LoRAs on one axis, strength on the other), see the dedicated XY Input: LoRA Plot node, which drives both axes at once.

Installing it

ComfyUI Manager → search Efficiency Nodes for ComfyUI, or:

cd ComfyUI/custom_nodes
git clone https://github.com/jags111/efficiency-nodes-comfyui

Restart after. LoRA files need to live in models/loras (or under your batch path) to be picked up.

Common issues

If a batch sweep comes back empty or short, check the batch_path and whether subdirectories needs to be on - a wrong path silently yields nothing, and batch_max may be quietly trimming the set.

Also worth knowing: on the SDXL base+refiner path, this pack has a documented history of LoRAs only affecting the base model and not the refiner. If your plotted LoRAs look weaker than expected specifically on an SDXL base+refiner run, that's the likely reason.

And it only works through an XY Plot feeding an Efficient KSampler. Pack-wide: a missing node usually means IMPORT FAILED at startup (often a pip freeze error) - update ComfyUI, the packages and the node.

CategoryEfficiency Nodes/XY Inputs

Inputs (159)

NameTypeDefaultDescription
input_modeCOMBO3 options: LoRA Names, LoRA Names+Weights, LoRA Batch
batch_pathSTRING/example_folder
subdirectoriesBOOLEANfalse
batch_sortCOMBO2 options: ascending, descending
batch_maxINT-1-1–50
lora_countINT30–50
model_strengthFLOAT1.00-10–10
clip_strengthFLOAT1.00-10–10
lora_name_1COMBO1 options: None
model_str_1FLOAT1.00-10–10
clip_str_1FLOAT1.00-10–10
lora_name_2COMBO1 options: None
model_str_2FLOAT1.00-10–10
clip_str_2FLOAT1.00-10–10
lora_name_3COMBO1 options: None
model_str_3FLOAT1.00-10–10
clip_str_3FLOAT1.00-10–10
lora_name_4COMBO1 options: None
model_str_4FLOAT1.00-10–10
clip_str_4FLOAT1.00-10–10
lora_name_5COMBO1 options: None
model_str_5FLOAT1.00-10–10
clip_str_5FLOAT1.00-10–10
lora_name_6COMBO1 options: None
model_str_6FLOAT1.00-10–10
clip_str_6FLOAT1.00-10–10
lora_name_7COMBO1 options: None
model_str_7FLOAT1.00-10–10
clip_str_7FLOAT1.00-10–10
lora_name_8COMBO1 options: None
model_str_8FLOAT1.00-10–10
clip_str_8FLOAT1.00-10–10
lora_name_9COMBO1 options: None
model_str_9FLOAT1.00-10–10
clip_str_9FLOAT1.00-10–10
lora_name_10COMBO1 options: None
model_str_10FLOAT1.00-10–10
clip_str_10FLOAT1.00-10–10
lora_name_11COMBO1 options: None
model_str_11FLOAT1.00-10–10
clip_str_11FLOAT1.00-10–10
lora_name_12COMBO1 options: None
model_str_12FLOAT1.00-10–10
clip_str_12FLOAT1.00-10–10
lora_name_13COMBO1 options: None
model_str_13FLOAT1.00-10–10
clip_str_13FLOAT1.00-10–10
lora_name_14COMBO1 options: None
model_str_14FLOAT1.00-10–10
clip_str_14FLOAT1.00-10–10
lora_name_15COMBO1 options: None
model_str_15FLOAT1.00-10–10
clip_str_15FLOAT1.00-10–10
lora_name_16COMBO1 options: None
model_str_16FLOAT1.00-10–10
clip_str_16FLOAT1.00-10–10
lora_name_17COMBO1 options: None
model_str_17FLOAT1.00-10–10
clip_str_17FLOAT1.00-10–10
lora_name_18COMBO1 options: None
model_str_18FLOAT1.00-10–10
clip_str_18FLOAT1.00-10–10
lora_name_19COMBO1 options: None
model_str_19FLOAT1.00-10–10
clip_str_19FLOAT1.00-10–10
lora_name_20COMBO1 options: None
model_str_20FLOAT1.00-10–10
clip_str_20FLOAT1.00-10–10
lora_name_21COMBO1 options: None
model_str_21FLOAT1.00-10–10
clip_str_21FLOAT1.00-10–10
lora_name_22COMBO1 options: None
model_str_22FLOAT1.00-10–10
clip_str_22FLOAT1.00-10–10
lora_name_23COMBO1 options: None
model_str_23FLOAT1.00-10–10
clip_str_23FLOAT1.00-10–10
lora_name_24COMBO1 options: None
model_str_24FLOAT1.00-10–10
clip_str_24FLOAT1.00-10–10
lora_name_25COMBO1 options: None
model_str_25FLOAT1.00-10–10
clip_str_25FLOAT1.00-10–10
lora_name_26COMBO1 options: None
model_str_26FLOAT1.00-10–10
clip_str_26FLOAT1.00-10–10
lora_name_27COMBO1 options: None
model_str_27FLOAT1.00-10–10
clip_str_27FLOAT1.00-10–10
lora_name_28COMBO1 options: None
model_str_28FLOAT1.00-10–10
clip_str_28FLOAT1.00-10–10
lora_name_29COMBO1 options: None
model_str_29FLOAT1.00-10–10
clip_str_29FLOAT1.00-10–10
lora_name_30COMBO1 options: None
model_str_30FLOAT1.00-10–10
clip_str_30FLOAT1.00-10–10
lora_name_31COMBO1 options: None
model_str_31FLOAT1.00-10–10
clip_str_31FLOAT1.00-10–10
lora_name_32COMBO1 options: None
model_str_32FLOAT1.00-10–10
clip_str_32FLOAT1.00-10–10
lora_name_33COMBO1 options: None
model_str_33FLOAT1.00-10–10
clip_str_33FLOAT1.00-10–10
lora_name_34COMBO1 options: None
model_str_34FLOAT1.00-10–10
clip_str_34FLOAT1.00-10–10
lora_name_35COMBO1 options: None
model_str_35FLOAT1.00-10–10
clip_str_35FLOAT1.00-10–10
lora_name_36COMBO1 options: None
model_str_36FLOAT1.00-10–10
clip_str_36FLOAT1.00-10–10
lora_name_37COMBO1 options: None
model_str_37FLOAT1.00-10–10
clip_str_37FLOAT1.00-10–10
lora_name_38COMBO1 options: None
model_str_38FLOAT1.00-10–10
clip_str_38FLOAT1.00-10–10
lora_name_39COMBO1 options: None
model_str_39FLOAT1.00-10–10
clip_str_39FLOAT1.00-10–10
lora_name_40COMBO1 options: None
model_str_40FLOAT1.00-10–10
clip_str_40FLOAT1.00-10–10
lora_name_41COMBO1 options: None
model_str_41FLOAT1.00-10–10
clip_str_41FLOAT1.00-10–10
lora_name_42COMBO1 options: None
model_str_42FLOAT1.00-10–10
clip_str_42FLOAT1.00-10–10
lora_name_43COMBO1 options: None
model_str_43FLOAT1.00-10–10
clip_str_43FLOAT1.00-10–10
lora_name_44COMBO1 options: None
model_str_44FLOAT1.00-10–10
clip_str_44FLOAT1.00-10–10
lora_name_45COMBO1 options: None
model_str_45FLOAT1.00-10–10
clip_str_45FLOAT1.00-10–10
lora_name_46COMBO1 options: None
model_str_46FLOAT1.00-10–10
clip_str_46FLOAT1.00-10–10
lora_name_47COMBO1 options: None
model_str_47FLOAT1.00-10–10
clip_str_47FLOAT1.00-10–10
lora_name_48COMBO1 options: None
model_str_48FLOAT1.00-10–10
clip_str_48FLOAT1.00-10–10
lora_name_49COMBO1 options: None
model_str_49FLOAT1.00-10–10
clip_str_49FLOAT1.00-10–10
lora_name_50COMBO1 options: None
model_str_50FLOAT1.00-10–10
clip_str_50FLOAT1.00-10–10
lora_stackoptLORA_STACK

Outputs (1)

NameTypeDescription
X or YXY