从ComfyUI安装到Flux大模型文生图教程

1,564 阅读7分钟

前言

目前使用 Stable Diffusion 进行创作的工具主要有两个:WebUI 和 ComfyUI。而更晚出现的 ComfyUI 凭借超高的可定制性和复现性迅速火遍全球。早就知道ComfyUI,一直没有机会来尝试,之前写文章讲过 Flux 的文生图质量远超 StableDiffusion,所以就想一起尝试,今天就记录分享一下

Flux 模型的硬件配置要求比较高,Flux 官方有三个版本,一个是 Pro 只能通过 API 调用的方式;第二个是 DEV,开源的质量最好的模型;Schnell 开源的快速版本;最快最小的 Schnell FP8 版本,显存占用最少都要 14GB,对显卡的性能要求非常高。后面的 GGUF 和 NF4 版本都是量化版本,可以在低显存的显卡上运行。。 image

我就不耗费精力去本地化运行这些模型了,后面深入研究后再尝试。 我会使用硅基流动的API接入Flux,这是一个性价比非常高的综合在线大模型网站。ComfyUI 需要本地安装,然后接入硅基流动的 API,有一些 StableDiffusion 的经验,去尝试 ComfyUI 应该问题也不算太大。

安装 ComfyUI

ComfyUI 是一个基于节点流程式的AI绘图工具WebUI,官方开源地址:github.com/comfyanonym…

安装步骤,GitHub官方文档写的比较清楚。这里记录一下自己的安装步骤:

首先下载源码

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

我的电脑之前安装过一些大模型,已安装过一些显卡驱动和 Python3 依赖包,所以先忽略官方的提示直接安装依赖启动

pip install -r requirements.txt
python main.py

很幸运,直接成功了,看到控制台显示下面的情况表示成功启动: image 我自己改了一下端口号,改成 8188,成功后在后台直接访问,看到以下的页面: image

简单分享一下 ComfyUI 一些组件和 StableDiffusion 的对应关系。从左往右从上往下介绍: Load Checkpoint (加载检查点) :
作用: 用于加载预训练模型的检查点,包括模型、CLIP 和 VAE,为后续的图像生成提供必要的基础。

CLIP Text Encode (Prompt) (CLIP 文本编码(提示)) :
作用: 将输入的文本提示转换为 CLIP 编码,包含正面/负面提示词,使模型能够理解和处理描述的内容,以生成相关图像。

Empty Latent Image (空潜在图像) :
作用: 创建一个空的潜在图像,设置图像的宽度、高度和批量大小,为后续生成过程打下基础。

KSampler (K 采样器) :
作用: 从潜在空间中生成图像,允许设置多个参数(如种子、去噪程度、生成步数等)以控制生成图像的质量和样式。

VAE Decode (VAE 解码) :
作用: 将从 KSampler 生成的潜在样本解码为可视化图像,将计算结果转化为最终图像。

Save Image (保存图像) :
作用: 将处理后的图像保存到指定位置,设置文件名前缀,以便于管理和识别输出的图像文件。

如果有 StableDiffusionUI 的实际操作经验,就应该很熟悉。

安装 ComfyUI-Manager:

ComfyUI-Manager 是一个ComfyUI插件管理器,通过这个插件可以方便的安装其他插件。

也是开源的,开源地址:github.com/ltdrdata/Co…

GitHub上安装步骤也有描述,也很简单,到特定目录直接下载源码就行了: 在安装目录里的 ComfyUI/custom_nodes 目录下执行 clone 命令

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

image

随后在命令行重启ComfyUI,重启过后就看到相关的 ComfyUI-Manager安装成功的日志: image

安装BizyAir

BizyAir 是硅基流动开发的一个 ComfyUI 插件,是一个创新的云服务节点,可以在没有高性能 GPU 的轻薄笔记本上,轻松运行 ComfyUI 以及最新的 FLUX 模型,实现高质量的图像生成和处理。

开源地址:github.com/siliconflow… (有使用教程)

现在在 ComfyUI 主界面点击右下角的 Manage 就能打开这个 ComfyUI-Manager,顺便点击 Custom Nodes Manage 安装 BizyAir:

image image

安装完成后,先注册硅基流动这个大模型云平台,我们要使用它的 API 能力实现低成本的 FLUX 大模型的文生图/图生图的功能。

