ComfyUI依赖安装指南
在尝试搭建一个可视化AI生成环境时,很多人会发现:工具本身功能强大,但第一步——“如何让它跑起来”——却成了最大障碍。ComfyUI 作为当前最受欢迎的节点式 Stable Diffusion 工作流引擎,以其极高的灵活性和可复现性赢得了开发者与创作者的青睐。它把图像生成的每一步都拆解成独立模块,让你像搭积木一样构建复杂的生成逻辑。
但问题也随之而来:当你兴致勃勃地克隆完代码、双击运行脚本,终端却抛出一连串红色错误——ModuleNotFoundError、No module named 'torch'……这些报错背后,其实指向同一个根源:Python 依赖没有正确安装。
这并不是你的错。ComfyUI 集成了大量深度学习生态中的关键库(PyTorch、diffusers、xformers、onnxruntime 等),而这些库对 Python 版本、CUDA 支持、操作系统平台都有严格要求。稍有不慎,就会陷入“明明显示安装成功,启动就崩溃”的怪圈。
别担心,这篇文章不讲空话,只聚焦一件事:手把手带你走过从零到启动 ComfyUI 的全过程,并帮你避开那些常见的“坑”。
我们先来看一个典型场景:你刚下载了一个第三方打包版 ComfyUI(比如_windows文件夹结构),双击run.bat却提示缺少 pip 或无法导入 torch。这时候你意识到,必须手动干预依赖安装过程。那么,到底该怎么做?
首先得明白一点:使用哪个 Python 解释器,决定了依赖装去哪。如果你用的是系统全局 Python,那包会被安装到系统的 site-packages;但大多数一键包自带了嵌入式 Python(portable Python),所有依赖必须通过这个“内置解释器”来安装,否则即使你用pip install torch装好了,启动时依然找不到。
所以第一步,不是急着敲命令,而是确认你要用的 Python 在哪里。
源码获取与目录结构解析
无论你是从官方仓库克隆,还是用了某个整合包,核心起点都是 comfyanonymous/ComfyUI 这个项目。执行以下命令即可获取源码:
git clone https://github.com/comfyanonymous/ComfyUI.git进入目录后你会看到几个关键文件和子目录:
main.py:程序入口,运行它就能启动服务。requirements.txt:最重要的文件之一,列出了所有必需的 Python 包及其版本约束。nodes/:存放自定义节点插件的地方。models/:你需要在这里放置模型文件(如 SDXL、LoRA、ControlNet 模型等)。web/:前端界面资源,包括 HTML 和 JavaScript。
其中requirements.txt是整个依赖管理的核心。打开它你会发现类似这样的内容:
torch==2.0.1+cu118 torchvision==0.15.2+cu118 diffusers transformers ftfy safetensors xformers ...这些就是 ComfyUI 正常运行所依赖的第三方库。有些带+cu118后缀的,说明它们是针对 CUDA 11.8 编译的 GPU 加速版本,不能随便替换。
接下来的问题是:怎么安装这些依赖?
最常见的情况有两种:一种是你自己安装了 Python 并准备从头配置;另一种是使用别人打包好的版本,自带便携式 Python。两者的操作略有不同。
使用系统 Python(适合初学者)
假设你已经安装了Python 3.10 或 3.11(强烈建议不要用 3.12+,目前很多 AI 库尚未完全兼容),并且已加入系统 PATH。
打开终端(CMD / PowerShell / Terminal),进入 ComfyUI 根目录:
cd D:\ComfyUI python -m pip install -r requirements.txt这条命令会让 pip 自动读取requirements.txt中的所有包,并依次下载安装。
如果你在国内,推荐加上国内镜像源加速下载:
python -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple清华源、阿里云、豆瓣源都可以,选择速度最快的即可。
使用嵌入式 Python(适用于一键包用户)
更常见的情形是,你下载的是像ComfyUI_windows_portable这类整合包。这类包通常包含两个主要目录:
ComfyUI\_windows\ ├── python\_embeded\ ← 内置 Python ├── ComfyUI\ ← 主代码 └── run.bat此时你必须使用_embeded目录下的 Python 来执行安装,否则依赖会装错地方。
具体步骤如下:
- 打开命令行,先进入
python\_embeded目录; - 然后调用该目录下的
python.exe,并指定requirements.txt的完整路径。
例如:
D:\ComfyUI\_windows\python\_embeded> python -m pip install -r D:\ComfyUI\_windows\ComfyUI\requirements.txt注意这里的关键点:
-python指的是当前目录下的解释器;
--m pip是以模块方式运行 pip,避免路径冲突;
--r后面跟的是主项目的requirements.txt,路径一定要写全。
这个过程可能持续 5 到 15 分钟,尤其是首次安装 PyTorch 时,因为它体积巨大(超过 2GB)。你会看到类似输出:
Downloading torch-2.0.1+cu118-cp310-cp310-win_amd64.whl (2.0 MB) ... Successfully installed torch-2.0.1+cu118 ...一旦完成,就意味着基础依赖已经到位。
当然,现实往往不会这么顺利。下面是一些高频出现的问题及应对策略。
常见问题与实战解决方案
❌No module named 'pip'
这是嵌入式 Python 最常见的问题之一——某些精简版 Python 发行包默认不带 pip。
解决方法很简单:
python -m ensurepip --upgrade这条命令会自动为你安装或升级 pip。之后再执行正常的依赖安装流程即可。
❌Could not find a version that satisfies the requirement
通常是网络问题导致无法连接 PyPI 官方源。特别是在安装torch或xformers时容易失败。
有两个解决思路:
一是换国内镜像源:
python -m pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/二是分步安装,优先手动处理最难搞的包:
# 先单独安装 PyTorch + CUDA 支持 python -m pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118 # 再安装其余依赖(跳过已存在的依赖) python -m pip install -r requirements.txt --no-deps这里的--no-deps表示“不安装依赖项”,适合你在已经装好核心框架的情况下,快速补全其他辅助库。
❌ 安装过程中报MemoryError或中断
尤其是在低内存设备上(如只有 8GB RAM),安装大型 wheel 包时很容易因内存不足导致解压失败。
建议采取以下措施:
- 关闭不必要的后台程序;
- 添加
--no-cache-dir参数减少临时文件占用:
python -m pip install -r requirements.txt --no-cache-dir或者干脆分批安装:
# 先装基础库 python -m pip install numpy pillow matplotlib ftfy # 再装深度学习三件套 python -m pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu118 # 最后装生态库 python -m pip install diffusers transformers accelerate safetensors xformers这样能有效降低单次内存压力。
❌ 安装成功但启动时报ModuleNotFoundError
这种情况最让人抓狂:明明说“Successfully installed”,一运行却提示找不到模块。
根本原因往往是:你用了 A 的 Python 安装,却用 B 的 Python 启动。
举个例子:
- 你在系统终端里用全局 Python 装了依赖;
- 但一键包里的run.bat调用的是_embeded\python.exe,它根本不知道你之前装了啥。
验证方法很简单:在同一环境下运行 Python 并尝试导入关键模块:
python >>> import torch >>> print(torch.__version__) >>> import comfy.utils如果报错,说明当前解释器找不到这些包。
修复方案也很直接:
- 统一使用同一个 Python 环境;
- 如果是一键包,请确保所有操作都在其内置 Python 下完成;
- 可检查sys.path输出,确认包是否真的被加载:
import sys print(sys.path)确保输出中包含了正确的site-packages路径。
对于进阶用户,还有一个更优雅的选择:使用虚拟环境(venv)隔离依赖。
这不仅能避免污染系统 Python,还能让你为不同项目维护独立的依赖版本。
操作流程如下:
# 进入 ComfyUI 根目录 cd D:\ComfyUI # 创建名为 venv 的虚拟环境 python -m venv venv # 激活虚拟环境(Windows) venv\Scripts\activate激活后命令行前会出现(venv)提示符,表示你现在处于隔离环境中。
然后正常安装依赖:
(venv) D:\ComfyUI> pip install -r requirements.txt所有包都会被安装到venv\Lib\site-packages下,完全不影响系统或其他项目。
启动服务也只需在激活状态下运行:
(venv) D:\ComfyUI> python main.py --listen 0.0.0.0 --port 8188浏览器访问 http://localhost:8188 即可进入 UI 界面。
完成后输入deactivate即可退出虚拟环境。
最后,别忘了性能优化的关键一步:启用 GPU 加速。
ComfyUI 默认会尝试使用 CUDA 加速推理,前提是你的 PyTorch 版本支持且显卡驱动正常。
启动后查看日志是否有类似信息:
[INFO] Using device: cuda [INFO] Total VRAM: 12288 MB也可以在 Python 中验证:
import torch print(torch.cuda.is_available()) # 应返回 True print(torch.version.cuda) # 显示 CUDA 版本,如 11.8若返回 False,请检查:
- 是否安装了带+cuXXX后缀的 PyTorch;
- NVIDIA 驱动是否更新;
- 是否启用了独立显卡(笔记本用户尤其注意)。
此外,强烈建议安装xformers:
pip install xformers --index-url https://download.pytorch.org/whl/cu118它可以显著降低注意力机制的显存消耗,提升生成速度,尤其在处理高分辨率图像或多 ControlNet 场景下效果明显。
但要注意版本匹配问题:
- xformers 对 PyTorch 和 CUDA 版本非常敏感;
- 不要盲目追求最新 nightly 构建;
- 推荐使用与 PyTorch 版本对应的稳定 release。
回顾整个流程,我们可以总结出一条清晰的行动路线:
| 步骤 | 操作要点 |
|---|---|
| 1 | 获取源码:git clone https://github.com/comfyanonymous/ComfyUI.git |
| 2 | 确定 Python 环境:使用系统 Python 或嵌入式 Python,保持一致 |
| 3 | 安装依赖:pip install -r requirements.txt,必要时加镜像源 |
| 4 | 处理异常:分步安装、更换源、清理缓存 |
| 5 | 验证环境:导入 torch、comfy.utils 测试可用性 |
| 6 | 启动服务:python main.py,观察日志输出 |
当你看到浏览器中那个熟悉的节点编辑界面缓缓加载出来时,你就已经迈过了最关键的门槛。
ComfyUI 的真正魅力,不在安装过程,而在于它赋予你的控制力。你可以精确调度每一个生成环节,实现批量渲染、条件分支、动态参数切换……这些高级玩法的前提,就是一个干净、稳定、可控的运行环境。
定期关注 ComfyUI 官方仓库 的更新,适时同步requirements.txt和核心库版本,才能让工作流始终保持最佳状态。
现在,去构建属于你的 AI 工作流吧。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考