Nodes/ComfyUI-HF-Diffusers/HF Diffusers load pipeline
ComfyUI Node

HF Diffusers load pipeline

The node that turns ComfyUI into a generic HuggingFace frontend

By Yahweasel·Created 8 months ago·Updated 7 months ago· 2
HF Diffusers load pipeline
  • vae
  • text_encoder
  • HFD_PIPELINE
  • HFD_AUTOENCODERKL
pipeline_classAutoPipelineForText2Image
modelstabilityai/stable-diffusion-xl-base-1.0
device
enable_model_cpu_offload
dtype
kwargs

This is the heart of the pack, and it's honestly a little strange that it's the node with zero search impressions - because if you use ComfyUI-HF-Diffusers for anything, you will almost certainly use this. It loads a HuggingFace diffusers pipeline: the whole self-contained bundle (UNet or DiT, text encoder, scheduler, VAE) that HuggingFace uses as its unit of inference.

The author's pitch, in one sentence: most "ComfyUI custom nodes" are just thin bindings to HuggingFace diffusers, but they're constrained to one model or one use case. This pack is the unconstrained version. HFDLoadPipeline loads whatever you point it at, which is why it has a pipeline_class text box instead of a dropdown.

The inputs that matter

  • pipeline_class - default AutoPipelineForText2Image, which auto-selects the right pipeline class for a text-to-image model (SDXL, Flux, LongCat Image, whatever). Here's the party trick: type any class name that exists in the diffusers namespace - LongCatImagePipeline, GlmImagePipeline - and it loads that instead. The pack's example workflows do exactly this.
  • model - the HuggingFace repo id (default stabilityai/stable-diffusion-xl-base-1.0). First load downloads the model into the HF cache (~/.cache/huggingface), not into ComfyUI/models/.
  • device - default / auto / cpu. default means .to("cuda:0"); auto means device_map="auto", the accelerate path that shards the model across available memory.
  • enable_model_cpu_offload - False / True, the diffusers CPU offloading switch. This is the "it fits on your card" lever when VRAM is tight.
  • dtype - default, float32, float16, bfloat16, bitsandbytes_8bit, bitsandbytes_4bit. The bitsandbytes options are the real draw here: it's unusually easy to run, say, a 4-bit quantized pipeline that would otherwise be a VRAM crisis. One caveat from the source: "default" dtype actually resolves to bfloat16, so if you're chasing a precision bug, set it explicitly.
  • kwargs - JSON text for everything else, the pack's universal "advanced" box.

Two optional inputs let you override the pipeline's own components with ones you loaded separately: vae (an HFD_AUTOENCODERKL) and text_encoder (an HFT_MODEL). Leave them unplugged and the pipeline uses its own.

What comes out

Two outputs: the HFD_PIPELINE (wire it into HFDRunPipeline or HFDLoadLora) and the pipeline's own VAE as an HFD_AUTOENCODERKL - a nice touch, because it means you rarely need a separate VAE loader.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Yahweasel/ComfyUI-HF-Diffusers

or install ComfyUI-HF-Diffusers through ComfyUI Manager and restart. requirements.txt pins diffusers~=0.36.0; note the author's README caveat that some bleeding-edge models (GLM-Image) want the git versions of both diffusers and transformers - meaning a pip install git+... upgrade in your ComfyUI Python env, which is where dependency hell usually starts.

The honest assessment

Nobody on Reddit is talking about this pack - the exact-phrase search is empty - and its search impressions are nearly all on the VAE loader. It's a niche, developer-flavored tool for people who want to run a model HuggingFace ships but ComfyUI's own loaders haven't caught up to yet. That's also exactly when it's brilliant: when the newest model drops as a diffusers pipeline and every native ComfyUI node chokes on it, this is the one node that already works. The author - a Linux/AMD power user who knows exactly what "second-place software" support looks like - built it to be generic precisely so you're not waiting on a node author per model.

Categoryhuggingface-diffusers

Inputs (8)

NameTypeDefaultDescription
pipeline_classSTRINGAutoPipelineForText2Image
modelSTRINGstabilityai/stable-diffusion-xl-base-1.0
deviceCOMBO3 options: default, auto, cpu
enable_model_cpu_offloadCOMBO2 options: false, true
dtypeCOMBO6 options: default, float32, bfloat16, float16, bitsandbytes_8bit, bitsandbytes_4bit
kwargsSTRING
vaeoptHFD_AUTOENCODERKL
text_encoderoptHFT_MODEL

Outputs (2)

NameTypeDescription
HFD_PIPELINEHFD_PIPELINE
HFD_AUTOENCODERKLHFD_AUTOENCODERKL