ComfyUI节点安装笔记

AI高速发展,版本更新相当快(11月25日才安装的版本v.0.3.4,27日版本就已经更新到v.0.3.5了,当然不是说所有的版本更新都需要全部全新安装),在遇到问题,而不能通过update来更新各个节点解决时,全新安装环境就成为了我的一个需要,本文就是为了快速安装ComfyUI及节点而作的笔记。

1、安装ComfyUI

方法①:下载 Windows 的可移植独立版本ComfyUI 的某个版本,并解压到某个文件夹,最方便。但Python版本固定,不能选择你想要的Python版本,而有些节点,无法在Python3.12运行,例如下面节点在Python3.12下会出错,在Python3.11则没有问题。

方法②:通过ComfyUI-Manager升级ComfyUI,但只能升级到最新版本,不能升级到指定版本。

方法③:选择某个Python版本的ComfyUI(按步骤①操作后),将ComfyUI文件夹删除,然后git命令安装指定版本(直接下载ComfyUI 不同版本的Source code (zip) 解压会少了 .git 文件夹少了版本信息):

git clone -b <版本号> <仓库地址>
git clone -b v0.3.3 https://github.com/comfyanonymous/ComfyUI.git

通过代理加速

git clone -b v0.3.3 https://ghp.ci/https://github.com/comfyanonymous/ComfyUI.git

(ComfyUI 从v0.2.4开始,Python版本为3.12)

2、使用 extra_model_paths.yaml 来引用模型

为了重装环境而不需要理会模型的放置,又或者需要安装多个不同版本的ComfyUI而共用模型,可以将模型放在固定位置,并通过文件extra_model_paths.yaml 来引用模型,但有些模型,是不能通过指引来引用的,必须放置到特定的目录下。附:《extra_model_paths.yaml解读》。

我的 ComfyUI\extra_model_paths.yaml 文件如下(根据自己的情况,只修改base_path即可):

#put this file in base_path like G:\ComfyUl windows portable\ComfyUl

#  H: is SSD
a222:
    base_path: H:\SSD_models\

    checkpoints: checkpoints/
    vae: VAE/
    loras: |
         Loras
#         models/LyCORIS
    clip: clip/
    clip_vision: clip_vision/
    controlnet: controlnet/
    instantid: instantid
    upscale_models: upscale_models
    diffusion_models: diffusion_models
    pulid: pulid
    BiRefNet: BiRefNet
    blip: blip
    LLM: LLM
    sams: sams
    unet: unet
#Only 1 path is allowed except for checkpoints, VAE, etc
    inpaint: inpaint
    stablesr: stablesr
    style_models: style_models

a1111:
    base_path: G:\HD_models\

    checkpoints: checkpoints/
    vae: VAE/
    loras: |
         Loras
#         models/LyCORIS
    clip: clip/
    clip_vision: clip_vision/
    controlnet: controlnet/
    instantid: instantid
    upscale_models: upscale_models
    diffusion_models: diffusion_models
    unet: unet
    style_models: style_models

