Nodes/comfyui-AGSoft/AGSoft Loop Lora Strengths
ComfyUI Node

AGSoft Loop Lora Strengths

Sweep 20 LoRA strengths in one queue

By Art-xmaster·Created 12 months ago·Updated a day ago· 23
AGSoft Loop Lora Strengths
    • strengths
    • strengths_text
    strength_model_11.00
    strength_model_20.00
    strength_model_30.00
    strength_model_40.00
    strength_model_50.00
    strength_model_60.00
    strength_model_70.00
    strength_model_80.00
    strength_model_90.00
    strength_model_100.00
    strength_model_110.00
    strength_model_120.00
    strength_model_130.00
    strength_model_140.00
    strength_model_150.00
    strength_model_160.00
    strength_model_170.00
    strength_model_180.00
    strength_model_190.00
    strength_model_200.00

    LoRA strength is the most-fiddled dial in ComfyUI, and the standard way to test a range of values is to run, change the number, run again. AGSoft Loop Lora Strengths turns that into one queue: you type up to 20 strength values into the node, and it emits them as a list your batch machinery can iterate. It's a small idea, but it's the difference between twenty manual runs and one scripted sweep.

    How it works

    Twenty float inputs - strength_model_1 through strength_model_20 - each defaulting to 0.0 except slot 1 (1.0). The rule is simple: any slot set to exactly 0.0 is skipped, everything else gets emitted. Set slot 1 to 0.4, slot 2 to 0.6, slot 3 to 0.8, leave the rest alone, and you get a three-item list.

    Two synchronized outputs come out:

    • strengths - the float values themselves, as a list, for driving a LoRA loader's strength input.
    • strengths_text - the same values formatted as lora_strength = X strings, with full precision preserved. So 0.001 stays 0.001 and -2 stays -2 - no float formatting roulette. That string output is gold if you're labeling each batch item with what it ran.

    The two lists are guaranteed to line up index-for-index, because they're built from the same loop. That sync is the whole point: whatever your batch driver reads as the numeric value, the label matches it.

    The inputs in practice

    There's exactly one decision per slot: does it run or not. Values can be negative (a LoRA at −0.5 is a legitimate stylistic choice for de-emphasizing a style) and can exceed 1.0 if your test calls for it. The tooltip's honest framing: "Set to 0.0 to skip this slot." Because only exactly 0.0 is skipped, a tiny non-zero like 0.001 is respected - which matters more than you'd think for weak LoRAs where 0.001 vs 0.01 is a real difference.

    Wiring it

    This node feeds batch-capable machinery. Its strengths list plugs into a LoRA loader that accepts list inputs, or into the pack's own loop family (AGSoft Loop Base and friends) which iterate list values. Pair it with AGSoft Loop Samplers and you've got a proper sweep setup: strengths × samplers, all queued at once.

    Installing it

    Pack standard: ComfyUI Manager → search comfyui-AGSoft → install, restart. Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Art-xmaster/comfyui-AGSoft.git
    

    No models, no dependencies - it's pure list construction.

    Common issues

    The classic stumble is wiring strengths to a LoRA loader that doesn't accept list inputs - you'll get a type error, and it's easy to blame the node. Check the loader first. The other trap is expecting zero to be preserved for a "no LoRA" pass: it's skipped by design, so you can't use 0.0 as a placeholder inside the list - if you need a pass without the LoRA, run it separately or use a tiny epsilon. And if your labels and values ever look out of sync, remember both outputs come from the same slots - a mismatch means you edited a slot between reads, not that the node misordered anything.

    CategoryAGSoft/Utility

    Inputs (20)

    NameTypeDefaultDescription
    strength_model_1FLOAT1.00-100–100Strength for slot 1. 0.0 = skip. Сила для слота 1. 0.0 = пропустить.
    strength_model_2FLOAT0.00-100–100Strength for slot 2. 0.0 = skip. Сила для слота 2. 0.0 = пропустить.
    strength_model_3FLOAT0.00-100–100Strength for slot 3. 0.0 = skip. Сила для слота 3. 0.0 = пропустить.
    strength_model_4FLOAT0.00-100–100Strength for slot 4. 0.0 = skip. Сила для слота 4. 0.0 = пропустить.
    strength_model_5FLOAT0.00-100–100Strength for slot 5. 0.0 = skip. Сила для слота 5. 0.0 = пропустить.
    strength_model_6FLOAT0.00-100–100Strength for slot 6. 0.0 = skip. Сила для слота 6. 0.0 = пропустить.
    strength_model_7FLOAT0.00-100–100Strength for slot 7. 0.0 = skip. Сила для слота 7. 0.0 = пропустить.
    strength_model_8FLOAT0.00-100–100Strength for slot 8. 0.0 = skip. Сила для слота 8. 0.0 = пропустить.
    strength_model_9FLOAT0.00-100–100Strength for slot 9. 0.0 = skip. Сила для слота 9. 0.0 = пропустить.
    strength_model_10FLOAT0.00-100–100Strength for slot 10. 0.0 = skip. Сила для слота 10. 0.0 = пропустить.
    strength_model_11FLOAT0.00-100–100Strength for slot 11. 0.0 = skip. Сила для слота 11. 0.0 = пропустить.
    strength_model_12FLOAT0.00-100–100Strength for slot 12. 0.0 = skip. Сила для слота 12. 0.0 = пропустить.
    strength_model_13FLOAT0.00-100–100Strength for slot 13. 0.0 = skip. Сила для слота 13. 0.0 = пропустить.
    strength_model_14FLOAT0.00-100–100Strength for slot 14. 0.0 = skip. Сила для слота 14. 0.0 = пропустить.
    strength_model_15FLOAT0.00-100–100Strength for slot 15. 0.0 = skip. Сила для слота 15. 0.0 = пропустить.
    strength_model_16FLOAT0.00-100–100Strength for slot 16. 0.0 = skip. Сила для слота 16. 0.0 = пропустить.
    strength_model_17FLOAT0.00-100–100Strength for slot 17. 0.0 = skip. Сила для слота 17. 0.0 = пропустить.
    strength_model_18FLOAT0.00-100–100Strength for slot 18. 0.0 = skip. Сила для слота 18. 0.0 = пропустить.
    strength_model_19FLOAT0.00-100–100Strength for slot 19. 0.0 = skip. Сила для слота 19. 0.0 = пропустить.
    strength_model_20FLOAT0.00-100–100Strength for slot 20. 0.0 = skip. Сила для слота 20. 0.0 = пропустить.

    Outputs (2)

    NameTypeDescription
    strengthsFLOAT
    strengths_textSTRING