ComfyUI 模型路径速查
ComfyUI 模型文件路径指南,说明 Checkpoint、LoRA、VAE、ControlNet、Upscale 等文件夹用途,避免模型加载失败和下拉框空白。
一句话结论
模型放置只认类型,不认后缀。Checkpoint、LoRA、VAE、ControlNet、CLIP Vision、Upscale、Embedding 分别进不同目录,放错就会空下拉框或红节点。
这篇是模型基础链路的“地图页”:先用它判断文件应该放哪里,再回到 Checkpoint、LoRA、VAE、ControlNet 各自页面理解它们为什么这样放。不要把路径问题、模型家族问题、节点缺失问题混成一个问题处理。
模型排错链路
你现在处在第二步:确认文件类型和目录。完整顺序是:
- 先确认模型家族:SD1.5、SDXL、Flux 或其他体系。
- 再确认文件类型和目录:Checkpoint、LoRA、VAE、ControlNet 不要混放。
- 如果文件不出现在节点下拉框,去
/guides/model-dropdown-empty/。 - 如果下拉框能选但 Queue 后报错,去
/guides/model-load-failed/。 - 模型栈正确后,再调提示词、采样器、CFG 和画质。
完整入口见:/guides/comfyui-model-troubleshooting/。
先按模型系统分层理解
| 层级 | 对应文件/节点 | 先解决什么问题 |
|---|---|---|
| 基础模型 | Checkpoint / diffusion model / text encoder | 这套工作流属于 SD1.5、SDXL、Flux 还是其他家族 |
| 叠加模型 | LoRA、Embedding、IPAdapter | 是否需要角色、风格、概念或参考图特征 |
| 解码与后处理 | VAE、Upscale model | 颜色、细节、放大质量是否正常 |
| 结构控制 | ControlNet、CLIP Vision 等 | 姿势、边缘、深度、参考图约束是否生效 |
排查顺序建议是:先确认基础模型能加载,再确认 LoRA/VAE/ControlNet 各自进了正确目录,最后才处理提示词、采样器和画质。路径错了,后面的所有调参都没有意义。
根目录先对准
先找到 ComfyUI 根目录。常见位置如下:
| 安装方式 | ComfyUI 根目录示例 |
|---|---|
| Windows Portable | D:\AI\ComfyUI_windows_portable\ComfyUI\ |
| Linux git 安装 | /home/你的用户名/ai/ComfyUI/ |
| WSL2 | /home/你的用户名/ai/ComfyUI/ |
| 云服务器 | /opt/ComfyUI/ 或 /home/ubuntu/ComfyUI/ |
后面所有路径都以这个根目录为准。
所有模型都在 ComfyUI/models/ 下,但目录不同。.safetensors 不一定是 Checkpoint,也可能是 LoRA。
常见模型路径总表
| 模型类型 | Windows 路径 | Linux 路径 | 常见扩展名 | 对应节点 |
|---|---|---|---|---|
| Checkpoint | ComfyUI\models\checkpoints\ | ComfyUI/models/checkpoints/ | .safetensors, .ckpt | Load Checkpoint |
| LoRA | ComfyUI\models\loras\ | ComfyUI/models/loras/ | .safetensors, .pt | Load LoRA |
| VAE | ComfyUI\models\vae\ | ComfyUI/models/vae/ | .safetensors, .pt | Load VAE |
| ControlNet | ComfyUI\models\controlnet\ | ComfyUI/models/controlnet/ | .safetensors, .pth | ControlNet Loader |
| CLIP Vision | ComfyUI\models\clip_vision\ | ComfyUI/models/clip_vision/ | .safetensors, .bin | CLIP Vision Loader |
| IPAdapter | ComfyUI\models\ipadapter\ | ComfyUI/models/ipadapter/ | .safetensors, .bin | IPAdapter Model Loader |
| Upscale Model | ComfyUI\models\upscale_models\ | ComfyUI/models/upscale_models/ | .pth, .pt | Upscale Model Loader |
| Embedding | ComfyUI\models\embeddings\ | ComfyUI/models/embeddings/ | .pt, .safetensors | 文本提示词触发 |
| Diffusion Model | ComfyUI\models\diffusion_models\ | ComfyUI/models/diffusion_models/ | .safetensors | UNet/Diffusion Loader |
| Text Encoder | ComfyUI\models\text_encoders\ | ComfyUI/models/text_encoders/ | .safetensors | CLIP/Text Encoder Loader |
注意:部分新模型工作流会使用 diffusion_models、text_encoders、vae 分离加载,不再是单个 Checkpoint。遇到 Flux、SD3、Hunyuan 等工作流时尤其要看作者说明。
具体怎么判断文件类型
1. 看下载页面标题
下载页通常会写:
Checkpoint/Base Model:放 checkpoints。LoRA:放 loras。VAE:放 vae。ControlNet:放 controlnet。Upscaler:放 upscale_models。CLIP Vision:放 clip_vision。
不要只看扩展名。LoRA 和 Checkpoint 都可能是 .safetensors。
2. 看文件大小
大致参考:
| 类型 | 常见大小 |
|---|---|
| SD1.5 Checkpoint | 2GB - 7GB |
| SDXL Checkpoint | 6GB - 13GB |
| LoRA | 10MB - 500MB |
| VAE | 100MB - 400MB |
| ControlNet | 700MB - 3GB |
| Upscale Model | 10MB - 300MB |
如果你下载到一个几 KB 的 .safetensors,大概率是网页、Git LFS 指针文件或下载失败,不是真模型。
3. 看工作流节点名称
工作流里如果节点叫:
Load Checkpoint:需要 checkpoints。Load LoRA:需要 loras。Load VAE:需要 vae。Load ControlNet Model:需要 controlnet。CLIP Vision Loader:需要 clip_vision。
节点名称就是最直接的提示。

