Skip to content

常见模型路径:HuggingFace 文件与 ComfyUI models 目录对照 ​

用 ComfyUI 玩 AI 绘画时,经常需要从 HuggingFace 下载模型,但下载完不知道该放进 ComfyUI 的哪个文件夹,放进去了又报错。本文帮你搞清楚 HuggingFace 里的模型文件都是什么,以及它们分别该放到 ComfyUI models 目录下的哪个子文件夹。


一、先认识 HuggingFace 常见的文件类型 ​

一个模型仓库里通常混合着「核心模型文件」和「配置文件」,先分清它们:

文件 / 目录是什么典型文件名
全量 Checkpoint把 UNet + 文本编码器 + VAE 打包成一个文件,开箱即用sd_xl_base_1.0.safetensors
unet/ 目录拆分式的扩散模型本体(新版大模型常见)unet/diffusion_pytorch_model.safetensors
vae/ 目录VAE 解码器(把潜空间图像还原成像素)vae/diffusion_pytorch_model.safetensors
text_encoder/ 等文本编码器(把提示词转成向量),拆分的叫 CLIP-L / CLIP-G / T5text_encoder/model.safetensors
clip_vision/ 或 image_encoder/图像编码器(IP-Adapter 等用)clip_vision/model.safetensors
controlnet/ 目录ControlNet 控制网络(控制姿势、线稿等)controlnet/diffusion_pytorch_model.safetensors
lora/ 或 *.lora.safetensorsLoRA 低秩适配器(给模型做风格微调的小文件)pytorch_lora_weights.safetensors
embeddings/ 目录文本反演 Embedding(特殊提示词,如 EasyNegative)embeddings/easynegative.pt
config.json、model_index.json模型配置说明,推理时一般不需要—
tokenizer/、vocab.json、merges.txt分词器文件,一般不需要单独下载—

二、与 ComfyUI models 文件夹的对应关系 ​

ComfyUI 的 models 目录按用途分了多个子文件夹,把上面每种文件对号入座:

HuggingFace 上的文件 / 目录对应 ComfyUI 目录说明
根目录的全量 .safetensors(如 sd_xl_base_1.0.safetensors)models/checkpoints/完整大模型,放入后可直接用「Load Checkpoint」节点加载
unet/ 下的权重models/unet/新版模型(如 SD3.5、Flux、HunyuanVideo)拆出的 UNet 本体
vae/ 下的权重models/vae/放入后可用「Load VAE」节点加载
text_encoder/、text_encoder_2/models/clip/CLIP-L / CLIP-G 文本编码器
text_encoder_3/(T5,常见多分片)models/text_encoders/新版模型的 T5-XXL 文本编码器,如 t5xxl_fp16.safetensors
clip_vision/、image_encoder/models/clip_vision/图像编码器(IP-Adapter、Flux 参考图等用到)
controlnet/ 下的权重models/controlnet/控制网络
lora/ 或名称带 .lora 的权重models/loras/LoRA 模型
embeddings/ 下的 .pt / .safetensorsmodels/embeddings/文本反演 Embedding
RealESRGAN、ESRGAN、*upscaler*models/upscale_models/图像放大模型
config.json、model_index.json、tokenizer/、vocab.json 等不需要放入配置 / 分词器文件,仅下载模型权重即可,不用拷进 ComfyUI

三、典型模型结构举例 ​

例 1:传统大模型(如 Stable Diffusion XL 全量版) ​

仓库根目录就是一个大文件 sd_xl_base_1.0.safetensors(约 7GB):

├── sd_xl_base_1.0.safetensors   → 放入 models/checkpoints/
├── README.md
└── config.json                   → 不需要

例 2:拆分型新模型(如 Flux、SD3.5) ​

模型被拆成三部分,三部分都要分别下载,放到对应目录:

├── diffusion_pytorch_model.safetensors      → models/unet/
├── text_encoder_3/model-00001-of-00002.safetensors ... → models/text_encoders/(合并或转存为 t5xxl_fp16.safetensors)
├── clip_vision/model.safetensors            → models/clip_vision/
└── vae/diffusion_pytorch_model.safetensors  → models/vae/

拆分型模型在 ComfyUI 里需要配合「Load Diffusion Model / Load CLIP / Load VAE」三个节点分别加载,而不是一个节点搞定。

例 3:扩展类(LoRA / ControlNet / Embedding) ​

├── lora/xxx_lora.safetensors   → models/loras/
├── controlnet/xxx.safetensors  → models/controlnet/
└── embeddings/yyy.pt           → models/embeddings/

四、用 Model Downloader 下载并归档 ​

  1. 在模型详情页的文件列表中,按上表勾选需要的文件(拆分型模型记得把 unet / vae / 文本编码器都勾上)。
  2. 下载时建议把保存路径直接设为 ComfyUI 的对应子文件夹,例如 D:\ComfyUI\models\loras,下载完即到位。
  3. 下载完成后,在「下载管理」里点「文件夹中显示」可快速核对文件是否在正确位置。

五、常见问题 ​

Q:模型放进 ComfyUI 后加载报错 / 提示 missing keys? 大概率是文件放错目录,或拆分型模型只下了其中一部分。对照上表检查路径,并确认 unet、vae、文本编码器三部分都齐全。

Q:全量 Checkpoint 能拆开用吗? 能,但没必要。全量文件直接放 models/checkpoints/ 用「Load Checkpoint」加载最省事;只有遇到拆分型模型时才需要分开处理。

Q:配置文件(config.json、tokenizer 等)要下载吗? 一般不需要。ComfyUI 加载的是权重文件,配置类文件仅在使用 Python 原生 Diffusers 推理时才需要。

Q:模型文件已经放到ComfyUI中models对应的子文件夹,但是工作流仍然报错,怎么解决? 重启ComfyUI服务或者在ComfyUI画布页面,按键盘「R」键进行刷新。