当前位置:AIGC资讯 > AIGC > 正文

【AIGC】ComfyUI安装及常见问题cuda及pytorch安装教程

说明:ComfyUI安装方式有很两种,第一种是下载独立包。独立包下载到本地后,即可使用。不需要搭建(安装)python、cuda、cudnn、pytorch环境.

第二种是,手动安装。手动安装要复杂很多,需要搭建开发环境,即安装python、cuda、cudnn、pytorch。这里介绍的是就是第二种。

假设已经安装好python,并且没有任何问题。如果还没有安装python请查看python安装。安装好后进行下一步。

一、下载ComfyUI

用git下载代码,没有git先安装很简单

git clone https://github.com/comfyanonymous/ComfyUI.git

二、下载ComfyUI-Manager自定义插件

菜单插件,可以用它下载很多节点以及模型

git clone https://github.com/ltdrdata/ComfyUI-Manager.git

三、下载ComfyUI-Translation自定义插件

翻译插件,将英文翻译成中文。需要在设置中修改language

git clone https://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Translation.git

无独立显卡安装:无独立显卡也就意味着你只能通过CPU运行ComfyUI,安装步骤
在clone下来的代码中修改ComfyUI/comfy/model_management.py文件中第25行:

# Determine VRAM State
vram_state = VRAMState.NORMAL_VRAM
set_vram_to = VRAMState.NORMAL_VRAM
cpu_state = CPUState.GPU
把这里的cpu_state = CPUState.GPU改为cpu_state = CPUState.CPU
这样在启动的时候,会通过CPU运行ComfyUI。

没有独立显卡的转到ComfyUI根目录,打开命令(shift + 右键)选择“在此处打开powershell窗口”然后输入下面的命令

pip install -r requirements.txt

安装完成后,启动ComfyUI。同样在ComfyUI根目录执行命令,运行期间不能关闭命令窗口,并且以后每次都需要通过命令启动

python main.py

四、安装Cuda

1、查看nvidiaw信息确认cuda的版本,通过powershell查看,右上角显示了版本信息

nvidim-smi

2、下载前用powershell查看是否安装,安装后通过此命令查看是否安装成功

nvcc -V

成功会输出以下信息

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Mon_Apr__3_17:36:15_Pacific_Daylight_Time_2023
Cuda compilation tools, release 12.1, V12.1.105
Build cuda_12.1.r12.1/compiler.32688072_0

3、下载安装cuda下载地址,红框-----查看所有版本,

选择版本,红框-----

选择系统信息,点击下载,你的图和我截图不一样,那是因为你没有选择好系统信息

3、安装,按提示信息一步一步装就行了,想修改安装路径自己就改一下吧

五、安装pytorch

1、打开pytorch官网,点我打开。往下拉,直到看到下面的内容(第一个红框内容仔细看一看)点第二个红框查看pytorch的版本

2、开始安装,打开powershell窗口,复制安装命令,执行。

六、检查pytorch与Cuda建立依赖关系(此项不一定要执行)

1、检查pytorch与cuda是否建立依赖关系,打开IDLE

依次输入代码

import torch
print(torch.__version__)
print(torch.cuda.is_available())

成功如下:

输出结果与上图一样,恭喜安装成功。

2、没有成功那就下载cudnn,点我下载,​​​​​​ ​选择对应的版本,下载安装

3、安装好后再检查pytorch与cuda是否建立依赖关系,如果还没有,私信我。

七、启动comfyUI时常见问题

1、在Windows上安装ComfyUI,启动之后报错误:python\comfyui\ComfyUI\main.py", line 94, in <module>

