ComfyUI Node

Arthemy Qwen Saver

Bake your tuned Qwen text encoder into a file you can load anywhere

By aledelpho·Created 7 months ago·Updated 7 months ago· 15
Arthemy Qwen Saver
  • tuned_clip
    original_filename
    filename_prefixqwen_arthemy_tuned
    save_precisionfp16

    The Qwen tuners work on a patched CLIP living in memory - useful while the workflow runs, useless the moment you close it. Arthemy Qwen Saver turns a tuned text encoder state into a standalone .safetensors file you can load later with a plain CLIPLoader, tuner not required. Find an encoder tuning you love, freeze it, and every future workflow just loads the saved file like any other text encoder.

    The inputs

    Four, and the first two matter more than the last two:

    • tuned_clip - the CLIP output of ArthemyQwenTunerSimple or ArthemyQwenTunerLab. This is the patched state you want to keep.
    • original_filename - a dropdown of every model in your clip and text_encoders folders. This is the template the saver rebuilds from, and it must be the exact file you tuned. Pick wrong and the shapes won't line up.
    • filename_prefix - default qwen_arthemy_tuned. Your file lands at ComfyUI/output/text_encoders/qwen_arthemy_tuned.safetensors.
    • save_precision - fp16 or fp32, default fp16. Qwen3-4B is a ~4B model, so fp16 lands around 8GB and fp32 doubles that. fp16 is the sensible default.

    No outputs - it's an output node. Its job is the file it writes.

    How it works (the part that trips people up)

    The Z-Image saver dumps a whole tuned state dict. The Qwen saver can't, because the tuner never modifies the base weights - it registers lazy patches on top of them. So this node does the reconstruction: it opens original_filename from disk as a template, walks the patcher's patch table, and for every patched key recomputes final = base + patch_tensor × strength before writing. It also stamps tuned_by: Arthemy_Unified into the file's metadata, so you can tell your tuned encoders apart later.

    That template dependency is why original_filename exists at all - and why it's a dropdown rather than a free-text field. If you loaded the encoder from text_encoders/ but pick a file name that isn't on disk, you'll get an "Error: Template file not found" in the console and no file.

    Wiring

    CLIPLoader (qwen_3_4b) ──> Arthemy Qwen Tuner (Simple/Lab) ──> Arthemy Qwen Saver
    

    The tuner's CLIP output feeds the saver while also feeding CLIPTextEncode, so you can save and generate in the same queue. Standard practice: tune, look at a few outputs, then save only when the result is a keeper.

    Reusing the result

    Load it like any other text encoder:

    CLIPLoader (text_encoders/qwen_arthemy_tuned.safetensors) ──> CLIPTextEncode ──> KSampler
    

    Use the same lumina2 type the pack's example workflow uses for Qwen3-4B. From there the tuned encoder behaves identically to stock - just with your layer adjustments baked in.

    Common issues

    • "Template file not found" - the name in the dropdown isn't on disk (moved, renamed, or it came from a folder that no longer exists). Re-point original_filename.
    • Saved file generates differently than the live tune - usually a precision or template mismatch. Make sure original_filename is the same file you loaded, not a quantized copy or a different revision.
    • File looks wrong when loaded - a saver can't know what you tuned it with; if the patch count was 0, you saved a stock encoder in a new costume. Check the tuner's info output for the active patch count before saving.
    • Big file - it's a full 4B-parameter encoder, not a LoRA. That's the trade for a self-contained file that needs no tuner rig to load.

    The honest framing: this is the "publish" step. The tuners are the exploration, the saver is the artifact - and once the artifact exists, your encoder tuning is portable, shareable, and independent of this pack's other nodes.

    CategoryArthemy/Qwen-TE/IO

    Inputs (4)

    NameTypeDefaultDescription
    tuned_clipCLIP
    original_filenameCOMBO0 options:
    filename_prefixSTRINGqwen_arthemy_tuned
    save_precisionCOMBOfp162 options: fp16, fp32

    Outputs (0)

    No outputs