Nodes/Eric Qwen-Edit & Qwen-Image Nodes/Eric Qwen-Edit Component Loader
ComfyUI Node

Eric Qwen-Edit Component Loader

Swap just the transformer, VAE, or text encoder of Qwen-Edit without re-downloading the 54 GB model

By EricRollei·Created 6 months ago·Updated 4 months ago· 20
Eric Qwen-Edit Component Loader
    • pipeline
    base_pipeline_pathH:\Training\Qwen-Image-Edit-2511
    transformer_path
    vae_path
    text_encoder_path
    precisionbf16
    devicecuda
    keep_in_vramtrue
    offload_vaefalse
    attention_slicingfalse
    sequential_offloadfalse
    vae_tile_blendcosine

    Qwen-Image-Edit is three models stacked: a ~38 GB 20B-parameter MMDiT transformer, a ~15.5 GB Qwen2.5-VL text encoder, and a small ~0.24 GB VAE. When someone releases a fine-tuned version, they usually fine-tune one of those. Eric Qwen-Edit Component Loader lets you load each component from a different directory - so testing a community fine-tune means swapping one folder, not duplicating the entire ~54 GB model.

    That's the whole pitch: fine-tuned transformer only? Point transformer_path at it and keep everything else from the base. Quantised text encoder? Point text_encoder_path at it. Everything stock? Use the plain Eric Qwen-Edit Loader instead - this node's complexity buys nothing if you're not mixing components.

    The critical rule

    base_pipeline_path is always required, even if you override all three components. The base path provides the scheduler config, tokenizer, and processor files that have no separate override. It doesn't need the big weights if every component is overridden - just model_index.json, scheduler/, tokenizer/, and processor/.

    Architecture lock-in is absolute. The text encoder is Qwen2.5-VL (Qwen2_5_VLForConditionalGeneration), not CLIP. You cannot plug in a Stable Diffusion UNet, a CLIP model, or an unrelated VAE. What you can swap are different fine-tuned or quantized versions of the same Qwen-Image-Edit components - the same lock-in rule as every modern base, per the KB.

    The inputs

    • base_pipeline_path - the complete model directory (always required).
    • transformer_path - custom transformer; a folder with config.json + shards, a parent folder with a transformer/ subfolder, or a single .safetensors loaded as a state dict.
    • vae_path - custom VAE (config.json + one safetensors).
    • text_encoder_path - custom text encoder (config + 4 shards).
    • precision - bf16 (recommended for RTX 40/50 series), fp16, fp32.
    • device - cuda / cuda:0 / cuda:1 / cpu.
    • keep_in_vram - cache between runs (faster, more memory).
    • offload_vae - move VAE to CPU during transformer inference (saves ~2 GB).
    • attention_slicing - lower peak VRAM, slightly slower.
    • sequential_offload - aggressive CPU offload; very slow, but handles huge images.
    • vae_tile_blend - cosine (default; C¹-smooth, kills faint grid lines on gradients) vs linear (original diffusers behavior, may show seams at high res). This matters if you decode large images and see grid artifacts.

    Output: a pipeline that feeds any edit node.

    Installing it

    ComfyUI Manager → "Eric Qwen-Edit", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/EricRollei/Eric_Qwen_Edit_Experiments.git
    

    Restart, download Qwen/Qwen-Image-Edit-2511 (~54 GB) as your base. Dependencies: diffusers>=0.34,<0.38, transformers>=4.50,<5 - the transformers cap matters (5.x broke HybridCache used by older diffusers). Note the brief's default base_pipeline_path is H:\Training\Qwen-Image-Edit-2511 - that's the author's own Windows path, not a suggestion; set your own.

    Gotchas

    • "Module not found"-style load errors after swapping - you swapped in an architecture-incompatible component. Run the Diagnose LoRA / check the configs against the Qwen-Image-Edit architecture before blaming the loader.
    • Overriding nothing but still using this node - fine, but pointless; the plain Loader is simpler.
    • Grid-line artifacts on big decodes - switch vae_tile_blend to cosine, which is the whole reason that toggle exists.
    • VRAM still too tight - that's what offload_vae, attention_slicing, and sequential_offload are for, in increasing order of pain.
    CategoryEric Qwen-Edit

    Inputs (11)

    NameTypeDefaultDescription
    base_pipeline_pathSTRINGH:\Training\Qwen-Image-Edit-2511Path to complete Qwen-Image-Edit model (provides config, scheduler, tokenizer, processor)
    transformer_pathoptSTRINGPath to custom/fine-tuned transformer. Can be a folder or single .safetensors file. Leave empty to use base.
    vae_pathoptSTRINGPath to custom VAE. Leave empty to use base.
    text_encoder_pathoptSTRINGPath to custom text encoder. Leave empty to use base.
    precisionoptCOMBObf16Model precision (bf16 recommended for RTX 40/50 series)
    deviceoptCOMBOcudaDevice to load model on
    keep_in_vramoptBOOLEANtrueKeep model in VRAM between runs (faster but uses memory)
    offload_vaeoptBOOLEANfalseMove VAE to CPU during transformer inference (saves ~2GB VRAM)
    attention_slicingoptBOOLEANfalseEnable attention slicing (reduces VRAM, slightly slower)
    sequential_offloadoptBOOLEANfalseAggressive CPU offloading - very slow but handles huge images
    vae_tile_blendoptCOMBOcosineTile-seam blending for tiled VAE decode/encode. • cosine — C¹-smooth blend (zero slope at tile edges), eliminates faint grid lines on smooth gradients. • linear — original diffusers behaviour. Slightly sharper at tile edges; may show faint seams at high resolutions.

    Outputs (1)

    NameTypeDescription
    pipelineQWEN_EDIT_PIPELINE