Nodes/Mecha Merge Node Pack/SD1-KOHYA_LYCORIS_LORA Components Params
ComfyUI Node

SD1-KOHYA_LYCORIS_LORA Components Params

Per-component weights for LyCORIS networks on SD1

By ljleb·Created 3 years ago·Updated about a month ago· 101
SD1-KOHYA_LYCORIS_LORA Components Params
    • recipe
    clip_l0.00
    diffuser0.00
    vae0.00

    SD1-KOHYA_LYCORIS_LORA Components Params (class SD1-KOHYA_LYCORIS_LORA Defaults Hyper) is the per-component weight node for LyCORIS networks on SD1 - the kohya-layout config for LoKr and other LyCORIS variants (sd1-kohya_lycoris_lora). Like the other components params nodes it exposes clip_l, diffuser, and vae floats, and emits a single param recipe that applies each weight to its own part of the network.

    If the kohya-LoRA node is for the standard LoRA case, this is its sibling for the newer, denser family of low-rank networks. LyCORIS - and LoKr in particular - has become the default for character training in parts of the community because it packs more representational power per parameter than a plain LoRA, often converging better at low rank. Since mecha can merge and compose LyCORIS networks, it also gives you component-level control over them, which is exactly what you want when a character's "look" lives mostly in the UNet while a style's tagging lives in the text encoder.

    How it works

    LyCORIS networks have their own key extraction logic in sd-mecha (each algorithm - Lokr, LoHa, IA3, and friends - defines how to extract weights from its factorization). The sd1-kohya_lycoris_lora config is an auxiliary config layered on the sd1-kohya base, so its components mirror the base's: clip_l, diffuser, vae. This node maps your three floats onto those components and ORs them into one param recipe, exactly like its LoRA sibling - the difference is purely which key layout the config describes.

    The inputs that matter:

    • clip_l - weight for the network's text-encoder tensors.
    • diffuser - weight for the UNet tensors.
    • vae - weight for VAE-side tensors (usually absent in practice).
    • recipe (output, param space) - the combined param for sd1-kohya_lycoris_lora.

    Wire it into the alpha/weight input of an Add Difference or Weighted Sum whose inputs are base + a LyCORIS network, and you get per-part strength: full UNet, quarter text encoder, VAE untouched.

    Install

    Part of the Mecha Merge Node Pack (ljleb/comfy-mecha):

    • ComfyUI Manager → Install Custom Nodes → search "mecha" → Mecha Merge Node Pack, or manually:
    cd ComfyUI/custom_nodes
    git clone https://github.com/ljleb/comfy-mecha.git
    pip install -r comfy-mecha/requirements.txt
    

    Restart ComfyUI. Only dependency is sd-mecha==1.1.7; no model downloads.

    Common issues

    • The config must match what was loaded. If your file is a plain kohya LoRA, you want the SD1-KOHYA_KOHYA_LORA node; if it's a LyCORIS/LoKr network, this one. Plugging the wrong config's params into the wrong merge space is the main way people get confusing "component does not exist" errors - check which config Mecha Lora Recipe reports.
    • LyCORIS extraction is key-count heavy. Merging a LoKr network means reconstructing tensors from factorizations, so don't be surprised if it's slower per run than a plain LoRA merge. That's the cost of the denser representation, not a bug.
    • 0 still means "no override." Per-component params scale the method's treatment; they don't exclude parts. Use Omit Component for hard exclusion.

    The three SD1 param nodes - LDM, KOHYA, KOHYA_LORA, LYCORIS_LORA - are the same tool in four costumes. The skill is picking the costume that matches your recipe's config, and this one is the costume for SD1 LoKr and friends.

    Categorymecha

    Inputs (3)

    NameTypeDefaultDescription
    clip_lFLOAT0.00-18446744073709550000–18446744073709550000
    diffuserFLOAT0.00-18446744073709550000–18446744073709550000
    vaeFLOAT0.00-18446744073709550000–18446744073709550000

    Outputs (1)

    NameTypeDescription
    recipeMECHA_RECIPE