• AIGC——ComfyUI 安装与基础使用


    简介

    ComfyUI是一个基于节点流程的稳定扩散操作界面,通过流程实现了更加精准的工作流定制和完善的可复现性。每个模块都有特定的功能,我们可以通过调整模块连接来实现不同的出图效果。然而,节点式的工作流也提高了一定的使用门槛。同时,由于内部生成流程经过优化,生成图片的速度相较于Web UI有明显提升,并且对显存的要求也更低(4GB即可良好运行)。

    感兴趣可加入:566929147 企鹅群一起学习讨论

    ComfyUI 与 Stable Diffusion Webui 相比有以下几点区别:

    1. 界面设计

      • Stable Diffusion UI 使用 Web UI,提供了直观友好的图形界面,适合初学者和非技术人员使用。
      • ComfyUI 则采用了基于节点流程的界面设计,更注重工作流程的定制和可控性,适合有一定技术背景和逻辑思维的用户使用。
    2. 功能定制

      • Stable Diffusion UI 提供了一系列预定义的功能和选项,用户可以直接使用,但定制性相对较低。
      • ComfyUI 允许用户自定义工作流程,通过连接不同的模块实现更加精准和复杂的图像生成,具有更高的灵活性和定制性。
    3. 操作门槛

      • Stable Diffusion UI 操作相对简单,用户无需太多技术背景即可上手使用。
      • ComfyUI 的操作门槛较高,需要用户具备一定的逻辑思维和技术能力,因为需要理解和构建节点流程。
    4. 速度和资源消耗

      • 由于 ComfyUI 内部生成流程经过优化,生成图片的速度相对较快,并且对显存的要求更低,适合在资源受限的环境中运行。
    5. 优势:

    对显存要求相对较低,启动速度快,出图速度快。
    具有更高的生成自由度。
    可以与Web UI共享环境和模型。
    可以构建自己的工作流程,导出流程并分享给他人,在发生错误时也能清晰地发现错误发生在哪一步。
    导入生成的图片后会还原整个工作流程,并且模型也会被预先选择。

    1. 劣势:
      操作门槛较高,需要清晰的逻辑。
      生态系统没有Web UI多(虽然常用的都有),但也有一些专为ComfyUI开发的有趣插件。

    下载和安装

    1.从git上安装

    首先,从 GitHub 上下载了作者提供的整合包,该包已经包含了所需的环境和依赖,这样就不需要我们自己去部署,对于编程新手来说是一种福利。

    可以通过以下链接访问 ComfyUI:ComfyUI链接

    在页面的中间位置,可以找到“Installing”部分,然后点击下面的“Direct link to download”文字按钮进行下载。
    在这里插入图片描述
    安装包下载完成后,将其解压到适当的位置。打开文件夹,会看到一个名为“run_nvidia_gpu”的文件,双击即可启动 ComfyUI。然而,需要注意的是,解压后可能会发现里面并没有包含任何模型。
    在这里插入图片描述

    2.秋叶整合包安装

    秋叶大佬的用户也制作了一个 ComfyUI 整合包,其中内置了许多常用插件。这是因为 ComfyUI 插件系统相对比较混乱,如果自行安装可能会产生配置冲突。下面是度盘上分享了秋叶大佬的整合包:
    链接:https://pan.baidu.com/s/1oJ6evCRY6szdO_rEn5t2fw 提取码:tq95

    模型配置

    1. 模型位置

    这时以秋叶整合包为例子,ComfyUI已经配置好环境和依赖,但是缺少必要的模型文件。为了使用ComfyUI,需要将相应类型的模型文件放置到指定的位置:

    1. 将大模型放入以下路径:

      xxx\ComfyUI\models\checkpoints
      
      • 1
    2. 将VAE模型放入以下路径:

      xxx\ComfyUI\models\vae

      
      3. 将Lora模型放入以下路径:
      
      • 1
      • 2

      xxx\ComfyUI\models\loras

      
      确保将模型文件放置到正确的目录中,以便ComfyUI可以正确加载和使用这些模型。
      ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7933897f8c6141fbb37837748ef1d34a.png)
      ### 2.共享模型
      如果已经装 Web UI 可以使 ComfyUI 和Web UI共用一套模型,以防复制大量模型浪费空间。
      
      在ComfyUI目录中找到这个叫做 extra_model_paths.yaml.example的文件:
      ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fa0217304f2145dcb83ebe1ebea19f71.png)将此文件重命名为 extra_model_paths.yaml (去掉.example),修改完成后用文本编辑器打开。
      
      把里面base_path:的路径改成需要共享的webui的安装地址。
      
      controlnet 是否修改取决于controlnet 模型安装在哪个目录,我这里是“extensions\sd-webui-controlnet\models”,更改之后如下面:
      
      ```bash
      a111:
       base_path: D:/DL/sd-webui-aki-v4.5/
      
       checkpoints: models/Stable-diffusion
       configs: models/Stable-diffusion
       vae: models/VAE
       loras: |
            models/Lora
            models/LyCORIS
       upscale_models: |
                     models/ESRGAN
                     models/RealESRGAN
                     models/SwinIR
       embeddings: embeddings
       hypernetworks: models/hypernetworks
       controlnet: extensions/models/ControlNet
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30

      启动与使用

      启动完成之后会是一个空的窗口,在这里要添加工作流或者导入一个别人整理好的工作流:
      在这里插入图片描述
      加载一个文生图工作流:
      在这里插入图片描述
      选择要用的模型、输入相关的提示词,就可以生成第一张图像:
      在这里插入图片描述

    3. 相关阅读:
      FME针对尖锐角及小缝隙处理
      J2L3x,实现企业团队协作的完美工具!
      ElasticSearch性能原理拆解
      【Pandas数据处理100例】(一百):Pandas中使用filter()过滤器实现数据筛选
      Git实操图文详解系列教程(4)——IDEA集成GitHub
      (Ljava/lang/String;)Ljava/lang/Integer; @65: areturn
      springSecurity(二):实现登入获取token与解析token
      2021年全国职业院校技能大赛(中职组)网络安全竞赛试题(1)详细解析教程
      32.JavaScript类数组(Array-like)和可迭代对象(Iterable-object)的实现原理
      C++实现telnet动态调试模块:将日志输出到telnet终端,通过telnet终端调用自定义注册的函数
    4. 原文地址:https://blog.csdn.net/matt45m/article/details/136638266