【debug】安装ComfyUI过程中的问题
ComfyUI 是一款强大的模块化 Stable Diffusion UI,其安装过程通常比较直接。然而,使用官方教程遇到了一些bug,记录一下解决方案。
0. av安装失败
Collecting av>=14.2.0 (from -r requirements.txt (line 28))Using cached av-15.0.0.tar.gz (3.8 MB)Installing build dependencies ... doneGetting requirements to build wheel ... errorerror: subprocess-exited-with-error× Getting requirements to build wheel did not run successfully.│ exit code: 1╰─> [17 lines of output]Traceback (most recent call last):File "/root/anaconda3/envs/comfyui2/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>main()File "/root/anaconda3/envs/comfyui2/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in mainjson_out["return_val"] = hook(**hook_input["kwargs"])File "/root/anaconda3/envs/comfyui2/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheelreturn hook(config_settings)File "/tmp/pip-build-env-kuibb5uf/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 331, in get_requires_for_build_wheelreturn self._get_build_requires(config_settings, requirements=[])File "/tmp/pip-build-env-kuibb5uf/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 301, in _get_build_requiresself.run_setup()File "/tmp/pip-build-env-kuibb5uf/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 512, in run_setupsuper().run_setup(setup_script=setup_script)File "/tmp/pip-build-env-kuibb5uf/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 317, in run_setupexec(code, locals())File "<string>", line 21, in <module>ValueError: You are not using a virtual environment[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.[notice] A new release of pip is available: 25.0.1 -> 25.2
[notice] To update, run: pip install --upgrade pip
error: subprocess-exited-with-error× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.note: This error originates from a subprocess, and is likely not a problem with pip.
换成conda
conda install -c conda-forge av
1. Python 环境问题:Python not found
或版本不兼容
问题描述: 运行 ComfyUI 启动脚本时,系统提示找不到 Python 或者 Python 版本不符合要求(例如,要求 Python 3.10-3.11,但你安装的是其他版本)。
解决方案:
- 确认 Python 安装及路径: 确保你已经安装了 Python 3.10.x 或 3.11.x。你可以在命令行中输入
python --version
或python3 --version
来检查当前系统的 Python 版本。 - 添加到环境变量: 如果 Python 已安装但系统找不到,可能是没有将其添加到 PATH 环境变量中。
- Windows: 在安装 Python 时,勾选 “Add Python to PATH” 选项。如果已经安装,需要手动添加到系统环境变量。
- Linux/macOS: 通常情况下,安装 Python 后会自动配置好路径。如果遇到问题,可以检查你的
~/.bashrc
,~/.zshrc
或~/.profile
文件中是否有正确的 Python 路径配置。
- 使用虚拟环境(推荐): 为了避免与其他 Python 项目的环境冲突,强烈建议为 ComfyUI 创建一个独立的虚拟环境。
激活虚拟环境后,再按照官方教程安装 ComfyUI 的依赖。python -m venv comfyui_env # 创建虚拟环境 source comfyui_env/bin/activate # 激活虚拟环境 (macOS/Linux) # comfyui_env\Scripts\activate # 激活虚拟环境 (Windows)
2. pip
依赖安装失败:ModuleNotFoundError
或 Could not find a version that satisfies the requirement
问题描述: 在执行 pip install -r requirements.txt
命令时,出现模块找不到或无法满足依赖要求的错误。这通常是由于网络问题、PyPI 源不稳定或某些包与当前 Python 版本不兼容导致的。
解决方案:
- 更换 PyPI 源: 尝试使用国内的镜像源,可以显著提高下载速度和成功率。
其他常用的国内源包括阿里云、豆瓣等。pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple # 或者配置默认源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
- 检查网络连接: 确保你的网络连接稳定,并且没有防火墙或代理阻止
pip
访问 PyPI。 - 手动安装特定依赖: 如果某个特定的包安装失败,可以尝试单独安装它,并查看详细的错误信息以进行排查。
pip install package_name
- 更新 pip: 确保你的
pip
版本是最新的。python -m pip install --upgrade pip
3. GPU 驱动或 CUDA Toolkit 问题:No GPU detected
或 CUDA out of memory
问题描述: ComfyUI 在启动或生成图像时提示找不到 GPU,或者出现 CUDA 内存不足的错误,即使你的显卡支持 CUDA。
解决方案:
-
确认 GPU 驱动: 确保你的 NVIDIA 显卡驱动是最新版本,并且与你的操作系统兼容。可以前往 NVIDIA 官网下载最新驱动。
-
安装正确版本的 CUDA Toolkit: ComfyUI 及其依赖(如 PyTorch)通常需要特定版本的 CUDA Toolkit。请查阅 ComfyUI 官方文档或其
requirements.txt
文件中关于 PyTorch 的版本要求,然后安装对应或兼容的 CUDA Toolkit。- 重要提示: PyTorch 官方网站提供了安装命令,其中包含了 CUDA 版本信息。例如,要安装支持 CUDA 11.8 的 PyTorch:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
- 重要提示: PyTorch 官方网站提供了安装命令,其中包含了 CUDA 版本信息。例如,要安装支持 CUDA 11.8 的 PyTorch:
-
检查 PyTorch 安装: 确认 PyTorch 已正确安装并能检测到 CUDA。在 Python 环境中运行:
import torch print(torch.cuda.is_available()) print(torch.cuda.current_device()) print(torch.cuda.get_device_name(0))
如果
torch.cuda.is_available()
返回False
,则说明 PyTorch 未能正确检测到 CUDA。 -
调整批处理大小或模型: 如果出现 “CUDA out of memory” 错误,可以尝试降低图像生成时的批处理大小(batch size),或者使用更小、更优化的模型。
4. 模型下载问题:下载速度慢或中断
问题描述: 下载 Stable Diffusion 模型(checkpoint、LoRA、VAE 等)时速度非常慢,或者下载过程中经常中断。
解决方案:
- 使用下载工具: 对于大型模型文件,使用专业的下载工具(如迅雷、IDM 或
aria2c
)可以显著提高下载速度和断点续传能力。 - 选择合适的下载源: 许多模型托管在 Hugging Face 或 Civitai 等平台。如果官方下载速度慢,可以尝试寻找国内镜像站点或社区提供的下载链接(请注意来源的可靠性)。
- 手动下载并放置: 可以先手动下载模型文件,然后将其放置到 ComfyUI 目录结构中的相应位置(例如,
ComfyUI/models/checkpoints
、ComfyUI/models/loras
等)。
5. git clone
失败:Failed to connect to github.com
问题描述: 在尝试使用 git clone
命令克隆 ComfyUI 仓库时,提示无法连接到 GitHub。
解决方案:
- 检查网络: 确认你的网络连接正常,并且没有防火墙或代理阻止你访问 GitHub。
- 配置 Git 代理: 如果你使用了代理服务器,需要为 Git 配置代理。
取消代理:git config --global http.proxy http://proxy.example.com:8080 git config --global https.proxy https://proxy.example.com:8080
git config --global --unset http.proxy git config --global --unset https.proxy
- 使用 GitHub Raw 访问: 有时直接通过浏览器访问 GitHub 也会遇到问题。如果只是下载单个文件,可以尝试访问 GitHub Raw 文件链接。
- SSH 方式克隆: 如果 HTTPS 克隆遇到问题,可以尝试配置 SSH 密钥并使用 SSH 方式克隆仓库(需要先在 GitHub 上添加 SSH 公钥)。