先确认当前运行的 ComfyUI 能读到对应目录。

只记这一条:所有模型都进 ComfyUI/models/,但 Checkpoint、LoRA、VAE、ControlNet 必须分别放进自己的子目录。
小白先记这 4 个最常用目录
checkpoints:主模型,最先要会。loras:角色/风格补丁,最容易和主模型搞混。vae:颜色和解码,模型看着灰、脏时会用到。controlnet:控制姿势、边缘、深度图时才用。
先把这四个记住,已经能避开大多数“下拉框为空”的问题。
Windows 示例
假设你的 ComfyUI 在:
D:\AI\ComfyUI_windows_portable\ComfyUI\
那么模型应该这样放:
D:\AI\ComfyUI_windows_portable\ComfyUI\models\checkpoints\realisticVision.safetensors
D:\AI\ComfyUI_windows_portable\ComfyUI\models\loras\my-character-lora.safetensors
D:\AI\ComfyUI_windows_portable\ComfyUI\models\vae\vae-ft-mse.safetensors
D:\AI\ComfyUI_windows_portable\ComfyUI\models\controlnet\control_v11p_sd15_canny.pth
放完后点击网页里的 Refresh,或者重启 run_nvidia_gpu.bat。
Linux 示例
假设你的 ComfyUI 在:
/home/ubuntu/ai/ComfyUI/
模型路径就是:
/home/ubuntu/ai/ComfyUI/models/checkpoints/model.safetensors
/home/ubuntu/ai/ComfyUI/models/loras/style.safetensors
/home/ubuntu/ai/ComfyUI/models/vae/vae.safetensors
/home/ubuntu/ai/ComfyUI/models/controlnet/controlnet.safetensors
Linux 区分大小写。models/LoRAs、models/Loras、models/loras 是不同目录。建议完全使用 ComfyUI 默认的小写目录。
新手最常犯的 5 个放错方式
- 把所有
.safetensors都扔进checkpoints。 - 把 LoRA 放进
input目录。 - 看到
Checkpoint以外的文件名就以为是垃圾文件。 - 下载完没有解压,文件还停留在压缩包里。
- 文件名里有
model两个字就默认它能进主模型目录。
文件放好但下拉框没有怎么办
按顺序检查:
- 你是否放在了当前正在运行的 ComfyUI 目录里?很多人电脑里有两套 ComfyUI。
- 文件是否还在压缩包里?必须解压成真实文件。
- 文件扩展名是否被系统隐藏,比如实际叫
model.safetensors.txt。 - 页面是否刷新了模型列表?不行就重启 ComfyUI。
- 节点类型是否正确?LoRA 不会出现在 Load Checkpoint 里。
- 控制台是否有
invalid header、metadata、shape mismatch报错?
多套模型目录怎么管理
不建议新手一开始用符号链接、网络盘或共享目录。先用默认目录跑通。
进阶用户可以用 ComfyUI 的 extra_model_paths.yaml 指向统一模型库,但要注意:
- YAML 缩进必须正确。
- Windows 路径建议用
/或转义反斜杠。 - 改完要重启 ComfyUI。
- 共享目录权限不足会导致模型读取失败。
常见错误
LoRA 放进 checkpoints
结果:Load LoRA 找不到,Load Checkpoint 加载可能报错。
处理:移动到 models/loras。
ControlNet 只装节点没放模型
结果:节点存在,但模型下拉框为空。
处理:下载对应 SD1.5 或 SDXL 的 ControlNet 模型,放 models/controlnet。
下载了 Git LFS 指针文件
表现:文件只有几 KB,内容可能是:
version https://git-lfs.github.com/spec/v1
处理:从支持大文件下载的页面重新下载,不要右键保存网页。
验证是否成功
- Checkpoint 能在 Load Checkpoint 下拉框看到。
- LoRA 能在 Load LoRA 下拉框看到。
- VAE 能在 Load VAE 下拉框看到。
- ControlNet 模型能在对应 ControlNet 节点看到。
- Queue Prompt 时不再报
file not found或invalid header。