Fat Mex Model Loader
One loader to rule the whole Fat Mex lineup
- model
- clip
- vae
Every Fat Mex workflow starts here. Pick a preset and out pop MODEL + CLIP + VAE - the three wires that every sampler in this pack wants. That's it. No hunting for the right UNET, no separately loading a text encoder, no VAE guessing. In the raw ComfyUI graph this is UNETLoader + CLIPLoader + VAELoader + LoraLoader twice over, and honestly, doing that by hand for a new model family each week is where people burn an afternoon.
The seven presets map to the current post-SDXL generation of models: Klein 9B, Klein 9B True, Qwen Image Edit 2509 / 2511, Qwen Image 2512, Z-Image Turbo, and Chroma HD. These are the "new era" checkpoints - Qwen-based LLM text encoders, cfg around 1.0, 6–20 steps, no quality-tag spam. The loader hides all of that plumbing.
How it works
A preset isn't just a filename - it's a whole config. Each one defines the exact UNET file, the CLIP file and its correct type (flux2, qwen_image, lumina2, chroma), the VAE, plus the sampling defaults (sampler, scheduler, steps, cfg) that the samplers inherit. On top of the load it does three things worth knowing about:
- fp8 handling. You can override the weight dtype (
fp8_e4m3fn,fp8_e5m2, fast variants, evengguf) if a preset's default doesn't fit your VRAM. Most preset files are already fp8, so leave it ondefaultunless you know why you're changing it. - Model sampling shift. Qwen Image 2512 gets an AuraFlow-style shift (0.6) applied automatically. This is exactly what the
ModelSamplingAuraFlownode does manually - the loader just does it for you. - LoRA stacking. Up to two LoRAs with independent strengths, applied model and CLIP side. On modern LLM-encoder models the old CLIP-side tricks mostly don't matter, but the option is there.
The sage_attention toggle is the one honest gotcha: it only checks and logs whether sageattention is available. Sage attention is applied globally via the --use-sage-attention launch flag - flipping this switch doesn't install the package or turn it on by itself.
The inputs that matter
Only one input is required: preset. The LoRA slots and strengths matter if you're stacking; weight_dtype_override matters on low-VRAM rigs. Everything else is already set by the preset.
Outputs are the standard trio - model, clip, vae - and you wire all three into a Fat Mex Content Sampler, Reference Sampler, Image Edit Sampler, or Inpaint Sampler. Don't break the trio apart; they were loaded as a matched set.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/FatMex/ComfyUI-FatMex-Nodes.git FatMex-Nodes
pip install -r FatMex-Nodes/requirements.txt
Or just search "Fat Mex Nodes" in ComfyUI Manager. Restart ComfyUI after installing.
Where people get burned
- The models don't ship with the pack. The loader looks for exact filenames -
flux-2-klein-9b-fp8.safetensors,qwen_3_8b_fp8mixed.safetensors,flux2-vae.safetensors,qwen_image_edit_2509_fp8_e4m3fn.safetensors,z_image_turbo_bf16.safetensors, and so on - inComfyUI/models/diffusion_models,text_encoders,vae, andunet. If a file is missing, the loader throws. This is the first thing to fail for everyone, and it's not a bug: you have to source the model files yourself (they're the standard fp8 releases from each family's Hugging Face page). pip install -r requirements.txtcan break on non-CUDA setups. The pack listsonnxruntime-gpu, which fails to install on CPU-only or Apple Silicon. You can still use every node in the pack (that dependency is only for face swap); just install the CPUonnxruntimeinstead and move on.
This is a young pack with a small footprint in the community, so expect to read the source or the bundled workflows/ JSON when something's unclear - the example workflows are the best documentation it ships.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| preset | COMBO | Klein 9B | Model preset to load. Each preset defines the UNET, CLIP, VAE, and default sampling settings. |
| sage_attentionopt | BOOLEAN | true | Enable sage attention for faster inference (requires sageattention package). |
| lora_1opt | COMBO | none | First LoRA to apply to the model. |
| lora_1_strengthopt | FLOAT | 1.00-10–10 | Strength of the first LoRA. |
| lora_2opt | COMBO | none | Second LoRA to apply to the model. |
| lora_2_strengthopt | FLOAT | 1.00-10–10 | Strength of the second LoRA. |
| weight_dtype_overrideopt | COMBO | default | Override weight data type. 'default' uses the preset's setting. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| model | MODEL | The loaded diffusion model. |
| clip | CLIP | The CLIP text encoder. |
| vae | VAE | The VAE for encoding/decoding images. |