win环境下AMD GPU运行ComfyUI跑图的方法(directml)
鯛肆赧
2023年11月05日 00:23
收录于文集
共4篇

前言

因为这是用directml跑SD,所以你应该要有一块支持微软的directml的GPU,具体支不支持可以在GPU-Z软件界面最下面看到。本文只会在civitai、github下载插件与模型等等。不会魔法朋友请大家发挥主观能动性自行安装下面提到的东西。

一、前期准备

1、安装python 3.10.6

安装python3.10.6是因为PyTorch目前还不支持python3.12,并且3.10版本中有挺多包可以用,等会ComfyUI安装时它会提示的。

安装python时记得勾选添加到环境变量!!!

https://www.python.org/downloads/release/python-3106/

2、安装Git

打开后界面有一个大大的下载按钮,安装无脑下一步,就行了,这个软件不在我们讨论范围内,你可以把它当成下东西的就行了。

https://git-scm.com/downloads

3、安装ComfyUI

首先去下面的链接下载ComfyUI的源码

https://github.com/comfyanonymous/ComfyUI

上面我们不是安装了Git吗?现在可以直接在想安装ComfyUI的文件夹内打开cmd或powershell输入:(可能需要魔法,看地区网络污染程度),可以去gitee碰碰运气没准有人拉了仓库。

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

等待一会你就会看到这个目录下有一个名为ComfyUI的文件夹,下面进入该文件进入下一步操作。

二、构建虚拟环境与安装依赖

1、构建虚拟环境(VENV)

众所周知python从某个版本后就有用来创建虚拟环境的VENV了,在上一节中我们进入了ComfyUI的根目录,我们就把虚拟环境建立在该目录中即可,接下来请在该目录打开cmd或powershell,输入:

python -m venv venv

等待指令运行完毕后,当前目录下会多一个名为 venv 的文件夹,下面我们要启动虚拟环境。

2、安装依赖

保持上面的命令行窗口,在里面输入:

.\venv\Scripts\activate.bat

不出意外的话现在应该在虚拟环境中了,接下来要给pip换阿里的镜像,输入:

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

等待指令完成,完成后接着输入:

pip install -r requirements.txt

等待指令完成,完成后输入:

pip install torch-directml

此时我们已经完成了全部基础流程,理论上来说已经可以用运行ComfyUI并跑图了(只是比较麻烦),我们进入下一阶段。

三、设置一键启动、安装模型与插件

1、设置一键启动

虽然上面我们已经可以运行ComfyUI了,但一键启动它不香吗?

现在我们回到ComfyUI的根目录,创建一个txt文档,怎样命名都行,创建完成后打开它。输入:

call .\venv\Scripts\activate.bat

python main.py --directml

写好后保存文件,现在把文件改成 .bat 后缀的,批处理文件。比如我的就是 start_ComfyUI.bat 现在双击该文件,就能一键启动ComfyUI了。然后在

出现以下字段证明ComfyUI已经完成启动了,下面的那个网址就是程序的界面,浏览器进入即可,新版命令行可以按ctrl+鼠标左键打开命令行内的链接。

2、安装模型

众所周知,ComfyUI只是一个带有SD的壳子,最关键的模型、VAE、embedding、放大模型(upscale_models)等等是需要自己下载的,所以想画图先要解决模型(checkpoints)其他选配。下面是我自己用的配置:

checkpoints:

  • anidosmix_A

  • AnythingV5Ink_ink

  • CounterfeitV30_v30

  • cuteyukimixAdorable_specialchapter

embedding:

  • badhandv4

  • easynegative

  • ng_deepnegative_v1_75t

  • unaestheticXL_Jug6

VAE:anything-v4.0.vae

放大模型(upscale_models):RealESRGAN_x2plus

checkpoints下载后放到~ComfyUI\models\checkpoints即可,其他同理,放到对应类型名称的文件夹下就行都在~ComfyUI\models目录下,比如,embeddings放~ComfyUI\models\embeddings,VAE放~ComfyUI\models\VAE。以上都能在civitai找到。

3、安装插件

ComfyUI的插件都是放在 ~ComfyUI\custom_nodes 文件夹内的。安装插件非常有必要性,可以优化你的工作流程。由于我们安装了Git,所以直接用git指令安装即可,我们先安装插件管理器,现在进入 ~ComfyUI\custom_nodes 文件夹内,打开cmd输入:

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

等待一会插件管理器就安装好了。

现在我们进入刚才的ComfyUI的网址,可以看到右下角多出来一个manager按钮,点击进入管理界面。

选择 Install Custom Nodes 安装插件,下面是我推荐用的插件:

  • ComfyUI Impact Pack 工具包

  • ComfyUI-post-processing-nodes 后期处理工具包

  • AIGODLIKE-COMFYUI-TRANSLATION 翻译,把很多常用插件都翻译了

  • ComfyUI-Custom-Scripts 工具包主要用提示词功能,要配合翻译

下面的是可选的,

  • ComfyUI's ControlNet Auxiliary Preprocessors ControlNet 预处理器

  • Visual Area Conditioning / Latent composition 绘画区域可视化

  • UltimateSDUpscale 一个分区生成来实现小卡画大图的插件

  • ComfyUI_IPAdapter_plus IPAdapter模型处理器

  • SDXL Prompt Styler SDXL 语法风格

  • IPAdapter-ComfyUI IPAdapter模型处理器

安装完插件后关闭开启ComfyUI的命令行窗口就关闭程序了,然后再重新启动ComfyUI,然后进入网页界面能看到插件管理器在的那个栏右上角有一个齿轮图标,点进去找到 AGLTranslation-langualge 选项选择中文就行了。

中文提示词自动补全参考视频BV1EC4y157up即可

四、视频教程与一些生成的图片

下面放点比较有用的视频,方便大家理解SD的绘画原理和ComfyUI的工作流。

  • BV17M41197vU

  • BV1CF411k7LU

我自己的显卡是AMD RX 5600XT,这显卡只有6G显存,在SD webUI中总是爆显存,并且生成速度非常慢,所以我开始使用ComfyUI,用SD1.5版本的模型跑512*512,步数26的图,并通过两层RealESRGAN_x2plus放大成2048*2048的图片只需要35秒左右。

这个是一个简单的txt2img工作流

下面放图: