专栏/I卡 上 comfyui 的部署方法,附整合包

I卡 上 comfyui 的部署方法,附整合包

2024年03月19日 10:09--浏览 · --点赞 · --评论
粉丝:50文章:7
众嗦粥汁啊,目前SD绘图主流的两大操作界面分别是A1111的stable-diffusion-webui(https://github.com/AUTOMATIC1111/stable-diffusion-webui)和comfyanonymous的comfyui(https://github.com/comfyanonymous/ComfyUI),Nuullll已经为我们I卡配置好了stable-diffusion-webui的整合包,至于comfyui,可能不少人还不知道QQ群频道中已经有了二合一的整合包(https://pd.qq.com/s/8ew8w1xnv,由于comfyui版本更迭,新版本已经不兼容此整合包),但是有不少人还是想尝试自己部署comfyui,本篇就从绘世启动器和命令行两个方面讲讲如何自己部署一个comfyui。本篇适用于像我一样的新手,过程中有哪些不对的地方请大佬们提出。 


首先讲下部署主要有哪些内容: 

1、comfyui本体代码; 

2、I卡的pytorch系列包,即ipex,这个就用Nuullll佬编译好的,给大佬点赞; 

3、Comfyui启动运行所需依赖,这个在根目录的requirements.txt ;

4、设置参数,启动! 


一、利用绘世启动器 

绘世启动器不仅可以用来启动SD,其实还可以从零开始部署webui、comfyui、foocus,操作也很简单,下面就讲讲如何从一个启动器到comfyui启动的过程步骤。 

1、新建一个空的文件夹,路径中不要出现中文及特殊符号,并放入一个绘世启动器,当然一并把.launcher文件夹复制过来最好,可以省去下载组件。 

read-normal-img


read-normal-img


read-normal-img


2、下载内核及其组件 

 

read-normal-img

接下来到内核安装界面,分支选择comfyui,原生组件已经默认勾选,pytorch可以选择一起下载也可以在进入启动器中下载,pytorch选择Torch 2.1.0 (lPEX AOT, Arc) 即ipex2.1,Ultra笔记本就选对应的。 

 

read-normal-img

接下来就是就是自动下载安装了 

read-normal-img


安装完成后,在启动前可以修改一个配置文件extra_model_paths.yaml.example,复制一份或者直接把.example去掉,然后用记事本打开extra_model_paths.yaml,把 base_path: path/to/stable-diffusion-webui/ 

中的”path/to/stable-diffusion-webui/”替换成群主整合包的根目录路径即可(如有),这样就可以共享模型文件了。接着在绘世启动器中,选择高级选项-计算精度设置-把u-net和 vae模型精度改成bf16。 

read-normal-img


一键启动后启动器会自动把requirements.txt中的依赖安装好,到这里comfyui基本就配置好了。 

 

read-normal-img



read-normal-img

绘图启动器应该是新手接触SD最友好的工具了(感谢秋葉aaakit团队大佬的贡献),对comfyui的管理功能也是比较全的,诸如插件安装、模型下载地址镜像齐全,基本使用无门槛。 


二、命令行安装 

在进行命令行安装之前需要电脑已经安装了git和python或者conda,并已经添加了对应的环境变量,当然,知道一点命令行指令,I卡整合包里面的git和Python也是可以用的。 

在需要安装comfyui的文件夹资源管理器地址栏中输入CMD或者powershell打开对应的命令行工具,然后依次输入以下命令(我以conda创建虚拟环境演示,直接用python可以参照https://pd.qq.com/s/ai0syqcc7,括号内的不用复制): 

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

(克隆仓库代码) 

cd ComfyUI (进入ComfyUI目录)

conda create -p ./venv python=3.10(创建虚拟环境) 

conda activate ./venv                      (激活虚拟环境) 

pip install https://github.com/Nuullll/intel-extension-for-pytorch/releases/download/v2.1.10%2Bxpu/intel_extension_for_pytorch-2.1.10+xpu-cp310-cp310-win_amd64.whl https://github.com/Nuullll/intel-extension-for-pytorch/releases/download/v2.1.10%2Bxpu/torch-2.1.0a0+cxx11.abi-cp310-cp310-win_amd64.whl https://github.com/Nuullll/intel-extension-for-pytorch/releases/download/v2.1.10%2Bxpu/torchaudio-2.1.0a0+cxx11.abi-cp310-cp310-win_amd64.whl https://github.com/Nuullll/intel-extension-for-pytorch/releases/download/v2.1.10%2Bxpu/torchvision-0.16.0a0+cxx11.abi-cp310-cp310-win_amd64.whl         (下载安装ipex) 

 pip install -r requirements.txt  (下载所需依赖) 

 Python main.py --bf16-vae --bf16-unet --auto-launch           (配置启动参数并自动打开浏览器,这参数我不确定是不是最优的) 

到这一步就算安装好了,如果以后想用命令行启动就创建如下bat脚本(python创建的参照上面帖子,区别在于激活虚拟环境的命令,powershelll的类似) 

@echo off 

call conda activate ./venv 

if %errorlevel% neq 0 exit /b %errorlevel% 

Python main.py --bf16-vae --bf16-unet --auto-launch 

if %errorlevel% neq 0 exit /b %errorlevel% 

call conda deactivate 

@echo 启动完毕,请按任意键关闭  

call pause 

 

 当然也可以把绘世启动器直接复制到根目录使用。 



三、镜像用法 

Git和pip安装如果没有魔法的话,很多软件包下载是很缓慢的,下面简单讲几个用镜像的方法。 

1、git 

Git软件包源基本来自github,这个可以用到https://greasyfork.org/zh-CN/scripts/412245-github-%E5%A2%9E%E5%BC%BA-%E9%AB%98%E9%80%9F%E4%B8%8B%E8%BD%BD 

Github 增强 - 高速下载 脚本 ,这个脚本提供了很多github的镜像源。 

2、Pip 

Pip加速就很简单,使用如下命令: 

Pip install 软件包 -i 镜像源地址 

这样安装的时候就会直接从镜像源搜索软件包下载了,至于镜像源地址,可以直接去绘世启动器的.launcher文件夹的data.json中查找,格式是https://XXXX.com/simple 

3、hf模型 

不少插件是需要对应的模型的,这些模型又基本在Huggingface 网站。这时候可以去https://hf-mirror.com/ 镜像站直接下载,或者尝试启动参数里面添加上HF_ENDPOINT=https://hf-mirror.com 

还是那句话,不要镜像网站上面进行登录或其他泄露个人信息的行为并且要有一定的辨伪意识。 


最后补充几点:1、必须按照上述方法设置半精度优化,否则默认设置会出现RuntimeError: mat1 and mat2 must have the same dtype, but got Float and Half的错误,如果用ipex2.0部署则不需要设置。 

2、I卡跑comfyui大尺寸图出现4G错误,常见1.5模型,社区有相应的补丁,使用方法详见https://pd.qq.com/s/4j9ahtplz,不过这个补丁试用后并不能完全解决这个问题,在comfyui内核更新后也需手动修改。 

3、文中有什么错误或者不妥的地方,希望大佬能够提出来。 

 2024年6月14日更新:由于comfyui版本更迭,新版本已经不兼容ipex2.0,目前适配comfyui的ipex版本是2.1.3,本文就补充如何更换到新版本的ipex,目前ipex2.1.3 nuullll佬并没有做自己的编译包,不过现在可以在pip中安装oneapi了,所以并不影响。

conda进入虚拟环境(如果是以前的整合包,找找类似.ext、python、python _embeded文件夹中的/scripts/activate.bat或者venv/scripts/activate.bat)

 

conda install pkg-config libuv

pip install dpcpp-cpp-rt==2024.1.0 mkl-dpcpp==2024.1.0 onednn==2024.1.1 (安装oneAPI Base Toolkit2024.1.0)

 

python -m pip install torch==2.1.0.post2 torchvision==0.16.0.post2 torchaudio==2.1.0.post2 intel-extension-for-pytorch==2.1.30 --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/cn/  (安装ipex2.1.3)

安装完成

 

为了方便使用,推荐几个插件给刚入坑的朋友

ComfyUI-Manager:https://github.com/ltdrdata/ComfyUI-Manager (插件管理,可下载模型)

https://gitee.com/cunkai/comfy-ui-manager  (国内版,有镜像)

AIGODLIKE-COMFYUI-TRANSLATION:https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION (界面汉化)

效率节点:https://github.com/jags111/efficiency-nodes-comfyui  (节点简化)

剩下的自己探索吧

 

这次做了一个整合包,用最新7-zip解压,ipex2.1.3环境,未放置大模型,含4G显存补丁、ComfyUI-Manager和AIGODLIKE-COMFYUI-TRANSLATION,绘世启动器启动。需要使用的自行修改/放置模型。

123盘:https://www.123pan.com/s/TGb4jv-9byN3.html提取码:ipex

百度盘:https://pan.baidu.com/s/1SV-MeHdXrW2EMcPxkoydTQ?pwd=1234 提取码:1234
阿里盘:https://www.alipan.com/s/igPtydTLDq9 提取码: 6w7m

参考:

1、https://github.com/Nuullll/intel-extension-for-pytorch/;

2、https://intel.github.io/intel-extension-for-pytorch/#installation?platform=gpu&version=v2.1.30%2bxpu&os=windows&package=pip

 

投诉或建议