3、第一类节点:下载Zip包解压即可使用、或者再需要安装依赖项(requirements、module

节点名称及下载地址

在路径ComfyUI\custom_nodes下

执行命令

备注
ComfyUI-Manager     Zip
cg-use-everywhere     Zip

ComfyUI_Comfyroll_CustomNodes

Zip

ComfyUI_essentials     Zip
rgthree-comfy     Zip

AIGODLIKE-ComfyUI-Translation Zip

comfyui-inpaint-nodes     Zip
ComfyUI-Custom-Scripts      Zip
Comfyui_TTP_Toolset     Zip
ComfyUI_FaceAnalysis     Zip

参考第5点安装如下所需module

insightface、dlib

ComfyUI_InstantID     Zip

参考第5点安装如下所需module

insightface、onnxruntime-gpu、onnxruntime

ComfyUI_LayerStyle     Zip

..\..\python_embeded\python.exe -s -m pip install ComfyUI_LayerStyle\whl\docopt-0.6.2-py2.py3-none-any.whl

..\..\python_embeded\python.exe -s -m pip install ComfyUI_LayerStyle\whl\hydra_core-1.3.2-py3-none-any.whl

..\..\python_embeded\python.exe -s -m pip install -r ComfyUI_LayerStyle\requirements.txt

下面这个先不执行,看看运行情况再定:

ComfyUI_LayerStyle\repair_dependency.bat

模型只能放在该路径下ComfyUI\models\

模型70G

ComfyUI-BrushNet     Zip..\..\python_embeded\python.exe -m pip install -r ComfyUI-BrushNet\requirements.txt
ComfyUI-Crystools     ZIp..\..\python_embeded\python.exe -m pip install -r ComfyUI-Crystools\requirements.txt
ComfyUI-KJNodes     Zip..\..\python_embeded\python.exe -m pip install -r ComfyUI-KJNodes\requirements.txt
comfyui-tensorops     Zip..\..\python_embeded\python.exe -m pip install -r comfyui-tensorops\requirements.txt
ComfyUI-Florence2     Zip..\..\python_embeded\python.exe -m pip install -r ComfyUI-Florence2\requirements.txt

模型只能放在该路径下ComfyUI\models\LLM

要将模型下载到不同的模型子目录下,

下载链接里面的所有文件都需要下载:

模型1:ComfyUI\models\LLM\Florence-2-large

模型2:ComfyUI\models\LLM\Florence-2-large-PromptGen-v1.5 

was-node-suite-comfyui     Zip..\..\python_embeded\python.exe -m pip install -r was-node-suite-comfyui\requirements.txt
ComfyUI-Easy-Use     ZIp..\..\python_embeded\python.exe -m pip install -r ComfyUI-Easy-Use\requirements.txt

ComfyUI-Inspyrenet-Rembg

Zip

抠图

..\..\python_embeded\python.exe -m pip install -r ComfyUI-Inspyrenet-Rembg\requirements.txt

packaging版本降到23.2

很奇怪,试过没放置模型时,很慢,放置模型\transparent-background后,很快,然后删除了模型,依然很快。

model_zoo.md


4、 第二类需要用 git 命令安装

加速参考《GitHub加速》,就是在地址前面加上https://ghp.ci/ ,例如:git clone https://ghp.ci/https://github.com/ltdrdata/ComfyUI-Impact-Pack --recursive

节点名称

在路径ComfyUI\custom_nodes下

执行命令

节点模型放置路径
ComfyUI-Impact-Packgit clone https://github.com/ltdrdata/ComfyUI-Impact-Pack --recursive
cd ComfyUI-Impact-Pack
git clone https://github.com/ltdrdata/ComfyUI-Impact-Subpack impact_subpack 
..\..\..\python_embeded\python.exe -m pip install segment_anything
..\..\..\python_embeded\python.exe -m pip install ultralytics
models\sams
ComfyUI_UltimateSDUpscalegit clone https://github.com/ssitu/ComfyUI_UltimateSDUpscale --recursive
ComfyUI-Inspire-Packgit clone -v --recursive --progress -- https://github.com/ltdrdata/ComfyUI-Inspire-Pack

5、依赖 module 的安装

缺少什么模块就安装什么。

有些 module 还是比较大的,每次直接用 pip 安装,可能会下载比较长时间,将安装 whl 保存下来,下载安装时直接安装 whl ,将会节省你不少时间。要注意,有些模块是与环境版本匹配的,要下载匹配环境的。

模块名称及下载地址备注
insightface

需要下载 whl 安装

numpy版本不能太高,需要安装较低版本:
python_embeded\python.exe -m pip install numpy===1.26.4

模型路径结构:

ComfyUI\models\insightface

ComfyUI\models\insightface\models

ComfyUI\models\insightface\models\antelopev2

ComfyUI\models\insightface\models\buffalo_l

模型下载: antelopev2、buffalo_l

dlib需要下载 whl 安装
onnxruntime-gpu279M
onnxruntime文件较小,可以pip命令直接安装

 比较重要的module版本对应关系:

torchtorchaudiotorchvisionCUDA版本支持的torch版本
2.4.0 2.4.0 0.19.011.71.13.0--2.0.1
2.4.12.4.10.19.111.82.0.0--2.5.1
2.5.02.5.00.20.012.12.1.0--2.5.1
2.5.12.5.10.20.112.42.4.0--2.5.1

 6、批量去除文件夹名中字符-main、-master

上面第3点下载的Zip压缩包解压后,文件夹名称后面会带-main、-master,将下面命令复制到一个 bat 文件,放置到 ComfyUI\custom_nodes 路径下,双击运行即可批量 除文件夹名中字符-main、-master,例如文件夹 ComfyUI-KJNodes-main ,修改为 ComfyUI-KJNodes。

echo 批量去除文件夹名中字符-main、-master
@echo off
setlocal enabledelayedexpansion

set "old_string=-main"
set "old_string_2=-master"

for /d %%D in (*) do (
    set "folder_name=%%D"
    set "new_folder_name=!folder_name:%old_string%=!"
    set "new_folder_name_2=!folder_name:%old_string_2%=!"
    if "!folder_name!" neq "!new_folder_name!" (
        ren "%%D" "!new_folder_name!"
    )
    if "!folder_name!" neq "!new_folder_name_2!" (
        ren "%%D" "!new_folder_name_2!"
    )

)

@echo on

会不定时补充我自己安装过的节点资料。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/927298.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据库期末复习题库

1. Mysql日志功能有哪些? 记录日常操作和错误信息&#xff0c;以便了解Mysql数据库的运行情况&#xff0c;日常操作&#xff0c;错误信息和进行相关的优化。 2. 数据库有哪些备份方法 完全备份&#xff1a;全部都备份一遍表备份&#xff1a;只提取数据库中的数据&#xff0…

【经典论文阅读】Transformer(多头注意力 编码器-解码器)

Transformer attention is all you need 摘要 完全舍弃循环 recurrence 和卷积 convolutions 只依赖于attention mechanisms 【1】Introduction 完全通过注意力机制&#xff0c;draw global dependencies between input and output 【2】Background 1&#xff1a;self-…

理解字母形状,从而获得含义

英文字母&#xff0c;都是象形符号&#xff0c;所以&#xff0c;理解其形象&#xff0c;所象之形&#xff0c;是一项重要的工作&#xff0c;和非常有意义事情。也是我们快速记住大量单词&#xff0c;将单词从底层逻辑开始理清&#xff0c;融会贯通扩展记忆容量的重要办法之一。…

CA系统(file.h---申请认证的处理)

#pragma once #ifndef FILEMANAGER_H #define FILEMANAGER_H #include <string> namespace F_ile {// 读取文件&#xff0c;返回文件内容bool readFilename(const std::string& filePath);bool readFilePubilcpath(const std::string& filePath);bool getNameFro…

Linux Shell 脚本题目集(2)

1、使用 case 语句根据用户输入的分数&#xff08;0-100&#xff09;输出相应的成绩等级&#xff08;A, B, C, D&#xff09;。 #! /bin/bashread -p "请输入您的分数&#xff08;0-100&#xff09;&#xff1a;" score# 验证输入是否为数字且在0到100之间 if ! [[ …

混淆零碎知识点

minifyEnabled true //混淆开关 zipAlignEnabled true // Zipalign优化 shrinkResources true // 移除无用的resource文件 &#xff08;必须要混淆开了之后才才可以设置为true&#xff09; proguard-rules.pro 为混淆文件 //整个文件保留 不被混淆 -keep class com.cn…

【Vue3】从零开始创建一个VUE项目

【Vue3】从零开始创建一个VUE项目 手动创建VUE项目附录 package.json文件报错处理: Failed to get response from https://registry.npmjs.org/vue-cli-version-marker 相关链接&#xff1a; 【VUE3】【Naive UI】&#xff1c;NCard&#xff1e; 标签 【VUE3】【Naive UI】&…

常见靶场的搭建

漏洞靶场 渗透测试&#xff08;漏洞挖掘&#xff09;切忌纸上谈兵&#xff0c;学习渗透测试&#xff08;漏洞挖掘&#xff09;知识的过程中&#xff0c;我们通常需要一个包含漏洞的测试环境来进行训练。而在非授权情况下&#xff0c;对于网站进行渗透测试攻击&#xff0c;是触及…

若依项目源码阅读

源码阅读 前端代码分析 代码生成器生成的前端代码有两个&#xff0c;分别是course.js用于向后端发送ajax请求的接口代码&#xff0c;另一个是index.vue&#xff0c;用于在浏览器展示课程管理的视图组件。前端的代码是基于vue3elementplus。 template用于展示前端组件别的标签…

【算法】时间复杂度空间复杂度

0.前言 算法在编写成可执行程序后&#xff0c;运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏&#xff0c;一般是从时间和空间两个维度来衡量的&#xff0c;即时间复杂度和空间复杂度。时间复杂度主要衡量一个算法的运行快慢&#xff0c;而空间复杂度主要衡…

java全栈day10--后端Web基础(基础知识)

引言&#xff1a;只要能通过浏览器访问的网站全是B/S架构&#xff0c;其中最常用的服务器就是Tomcat 在浏览器与服务器交互的时候采用的协议是HTTP协议 一、Tomcat服务器 1.1介绍 官网地址&#xff1a;Apache Tomcat - Welcome! 1.2基本使用(网上有安装教程&#xff0c;建议…

webrtc ios h264 硬编解码

webrtc ios h264 硬编解码 一 ios 系统支持 从ios8开始&#xff0c;苹果公司开放了硬解码和硬编码API&#xff08;即 VideoToolbox.framework API&#xff09; 二 主要api 1 主要解码函数 VTDecompressionSessionCreate // 创建解码 session VTDecompressionSession…

【JavaEE】JavaEE、web 开发、框架(Spring) 、Maven

文章目录 一、JavaEE 发展历程二、什么是 web 开发1、什么是 web 开发&#xff1f;2、web 网站的工作流程 三、框架1、什么是框架&#xff1f;2、为什么要学框架&#xff1f;3、框架的优点&#xff08;Spring Boot VS Servlet&#xff09; 四、Maven 一、JavaEE 发展历程 Java…

【RISC-V CPU debug 专栏 2 -- Debug Module (DM), non-ISA】

文章目录 调试模块(DM)功能必须支持的功能可选支持的功能兼容性要求规模限制Debug Module Interface (DMI)总线类型地址与操作地址空间控制机制Debug Module Interface Signals请求信号响应信号信号流程Reset Control复位控制方法全局复位 (`ndmreset`)Hart 复位 (`hartreset…

Scala学习记录,全文单词统计

package test32 import java.io.PrintWriter import scala.io.Source //知识点 // 字符串.split("分隔符"&#xff1a;把字符串用指定的分隔符&#xff0c;拆分成多个部分&#xff0c;保存在数组中) object test {def main(args: Array[String]): Unit {//从文件1.t…

使用 Certbot 为 Nginx 自动配置 SSL 证书

1.安装Certbot和Nginx插件 sudo apt-get update sudo apt-get install certbot python3-certbot-nginx 2.获取和安装证书 运行Certbot自动安装SSL证书。注意替换 your_domain sudo certbot --nginx -d your_domain Certbot将自动与Lets Encrypt的服务器通信&#xff0c;验证域…

Java之深入理解HashMap

Java之深入理解HashMap 引言 HashMap是Java程序员使用频率最高的一种映射&#xff08;<Key,Value>键值对&#xff09;数据结构&#xff0c;它继承自AbstractMap&#xff0c;又实现了Map类。 本文将深入源码解析一下HashMap的底层原理。 数据结构 HashMap底层通过维护…

HTTP 探秘之旅:从入门到未来

文章目录 导言&#xff1a;目录&#xff1a;第一篇&#xff1a;HTTP&#xff0c;互联网的“快递员”第二篇&#xff1a;从点开网页到看到内容&#xff0c;HTTP 究竟做了什么&#xff1f;第三篇&#xff1a;HTTP 的烦恼与进化史第四篇&#xff1a;HTTP 的铠甲——HTTPS 的故事第…

Docker 容器网络创建网桥链接

一、网络&#xff1a;默认情况下&#xff0c;所有的容器都以bridge方式链接到docker的一个虚拟网桥上&#xff1b; 注意&#xff1a;“172.17.0.0/16”中的“/16”表示子网掩码的长度为16位&#xff0c;它表示子网掩码中有16个连续的1&#xff0c;后面跟着16个连续的0。用于区分…

springboot366高校物品捐赠管理系统(论文+源码)_kaic

毕 业 设 计&#xff08;论 文&#xff09; 高校物品捐赠管理系统设计与实现 摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff…