Nodes/ComfyUI-Arrssenne/Loader ckpt+clip+vae+lora (Arrssenne)
ComfyUI Node

Loader ckpt+clip+vae+lora (Arrssenne)

>` tags right in your prompt

By arrssenne·Created 3 months ago·Updated about a month ago· 0
Loader ckpt+clip+vae+lora (Arrssenne)
    • MODEL
    • CLIP
    • VAE
    • text
    • checkpoint_name
    ckpt_name
    clip_name
    clip_type
    vae_name
    text

    If you came from Forge or A1111 and keep typing <lora:style_v3:0.8> into your prompt out of muscle memory, this node is aimed squarely at you. It's an all-in-one loader that takes a checkpoint, a CLIP text encoder, a VAE, and your prompt - and pulls any <lora:...> tags out of the prompt, applies them, and hands you back the cleaned text. Four nodes (CheckpointLoader + CLIPLoader + VAELoader + a lora-tag loader) collapsed into one.

    Why it exists

    The author's stated reason, straight from the source: some checkpoints (their example is the Krea2-style ones) ship without a usable embedded text encoder, and the normal loader chain then dies with a "clip input is invalid" error. This node never loads the checkpoint's embedded CLIP or VAE - it only loads the MODEL from the checkpoint and gets CLIP and VAE externally. No embedded encoder, no crash. You always know exactly which text encoder is in play.

    How it works

    • checkpoint → loaded via ComfyUI's load_checkpoint_guess_config with output_clip/output_vae disabled, so you get the MODEL alone.
    • CLIP → from your text_encoders folder via the builtin CLIPLoader, with a clip_type selector.
    • VAE → from your VAE files via the builtin VAELoader.
    • LoRAs → the node regexes <lora:name[:strength_model[:strength_clip]]> out of the prompt, matches the name against your installed LoRA files (exact path, then path-minus-extension, then bare filename), applies each via the builtin LoraLoader - so ComfyUI's LoRA caching still works - and strips the tags from the text output. Missing strengths default to 1.0 (clip strength defaults to the model strength). A tag that matches nothing is logged and skipped, never fatal.

    That tag syntax - <lora:name:weight> in the prompt - is a genuine Forge/A1111 convention, and it's the hook that makes this feel like home if you're migrating. You keep the whole generation config in one text box and let the node sort out the loading.

    Inputs that matter

    • ckpt_name - dropdown of your checkpoints.
    • clip_name - dropdown of files in text_encoders/.
    • clip_type - inherited from the builtin CLIPLoader. For SD1.5/SDXL/Pony/Illustrious it's stable_diffusion; newer model families (SD3, LTX, Wan, Mochi…) have their own. This is the beginner trap: pick the wrong one and CLIP encoding fails with a confusing error.
    • vae_name - your VAE files (newer ComfyUI builds also list the built-in pixel_space passthrough here).
    • text - forceInput, so wire your prompt. Don't type it in.

    Outputs - and the one everyone gets wrong

    • MODEL → your sampler. CLIP → CLIP Text Encode. VAE → VAE Decode.
    • text → the prompt with the tags stripped. Wire this into CLIP Text Encode, not the raw prompt you typed. This is the classic mistake: people bypass the cleaned output, and the literal <lora:...> text gets encoded and shows up as garbage tokens in the render.
    • checkpoint_name → the raw checkpoint string, for feeding Filename ckpt+seed (Arrssenne) or Image Saver metadata.

    When NOT to use it

    This node loads a separate CLIP file even when your checkpoint has a perfectly good embedded one - that's wasted disk reads and VRAM. If you're on a normal self-contained checkpoint (SDXL, Pony, Illustrious, most merged .safetensors), the pack's Loader ckpt+lora (Arrssenne) is the right tool, and it's drop-in swappable: same five outputs. Reach for this one when the checkpoint can't provide its own usable CLIP, or when you deliberately want a different text encoder.

    Install

    ComfyUI Manager → search "ComfyUI-Arrssenne", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/arrssenne/comfyui-arrssenne
    

    Restart, and it's under Arrssenne/Loaders. No model downloads, no API keys. The only Python dependency is Pillow (already present in any ComfyUI install); everything else is the builtin APIs.

    One caveat worth stating: this is a small, personal, French-authored pack - low traffic, maintained for one person's workflow. It's cleanly written and delegates to ComfyUI's own loaders, so it's low-risk to install, but don't expect weekly updates. If the <lora:>-in-prompt habit is what you want, it's the tidiest one-node version around.

    CategoryArrssenne/Loaders

    Inputs (5)

    NameTypeDefaultDescription
    ckpt_nameCOMBO0 options:
    clip_nameCOMBO0 options:
    clip_typeCOMBO28 options: stable_diffusion, stable_cascade, sd3, stable_audio, mochi, ltxv, +22
    vae_nameCOMBO1 options: pixel_space
    textSTRING

    Outputs (5)

    NameTypeDescription
    MODELMODEL
    CLIPCLIP
    VAEVAE
    textSTRING
    checkpoint_nameSTRING