Nodes/ComfyUI Silver Nodes/Silver Shared Text Encoder
ComfyUI Node

Silver Shared Text Encoder

Keep Your Text Encoder Warm Between Prompts

By SilverAndJade·Created about a year ago·Updated about a month ago· 0
Silver Shared Text Encoder
    • clip
    • cache key
    clip_name
    type
    key_opt
    mode
    device

    The text encoder is the quiet place your workflow wastes time. It's a second model that runs before every generation, and on modern models it's huge - the Flux 2 Qwen encoder is somewhere around 8 GB. Silver Shared Text Encoder is a cached CLIP loader that keeps that encoder alive in RAM across prompts, so a queue of jobs doesn't re-read a giant file from disk every single time. It's the text-side sibling of Silver Shared Diffusion Model, and if you serve many prompts over the API, it's the one that actually saves you minutes.

    Why this node exists

    Same story as the shared diffusion loader, worth retelling once because the stakes are bigger here. When ComfyUI runs a prompt over the HTTP API, loader nodes re-execute, and when the prompt ends the loaded model gets garbage-collected. The next prompt re-reads the whole file. For a text encoder that's an 8 GB read from disk - the pack's own changelog says its Flux 2 Qwen encoder takes about three and a half minutes to load. This node keeps a strong reference to the loaded CLIP in a module-level cache, so the next prompt only re-transfers to VRAM instead of re-reading the file.

    The text encoder being a separate, independently-loaded model is a point the ecosystem keeps hammering: it's the component that changed most between 2024 and 2026, and it's increasingly the thing that decides whether a model fits your card at all. Caching it well is not a niche concern anymore.

    Inputs and outputs

    • clip_name - a dropdown of your text_encoders folder. The main thing you set.
    • type - the encoder family, with the same 28 choices as the stock CLIPLoader: stable_diffusion, stable_cascade, sd3, stable_audio, mochi, ltxv, pixart, cosmos, lumina2, wan, hidream, chroma, flux2, and more. Get this wrong and you'll get garbage conditioning - a Flux 2 model wants flux2, an SD3 model wants sd3. This is the #1 beginner mistake with any CLIP loader, cached or not.
    • key_opt - an optional custom cache key. Same key on several nodes means they share one loaded encoder.
    • mode - Auto (reuse cache, load if missing), Override Cache (force reload), Read Only (never load; error if the key isn't cached yet).
    • device - optional and marked advanced: default or cpu. Forcing CPU encoding frees VRAM for the UNet at the cost of slower encodes - occasionally the right call on a tight card.

    Outputs: clip, which wires into your CLIP Text Encode or conditioning, and cache key, a string you generally don't need to connect.

    The same patch requirement as its sibling

    Yes, this one has the catch too. To fully deduplicate loaded weights, the pack wants a manual patch to ComfyUI's comfy/model_management.py adding a model_key to loaded model patchers. Skip it and the same encoder loaded through different patchers counts as two models - doubled VRAM and reloads that undermine the cache. It's a hand edit to ComfyUI core, not a script, and ComfyUI updates can wipe it. That's the real tax of this node; budget for re-applying it.

    Installing it

    ComfyUI Manager, search "ComfyUI Silver Nodes". Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/SilverAndJade/comfyui-silver-nodes
    

    Restart, then apply the model_management.py patch from the README if you want the dedup to actually work.

    Common issues

    The wrong type enum is the classic failure - it doesn't crash, it just silently produces broken text conditioning. Then there's the patch: if you're seeing doubled VRAM or "why does it still reload?" behavior, that's almost certainly the unpatched core. And remember the cache is pinned RAM: when you switch encoder families between jobs, clear it with Silver Clear Model Cache so stale weights don't linger. For a single-model desktop workflow this node is optional; for an API queue that reuses one encoder, it's the difference between fast and glacial.

    Categorysilver/Backend

    Inputs (5)

    NameTypeDefaultDescription
    clip_nameCOMBO0 options:
    typeCOMBO28 options: stable_diffusion, stable_cascade, sd3, stable_audio, mochi, ltxv, +22
    key_optSTRING
    modeCOMBO3 options: Auto, Override Cache, Read Only
    deviceoptCOMBO2 options: default, cpu

    Outputs (2)

    NameTypeDescription
    clipCLIP
    cache keySTRING