第一次听说 ComfyUI 的人,十有八九会被那个满屏节点和连线的界面吓一跳。我也不例外,当年从 WebUI 转到 ComfyUI 时,看着密密麻麻的框和线,一度怀疑自己装错了软件。但真正跑通一张图之后,我立刻理解了为什么那么多人愿意被它虐一遍也要换过来。ComfyUI 是 Stable Diffusion 生态里非常出名的节点式图形界面,一句话概括:它把 AI 绘图流程拆成一个个积木块,你想怎么拼就怎么拼,每一步都看得见、调得动。
这篇文章要解决的事情很具体:让一个完全没接触过 ComfyUI 的小白,在 Windows 电脑上从零搭建一套能正常出图的环境。你不需要会写代码,只需要按顺序跟着做,我踩过的坑你基本都能避开。等这套环境跑起来,你会发现它比想象中简单,节点式流程也没有那么高冷,反而能让你看懂 AI 出图每一道工序到底发生了什么。
1. 动手前的准备:先看清手里的显卡再开工
1.1 显卡、驱动和显存:为什么这一步不能省
ComfyUI 的核心计算靠 PyTorch 调用 GPU 来完成,GPU 跑图和 CPU 跑图完全是两个世界。CPU 不是不能跑,但一张图等十分钟起步,和 GPU 上几秒钟出图差距太大,所以先把显卡情况摸清楚。
打开任务管理器,切到“性能”标签,点左侧的“GPU”,看右上角显示的显卡名称。如果显示的是 NVIDIA 开头的型号,比如常见的 RTX 3060、RTX 4060 这类,恭喜你,这篇文章里的所有流程直接适用。如果是 AMD 显卡或者 Intel 核显,也能跑 ComfyUI,但需要额外处理 DirectML 或不同后端的安装,坑会多一些,新手阶段我不建议从这种环境开始。
接着在开始菜单里搜索“cmd”,打开命令行窗口,输入nvidia-smi,回车。这个命令会显示驱动版本、显卡型号和显存占用情况。如果提示找不到命令,说明显卡驱动没有装好,先去设备管理器里看一眼显卡有没有黄色感叹号,有的话把官方驱动装上再继续。
显存大小决定了你能出多高分辨率的图、能不能跑大模型。我的建议是 6GB 起步,8GB 就比较舒服了,4GB 也能跑,但出图尺寸要克制在 512x512 左右,并配合低显存模式使用。这些参数后面会详细讲。
注意:显卡驱动一定要装最新正式版。老驱动和新版 PyTorch 之间偶尔会出现“识别不到 GPU”的诡异问题,而这类问题排查起来最浪费时间。
1.2 Python 与 Git:装对版本能少走两个小时的弯路
ComfyUI 本身是 Python 项目,所以电脑上要有一个可用的 Python。这里最容易踩的坑就是版本。老黄历不建议碰,当前阶段最稳妥的是 3.10 或 3.11 版本,3.9 和更老的版本会让很多依赖装不上,太新的 3.12 或 3.13 也可能遇到某些第三方库还没适配的尴尬。
去 Python 官网下载 Windows 安装包,安装时有一个特别容易忽略的勾选项:“Add Python to PATH”,一定要勾上。不勾的话,你后面在命令行敲python会直接提示找不到命令,还得手动配环境变量,纯属给自己添堵。
Git 是用来拉取 ComfyUI 源码和日后更新的工具。安装时一路 Next 就好,装完在命令行输入git --version能输出版本号就代表成功。有人可能会问,我直接下载压缩包解压行不行?其实也行,但后续更新会很麻烦,ComfyUI 的更新频率不低,用 Git 管理以后一句git pull就能同步到最新版,非常划算。
这里我多说一句虚拟环境的概念。Python 世界里不同项目经常需要不同版本的依赖库,如果不加隔离,A 项目装的库把 B 项目需要的库覆盖掉,就会出现“我什么都没改怎么就坏了”的经典事故。虚拟环境相当于给每个项目单独开了一个房间,房间里的东西互不干扰。ComfyUI 我们也用这种方式管理,后面会讲到具体命令。
2. 下载 ComfyUI 本体:目录结构先看清楚
2.1 拉取代码:一条命令拿到最新版
打开命令行,进入你想放置项目的目录,比如D:\AI,然后输入:
git clone https://github.com/comfyanonymous/ComfyUI.git等待下载完成,会生成一个名为ComfyUI的文件夹。这个文件夹以后就是你所有操作的主战场,我建议把它放在一个路径简单、没有中文和空格的位置,省得后续有些工具因为路径问题闹脾气。
下载完成后进到目录里,第一眼看到的东西有点多,但对新手来说真正需要记住的只有三个:`main.py` 是程序入口文件,`models` 是放各种模型文件的地方,`custom_nodes` 是以后放插件节点的位置。初次运行前,先记住这三个就够了,其他文件暂时不用管。 ### 2.2 创建虚拟环境并安装依赖:把房间先收拾干净 进入 `ComfyUI` 文件夹后,先创建虚拟环境: ```bash python -m venv comfyui_env这个命令会在当前目录下生成一个comfyui_env文件夹,里面是一套独立的 Python 环境。接着激活它:
comfyui_env\Scripts\activate激活成功后,命令行提示符前面会多出(comfyui_env)字样。这时候你敲pip装的任何包都会装进这个虚拟环境里,不会污染系统全局环境。
然后安装项目运行所需的依赖:
pip install -r requirements.txt这一步会下载不少库,耐心等它跑完就行。如果下载速度很慢,可以考虑用国内 PyPI 镜像源加速。在 pip 命令后面加上-i https://pypi.tuna.tsinghua.edu.cn/simple是常见做法,大家可以按需使用。
注意:安装依赖之前,我建议先跳过这一步,直接看下一节,先把 GPU 版的 PyTorch 装好,再回来执行 requirements。顺序不同,结果可能完全不同,原因马上讲。
3. 安装 PyTorch:最容易翻车的一步
3.1 CPU 版和 GPU 版的差异:为什么不能偷懒
现在很多教程会让小白直接复制 requirements 里的安装命令,装完也能跑,但出图速度可能会让人怀疑人生,因为默认装的是 CPU 版本。原因在于 PyTorch 这个深度学习框架分 CPU 版和 GPU 版,CPU 版靠 CPU 算,GPU 版靠显卡算,两者的运行速度差距是几十倍级别的。
所以这里必须多花两分钟,手动安装 GPU 版 PyTorch。
进入虚拟环境后,输入下面的命令(以常见的 CUDA 12.1 版本为例):
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121如果这是你第一次装,会下载一两个 GB 的安装包,耐心等待。装完之后,用下面的命令验证 GPU 是否被正确识别:
python -c "import torch; print(torch.cuda.is_available(), torch.__version__)"看到True和版本号,说明 GPU 版已经就绪。如果输出False,那就是 PyTorch 版本和显卡驱动不匹配,去确认一下驱动是否最新,或者换一个 CUDA 版本的指令重新安装。
装完 PyTorch 之后,再执行之前的pip install -r requirements.txt。这个顺序是有讲究的:如果先装 requirements,它会把 PyTorch 的 CPU 版装进去,之后你再装 GPU 版,大概率会出现冲突,反而不容易排查。
3.2 版本匹配的细节:驱动、CUDA 和 PyTorch 的关系
很多人看到 “CUDA” 这个词就头大,我尽量用生活化的类比解释。CUDA 是显卡厂商提供的计算平台,PyTorch 是依赖这个平台才能调用 GPU 的程序。显卡驱动相当于操作系统和显卡之间的翻译官,它的版本号里已经包含了对 CUDA 的支持能力。
你不需要单独安装完整的 CUDA 开发套件,因为 PyTorch 的安装包已经自带了运行时。只需要保证两件事:显卡驱动足够新,PyTorch 的 CUDA 版本参数不要太超前。如果你有什么不确定的地方,直接选 cu121 或者 cu118 这两个经典的稳定版本,大部分新老驱动都兼容,这是我从多台不同配置的机器上验证过的。
4. 准备模型与首次启动:让软件真正能用
4.1 模型放哪里:目录对应关系决定了你能不能正常出图
ComfyUI 本身是个空壳,真正决定画风和质量的是模型文件。常见的模型类型包括 Checkpoint(大模型)、LoRA(小模型)、VAE(变分自编码器)、ControlNet(控制网络)等。
进入models文件夹,你会发现里面已经按类型分好了子目录:checkpoints、loras、vae、controlnet、embeddings等。新手最容易犯的错误就是模型文件随手乱放,结果在界面上找不到。记住一个原则:在界面上哪个类别的节点里找模型,模型文件就放在对应的文件夹里。比如你在 Load Checkpoint 节点里要加载的模型,必须放在models\checkpoints下。
模型去哪找?去你熟悉的模型社区下载一个后缀为.safetensors的 Checkpoint 文件即可。对于刚入门的朋友,我建议从经典的大模型开始,文件大小通常在 2GB 到 7GB 之间。显存 8GB 以下优先选体积小的版本,等熟悉流程后再上更大规模的模型。
4.2 首次启动:启动脚本、浏览器访问和设置向导
回到ComfyUI根目录,你会看到run_nvidia_gpu.bat这个文件。因为我们已经用虚拟环境安装了所有依赖,理论上可以直接双击运行。不过为了确保用的是虚拟环境里的 Python,更稳妥的做法是在命令行里先激活虚拟环境,然后执行:
python main.py --port 8188看到类似Starting server的日志输出后,浏览器打开http://127.0.0.1:8188,就能看到 ComfyUI 的操作界面了。
新版 ComfyUI 首次进入时,界面上会有一个欢迎和设置引导,可以按提示选择一个适合自己显存的模式。如果没有出现引导,直接看界面左侧和中间的画布区域,通常已经存在一套基础工作流模板。这套模板就是最常见的文生图流程,由几个节点连接而成。
节点式界面听起来很高级,其实用生活的话讲,就像接水管:每个节点负责一个环节,从加载模型、输入提示词、生成潜变量、采样器处理,到最终解码成图片并保存,一环扣一环。新手阶段,你只需要在模板的基础上做调整,不用从零开始搭建。
4.3 加载模型并生成第一张图:跑通闭环
在界面上找到 Load Checkpoint 节点,点击模型名称下拉框,选择你刚刚放进models\checkpoints的模型文件。若想学习更深入的模型加载方式,可以在工作流中通过 Load Checkpoint 和 Load LoRA 组合使用。
接着找到两个文本输入节点:一个用于正向提示词(想要的内容),一个用于负向提示词(不想要的内容)。填上英文描述效果最稳定,比如正向写a beautiful landscape, detailed, 8k,负向写blurry, low quality。不熟悉英文的话可以先借助翻译工具,等环境跑通后再研究怎么用中文更顺手。
看向右侧的 KSampler 节点,它控制采样步数、CFG 值、采样器类型和种子。新手直接保留默认值就好。最后点击界面右上角的 Queue 按钮,或者按 Ctrl+Enter,ComfyUI 就开始干活了。等待几秒到几分钟,一张 AI 图片就会出现在 Save Image 节点旁边。
我第一次在这个界面出图的时候,有种“原来如此”的爽感。整个过程并不是黑盒,我能清楚看到每一步节点在做什么,这比传统界面的几个滑块要直观得多。
5. 新手常见报错与排查速查
5.1 No module named torch:大概率是环境没激活
这个问题我见过太多次。双击run_nvidia_gpu.bat或者直接python main.py,系统用了全局 Python,而全局环境里根本没装 PyTorch。解决办法是先激活虚拟环境再运行,或者干脆在虚拟环境激活状态下重新执行启动命令。如果你不确定当前是否在虚拟环境中,看命令行提示符前缀有没有(comfyui_env)。
5.2 CUDA out of memory:显存不够用
这个报错最扎心,因为它往往出现在你满怀期待点下 Queue 的时候。背后原因通常是分辨率设太高、批次太大,或者模型体积和显存不匹配。解决方案从软到硬排序:先调低出图分辨率,把 Empty Latent Image 节点里的宽高从 1024 降到 768 或 512;再检查批次大小,确保 batch size 是 1;最后可以考虑用低显存模式启动,在启动命令后面加--lowvram参数。
5.3 模型加载失败:文件不完整或放错位置
如果你看到类似 not found 或 load failed 的提示,先检查文件名和目录。很多人下载模型到一半就断了,文件不完整,加载时自然失败。可以看文件大小是否和下载页面标注一致,不一致就重新下载。另外确认文件后缀是.safetensors,如果下载下来的是.ckpt格式,一般也能用,但路径一定要放在正确的目录里。
5.4 端口被占用:8188 被其他程序占用
启动时报端口冲突,可以在启动命令里换一个端口,例如python main.py --port 8888,然后浏览器访问http://127.0.0.1:8888。出现这个问题通常说明后台已经有另一个程序占了默认端口,可能与某些本地服务冲突。
为了方便排查,我整理了一个速查表:
| 现象 | 原因 | 检查方式 | 解决办法 |
|---|---|---|---|
| Python 命令找不到 | 安装时没勾选 Add to PATH | 命令行输入 python | 重新安装并勾选 PATH 选项 |
| 出图极慢 | CPU 版 PyTorch | 验证命令输出 False | 按第三节装 GPU 版 |
| 显存溢出 | 分辨率太高或批次太大 | 查看日志中的分辨率 | 降低分辨率和批次 |
| 模型列表为空 | 模型放错目录 | 查看 models 目录结构 | 放到 checkpoints 子目录 |
| 自定义节点报错 | 第三方节点依赖缺失 | 看报错中的模块名 | 安装对应依赖或移除节点 |
| 界面打不开 | 服务没启动或端口错误 | 检查命令行日志 | 确认 127.0.0.1:8188 |
还要学会看日志。ComfyUI 控制台里的红色文字基本就是错误信息,新手可以先看最后一行,那通常包含最直接的提示。不要被一大段英文吓住,很多报错翻译过来就是“找不到文件”“内存不够”“缺少模块”这三类问题。
6. 环境用起来之后的进阶思路
6.1 安装 ComfyUI-Manager:管理插件的钥匙
等你跑通第一张图,接下来一定会遇到需要安装自定义节点(也就是插件)的情况。手动装插件要处理文件夹、依赖、版本匹配,挺麻烦的。ComfyUI-Manager 就是专门解决这个痛点的管理器,它相当于 ComfyUI 的插件商店。
安装方式不复杂:在custom_nodes目录下执行git clone拉取它的仓库地址,然后重启 ComfyUI,界面右侧会出现一个管理菜单。通过它可以搜索、安装、更新各种自定义节点,也能一键安装缺失的依赖。我装完以后第一件事就是把常用节点都装齐,省去了大量手工排查时间。
6.2 显存优化与加速参数:让入门环境更稳
如果你只有 6GB 或 4GB 显存,有一些必要的优化措施。启动时加上--medvram或--lowvram参数,可以让 ComfyUI 更节制地使用显存,代价是速度略慢一些,但稳定性大幅提升。保持 batch size 为 1,优先出小图再考虑放大。采样步数控制在 20 到 30 之间就够了,多加步数对画质提升有限,消耗的时间和显存却线性增长。
还有一个容易被忽视的点:显卡驱动控制面板里的一些全局 3D 设置会影响 PyTorch 调度,建议恢复默认。我遇到过一次莫名其妙的显存报错,排查来排查去,最后发现是驱动面板开了某个画质增强功能,关掉后问题消失。
6.3 从出图到更复杂的工作流:这只是开始
ComfyUI 真正的威力在于充分控制。当你熟悉基础流程后,可以尝试给工作流加 ControlNet 功能来控制构图,加 LoRA 来调整人物风格,加 AnimateDiff 系列节点让静态图动起来,还能很多人用来做视频生成。它足够灵活,也足够复杂,但它的复杂度是“透明的”而非“隐藏的”,每个节点都可以拆开看、单独调。
如果你不满足于只用自己的显卡跑,也可以考虑部署到云服务器上,这样无论本机硬件多弱,都能通过浏览器使用完整的 ComfyUI 能力。不过涉及账号、队列、并发这些问题,就要考虑如何维护环境了。
我做这个环境搭建最大的体会是,ComfyUI 的上手成本并不是节点数量的问题,而是第一套环境能不能顺利跑起来。只要跨过那个门槛,后面都是顺水推舟。如果你照着这篇文章操作,第一次运行就出图了,那恭喜你已经跨过了最关键的坎;如果中途遇到问题,回头看报错日志,再对照速查表逐项排查,多半能自己解决。