装好 SDXL 的 ComfyUI:新手环境与常用节点一次配齐
上一篇我们分析了 SD1.5 生成人物肢体残缺的根源——训练分辨率低、架构容量有限,这不是提示词能弥补的问题。结论很明确:如果目标是稳定产出可用的图,应该把环境升级到 SDXL。这一篇讲具体的操作:如何在 ComfyUI 里搭好一个 SDXL 的运行环境,并把常用节点和插件一次配置到位。
为什么是 SDXL
SDXL(Stable Diffusion XL)是 Stability AI 在 2023 年发布的模型,与 SD1.5 相比有几个实质性的差别:
分辨率从 512 提升到 1024。 SD1.5 的原生训练分辨率是 512×512,直接生成 1024 的图会出现重复肢体、畸变;SDXL 原生就是 1024,细节和构图都有明显提升,放大后也经得起看。
人体结构显著改善。 SDXL 的 UNet 参数量约为 SD1.5 的三倍,配合更大的训练数据,手部、肢体、多人场景的出错率明显下降。上一篇里的残手断脚问题,大部分在 SDXL 下不会出现。
生态成熟。 目前主流的 LoRA、ControlNet、放大方案基本都围绕 SDXL 开发,新模型和新插件也默认适配 SDXL。选择它意味着能直接用上整个生态,而不是在旧架构上自己折腾。
在显存(或 Mac 的统一内存)允许的前提下,SDXL 是当前文生图的合理默认选择。
环境准备:Mac mini M4 + ComfyUI Desktop
实测环境是 Mac mini M4、32G 内存,系统 macOS,使用 ComfyUI Desktop 版本。
推荐直接装 Desktop 版,它自带打包好的 Python 环境和依赖,省去了手动配 conda、装 PyTorch 的过程。安装步骤:
- 从 ComfyUI 官网(comfy.org)下载 macOS 版安装包,拖入 Applications 即完成安装。
- 首次启动会初始化环境、下载基础依赖,等待完成即可。
- 启动后看到节点画布和默认工作流,说明环境就绪。
Mac 上不需要单独装驱动或 CUDA,Apple Silicon 通过 MPS(Metal Performance Shaders)调用 GPU,ComfyUI 会自动识别。唯一的注意点是内存:32G 对 SDXL 够用,但同时也开着大型应用(如浏览器开几十个标签、Xcode)时会有压力,后文避坑部分会讲。
装好后确认一下模型目录结构。ComfyUI Desktop 的模型默认放在用户目录下:
~/Library/Application Support/ComfyUI/models/checkpoints
models/ 下还有 loras/、vae/、controlnet/、upscale_models/ 等子目录,分别对应不同类型的文件。后面装任何模型,先认清它属于哪类、放进哪个目录,这是新手最常出错的环节。
安装 SDXL 模型
基础模型从 HuggingFace 下载,官方仓库是 stabilityai/stable-diffusion-xl-base-1.0。需要的文件是 sd_xl_base_1.0.safetensors,约 6.9G。
除了浏览器手动下载,也可以用 huggingface-cli:
huggingface-cli download stabilityai/stable-diffusion-xl-base-1.0 sd_xl_base_1.0.safetensors --local-dir ~/Library/Application\ Support/ComfyUI/models/checkpoints
国内网络访问 HuggingFace 不稳定的话,可以用镜像站(如 hf-mirror.com),把下载地址的域名替换即可。
下载完成后把文件放进 models/checkpoints/,回到 ComfyUI 刷新一下(快捷键 R,或点右侧面板的刷新按钮),在「Load Checkpoint」节点的下拉列表里就能看到它。
建议再下载一个 refine 模型 sd_xl_refiner_1.0.safetensors(约 6.9G),用于二次精修,可选。硬盘紧张的话先只装 base,跑通流程再说。
核心节点配置
ComfyUI 的工作方式是把节点用线连成一张图。文生图的最小工作流由六个节点组成,每个节点的职责如下:
Load Checkpoint:加载模型。下拉选择 sd_xl_base_1.0.safetensors。它输出三路信号:MODEL 给采样器,CLIP 给提示词编码,VAE 给解码器。
CLIP Text Encode(正向/负向各一个):把自然语言提示词编码成模型能理解的条件向量。一个写你想要的画面,一个写不想要的(如 lowres, bad anatomy, bad hands, watermark)。SDXL 的提示词对自然语言描述的响应比 SD1.5 好,不必堆砌逗号标签。
Empty Latent Image:生成空白潜空间画布。宽度、高度都设 1024,batch size 设 1。这个尺寸是关键——设回 512 会浪费 SDXL 的能力,设到 2048 则容易崩图且速度慢。
KSampler:采样核心。几个参数的含义:
- seed:随机种子,固定它可以复现同一张图。
- steps:采样步数,SDXL 一般 25–35 步,多了收益递减。
- cfg:提示词引导强度,SDXL 推荐 6–8,过高会导致画面过饱和、僵硬。
- sampler_name / scheduler:采样器组合,新手用
dpmpp_2m+karras就很稳。
VAE Decode:把采样得到的潜空间数据解码成可见图像。输入接 KSampler 的 LATENT 和 Checkpoint 的 VAE。
Save Image:保存结果,接 VAE Decode 的 IMAGE 输出。
连线逻辑一句话概括:Checkpoint 出来的三路信号分别喂给提示词编码(CLIP)、KSampler(MODEL)、VAE Decode(VAE);正向/负向提示词接 KSampler 的 conditioning 输入;Empty Latent 接 KSampler 的 latent_image 输入;KSampler 的输出经 VAE Decode 后到 Save Image。连完按右侧 Queue 或快捷键 Cmd+Enter,第一次生成会慢一些(模型加载),之后 M4 上出一张 1024 图大约一到两分钟。
常用插件
基础流程跑通后,按需求装这几类插件(通过 ComfyUI Manager 安装,Desktop 版自带):
ComfyUI Manager:插件管理器,用来搜索、安装、更新其他插件,必装。
ControlNet:控制生成结果的构图、姿势、线稿。对实际干活来说这是最重要的插件——有了它才能「按指定姿势出图」「按草图上色」,而不是碰运气抽卡。模型文件放 models/controlnet/,SDXL 要选对应的 ControlNet 权重。
Upscale / 放大:把 1024 的图放大到 2048 以上用于输出。常用两套方案:模型放大(装 4x-UltraSharp 等放大模型,放 upscale_models/,用 Upscale Image 节点)+ 二次采样细化;或装 Tiled Diffusion 类插件分块放大,省内存。
中英翻译类(如 AIGCLIB、各种 Prompt 助手):SDXL 对英文提示词效果最好,翻译插件可以边写中文边转换,降低门槛,可选。
避坑指南
内存不够。 Mac 上 SDXL 推理大约要占用 12–16G 统一内存。32G 的 M4 正常够用,但如果同时跑很多应用,系统会开始 swap,出图速度骤降甚至直接 killed。对策:生成前关掉大型应用;ComfyUI 设置里开启低显存模式(--lowvram);batch size 保持 1。
模型放错目录。 checkpoint 放进 loras/、ControlNet 模型放进 checkpoints/,刷新后下拉列表里找不到,是新手第一大坑。判断标准:文件名带 checkpoint/base 字样的整图模型进 checkpoints,LoRA 进 loras,ControlNet 进 controlnet。放错了移动过去再刷新即可。
VAE 缺失或错误。 画面发灰、发绿、像蒙了层雾,大概率是 VAE 问题。SDXL base 的 checkpoint 内置了 VAE,一般不需要单独处理;如果用了裁剪过 VAE 的模型版本,需要单独下载 sdxl_vae.safetensors 放进 vae/,并在工作流里用 Load VAE 节点显式指定。
尺寸超限。 直接在 Empty Latent 里设 1536、2048 会导致画面重复、人物克隆、耗时暴增。正确做法是先 1024 出图,再用放大插件放大。SDXL 的原生分辨率是 1024,超过这个值越多,模型越容易失去对整体构图的控制。
相关资源
- ComfyUI 官方:https://github.com/comfyanonymous/ComfyUI (含中文文档,官方安装最稳)
- SDXL 基础模型:HuggingFace 搜
stabilityai/stable-diffusion-xl-base-1.0,国内可用镜像站(hf-mirror.com)加速 - ComfyUI Manager:https://github.com/ltdrdata/ComfyUI-Manager
- 放大模型:HuggingFace 搜
4x-UltraSharp、4x_NMKD-Siax_200k
下一篇将从零跑通一个完整的「文生图」工作流,逐步拆解每个节点的连接逻辑、参数含义和提示词基础,帮你在熟悉环境之后,真正理解 ComfyUI 的工作方式。