压缩 ComfyUI 模型的核心在于减少模型体积和降低显存占用,主要通过模型量化(Quantization)、模型剪枝(Pruning)以及格式转换来实现。对于大多数用户,最推荐且最安全的方法是使用 GGUF 或 FP8 格式。
GGUF 是 llama.cpp 衍生出的格式,现在广泛用于 Stable Diffusion 模型(特别是 SDXL 和 Flux)。它支持极高的压缩率(如 Q4、Q5),且加载速度快,对低显存用户非常友好。
操作步骤:
sd_xl_base_1.0_GGUF。Load Checkpoint 或专门的 Unet Loader (GGUF)(部分版本需要更新 ComfyUI 本体)。.gguf 文件加载即可。优点:体积可缩小 50%-70%,低显存也能跑大模型。
FP8 是 NVIDIA Ada Lovelace 架构(40系显卡)优化的格式,但在 30系及更早的显卡上也能通过软件模拟运行。它是目前替代 FP16 的标准做法。
操作步骤:
fp8 版本(如 flux1-dev-fp8.safetensors)。convert_lora_safetensor_to_fp8.py 或 ComfyUI 自带的转换工具)将 FP16 模型转为 FP8。Load Checkpoint 节点加载 FP8 模型。优点:体积减半(相比 FP16),画质几乎无损,速度通常比 GGUF 快。
如果你有训练基础,可以通过剪枝(Pruning)移除模型中不重要的权重。
sd-scripts (Kohya_ss) 或 ComfyUI-Advanced-LoRA。MBW (Merge Block Weighted) 算法,有时可以生成体积更小但效果不错的模型,但这更多是实验性质。如果你不想去下载现成的压缩包,可以在 ComfyUI 内部进行转换。
推荐插件:ComfyUI_bitsandbytes_NF4
bitsandbytes -> Load Checkpoint (NF4)。如果不想修改模型文件本身,可以通过优化加载方式来减少显存占用:
Model Sampling (Flux) 或 Apply ControlNet 等高级节点时,部分插件支持将模型部分卸载到内存(RAM)。ComfyUI-Manager 搜索 ComfyUI-VideoHelperSuite 或相关内存优化插件。VAE Decode (TAESD)。Auto-delete models after use(使用后自动删除模型),防止多个模型同时占用显存。| 场景 | 推荐方案 | 操作难度 |
|---|---|---|
| 显存 < 8GB | GGUF (Q4/Q5) | 低(直接下载) |
| 显存 8GB - 12GB | FP8 或 GGUF (Q8) | 低 |
| 追求极致画质 | FP16 (不压缩) | 低 |
| 想压缩本地已有的 FP16 模型 | 使用脚本转为 FP8 或 GGUF | 中 |
最简单直接的路径:
去 Civitai 或 HuggingFace 搜索你想要的模型,加上关键词 GGUF 或 fp8,下载后直接拖入 ComfyUI 使用,这是目前最省事的压缩方法。