可以使用我的链接:cloud.siliconflow.cn/i/5ObwfSCD
注册后有 14 元额度,受邀方和邀请方各得 2000 万 Tokens
在 FLUX 模型里面可以看到 Schnell 是免费的,收费的价格也非常低。

image

注册完成后需要创建一个 API key: image

将其填写到 BizyAir 插件中:

image

工作流解释

在 BizyAir 小控件上点击 Examples 按钮,找到 Flux 的案例,这里我选择的是一个文生图的案例,会自动生成一些 Node 节点,并且节点名称自动翻译成中文了。 接下来可以直接点击 Queue Prompt 按钮生成具体的图片。我把节点都拉开了,可以更清晰地看出他们之间的关系。 image 这里来详细解释一下这个工作流的节点吧

工作流展示了从文本提示词到图像生成的完整过程,包括模型加载、随机噪声生成、提示词编码、采样、潜在图像初始化、VAE 解码以及图像预览的各个步骤,不同节点之间通过输入和输出的连接。

图像生成工作流说明

今天我们来聊聊用 ComfyUI 这款工具来创建一个图像生成的工作流。由于 Flux 模型对硬件配置要求比较高,这里我们先用免费版的硅基流动模型。 ComfyUI 是一个本地安装的软件,如果你之前用过 StableDiffusion,那上手 ComfyUI 应该也不会太难。

1. 模型加载

  • BizyAir DualCLIPLoader (#36)

    • 功能:加载 CLIP 模型。
    • 作用:加载两个 CLIP 模型,提供文本和图像的编码支持。
    • 操作:定义模型的名字(clip_name1clip_name2)和类型。
  • BizyAir Load Diffusion Model (#48)

    • 功能:加载扩散模型。
    • 作用:提供生成图像的基础模型。
    • 操作:设置 UNet 模型的名字和权重数据类型。

2. 提示词编码

  • BizyAir CLIP Text Encode (Prompt) (#37)
    • 功能:对文本提示词进行编码。
    • 作用:将文本提示转换为模型可理解的格式。
    • 操作:输入你的文本提示。

3. 随机噪声生成

  • BizyAir RandomNoise (#59)
    • 功能:生成随机噪声。
    • 作用:生成图像的起始噪声。
    • 操作:设置噪声的种子以及是否固定生成方式。

4. 采样与调度

  • BizyAir BasicGuider (#47)

    • 功能:引导模型生成过程。
    • 作用:确保生成的图像符合提示词。
    • 操作:连接模型和提示词编码的输出。
  • BizyAir KSamplerSelect (#60)

    • 功能:选择采样方法。
    • 作用:选择生成图像时的采样算法(如 Euler)。
    • 操作:设置采样方法名称。
  • BizyAir BasicScheduler (#58)

    • 功能:管理生成过程的调度。
    • 作用:控制生成图像的步数和去噪程度。
    • 操作:设置调度器类型、步数和去噪程度。

5. 潜在图像初始化

  • Empty Latent Image (#51)
    • 功能:初始化一个空的潜在图像。
    • 作用:创建初始化的图像空间。
    • 操作:设置图像的宽度、高度和批量大小。

6. 图像生成

  • BizyAir SamplerCustomAdvanced (#50)
    • 功能:自定义高级采样器。
    • 作用:结合前面的节点用于生成图像的潜在表示。
    • 操作:连接噪声生成、引导器、采样方法的输出,以及空潜在图像。

7. VAE 解码

  • BizyAir Load VAE (#55)

    • 功能:加载变分自编码器 (VAE)。
    • 作用:将潜在图像转换为实际图片。
    • 操作:设置 VAE 模型的名字。
  • BizyAir VAE Decode (#54)

    • 功能:VAE 解码。
    • 作用:将潜在图像解码为实际图像。
    • 操作:连接 VAE 模型和潜在图像样本的输出。

8. 结果预览

  • Preview Image (#56)
    • 功能:预览生成的图像。
    • 作用:显示最终生成的图像。
    • 操作:连接解码后图像的输出。

总结

这就是用 ComfyUI 做图像生成的步骤,从模型加载到结果预览。用这个工作流,可以快速把文字提示变成漂亮的图片。

今天就简单分享一下 ComfyUI 和 FLUX 模型的基础能力,后面还会深入讲解更多有意思的东西,例如如何汉化,对图片进行细致处理,图片拼接,图生图,换脸等等,请持续关注我~