Traceback (most recent call last):
  File "F:\python\comfyui\ComfyUI\main.py", line 94, in <module>
    import execution
  File "F:\python\comfyui\ComfyUI\execution.py", line 11, in <module>
    import nodes
  File "F:\python\comfyui\ComfyUI\nodes.py", line 21, in <module>
    import comfy.diffusers_load
  File "F:\python\comfyui\ComfyUI\comfy\diffusers_load.py", line 3, in <module>
    import comfy.sd
  File "F:\python\comfyui\ComfyUI\comfy\sd.py", line 5, in <module>
    from comfy import model_management
  File "F:\python\comfyui\ComfyUI\comfy\model_management.py", line 119, in <module>
    total_vram = get_total_memory(get_torch_device()) / (1024 * 1024)
  File "F:\python\comfyui\ComfyUI\comfy\model_management.py", line 88, in get_torch_device
    return torch.device(torch.cuda.current_device())
  File "F:\python\conda\envs\comfyui\lib\site-packages\torch\cuda\__init__.py", line 778, in current_device
    _lazy_init()
  File "F:\python\conda\envs\comfyui\lib\site-packages\torch\cuda\__init__.py", line 293, in _lazy_init
    torch._C._cuda_init()
RuntimeError: config[i] == get()->name() INTERNAL ASSERT FAILED at "C:\\cb\\pytorch_1000000000000\\work\\c10\\cuda\\CUDAAllocatorConfig.cpp":229, please report a bug to PyTorch. Allocator backend parsed at runtime != allocator backend parsed at load time

在PyTorch的Issues中作者给出了答案

我们需要在ComfyUI/main.py中加一些代码:

import comfy.options
comfy.options.enable_args_parsing()

import os
import importlib.util
import folder_paths
import time
from comfy.cli_args import args

改为如下代码:

import comfy.options
comfy.options.enable_args_parsing()

import os
os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "backend:cudaMallocAsync"

import torch

x = torch.randn(1).cuda()
print(x)

import importlib.util
import folder_paths
import time
from comfy.cli_args import args

总结

**文章总结:ComfyUI的安装指南**
ComfyUI提供了两种安装方式:下载独立包和手动安装。手动安装较为复杂,需要自行搭建开发环境,包括Python、CUDA、cuDNN及PyTorch的安装。以下是手动安装ComfyUI的详细步骤:
1. **基础准备**:
- 确保Python已安装完成,并准备好使用环境。

2. **通过Git下载ComfyUI及其自定义插件**:
- 使用`git clone`命令从GitHub下载ComfyUI本体、ComfyUI-Manager(菜单插件)和ComfyUI-Translation(翻译插件)的源代码。
3. **针对无独立显卡的配置(仅限CPU)**:
- 修改`ComfyUI/comfy/model_management.py`文件中的相关设置,将`cpu_state = CPUState.GPU`改为`cpu_state = CPUState.CPU`,确保程序能在CPU上正常运行。
- 在ComfyUI根目录下通过`pip install -r requirements.txt`命令安装必要的包。
- 通过`python main.py`命令启动ComfyUI。
4. **安装CUDA**:
- 使用`nvidia-smi`查看显卡支持的CUDA版本。
- 下载并安装相应版本的CUDA。
5. **安装PyTorch**:
- 访问PyTorch官网,根据指导选择合适的版本并复制安装命令到PowerShell窗口执行。
6. **建立PyTorch与CUDA的依赖关系**(可选):
- 通过Python代码检查PyTorch是否成功调用CUDA,若未成功,可能需下载并安装cuDNN。
7. **解决启动时可能遇到的问题**:
- 对于遇到的特定错误(如增加`os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "backend:cudaMallocAsync"`等环境变量),根据错误提示和社区反馈进行调整。
总结来说,手动安装ComfyUI涉及到多个组件的下载和配置,特别是在确保Python、CUDA、PyTorch等环境正确搭建和配置上。对于无独立显卡的用户,还需要额外修改代码以确保在CPU上运行。通过逐步执行上述步骤,可以成功安装并启动ComfyUI,并根据需要安装相关的自定义插件以实现更多功能。

更新时间 2024-10-03