在Ubuntu22.04上部署ComfyUI

ComfyUI 是 一个基于节点流程的 Stable Diffusion 操作界面,可以通过流程,实现了更加精准的工作流定制和完善的可复现性。每一个模块都有特定的的功能,我们可以通过调整模块连接达到不同的出图效果,特点如下:

1.对显存要求相对较低,启动速度快,出图速度快;
2.具有更高的生成自由度;
3.可以和 webui 共享环境和模型;
4.可以搭建自己的工作流程,可以导出流程并分享给别人,报错的时候也能清晰的发现错误出在哪一步;
5.生成的图片拖进后会还原整个工作流程,模型也会选择好。

一:环境准备

PVE4.17构建虚拟机系统
配置虚拟机:32GB内存,至少颗CPU
添加Nvidia P40 24G  一片
虚拟机中安装Ubuntu 22.04
设置Ubuntu22.04IP为192.168.29.81

参照下面的步骤,开始安装配置工作环境:

#1、安装gcc和g++
sudo apt update
sudo apt install gcc g++#查看版本
gcc --version
g++ --version#2、安装make
sudo apt install make
sudo apt install make-guile#查看make版本
make -v#3、安装N卡驱动
#首先,编辑黑名单配置。vim /etc/modprobe.d/blacklist.conf#在文件的最后添加下面两行。blacklist nouveau
options nouveau modeset=0#然后,输入下面的命令更新并重启。
update-initramfs -u
reboot
#重启后输入下面的命令验证是否禁用成功,成功的话这行命令不会有输出。lsmod | grep nouveau#驱动安装
#首先,使用apt卸载已有的驱动,命令如下。apt-get purge nvidia*#进入驱动所在路径,赋予执行权限,并执行安装命令chmod +x NVIDIA-Linux-x86_64-535.86.05.run
./NVIDIA-Linux-x86_64-535.86.05.run#注:具体文件根据下载的驱动来填写
nvidia-smi#4、安装cuda和cuDNN
#安装zlib软件包
apt-get install zlib1g#重启服务器后,如不生效,可直接将文件写在.bashrc里面
vim ~/.bashrc
#添加以下几句:PATH=$PATH:/usr/local/cuda/bin  
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64#使生效
source ~/.bashrc#cuDNN下载地址:
https://developer.nvidia.com/rdp/cudnn-archive#tar包方式
xz -d cudnn-linux-x86_64-8.9.4.25_cuda12-archive.tar.xz
tar -xvf cudnn-linux-x86_64-8.9.4.25_cuda12-archive.tarcp /root/cudnn-linux-x86_64-8.9.4.25_cuda12-archive/include/cudnn.* /usr/local/cuda/include/
cp /root/cudnn-linux-x86_64-8.9.4.25_cuda12-archive/lib/* /usr/local/cuda/lib64
chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*#5、安装anaconda
bash ./Anaconda3-2023.09-0-Linux-x86_64.sh

二:部署ComfyUI

 1:下载代码仓库

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

2、创建虚拟环境

conda create -n comfyui python=3.10
conda activate comfyui

3、安装pytorch和相关依赖

#安装pytorch
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simpl
pip3 install torch torchvision torchaudio#安装相关依赖
pip install -r requirements.txt

4、修改配置文件

cp extra_model_paths.yaml.example  extra_model_paths.yaml

编辑 extra_model_paths.yaml

修改checkpoints的路径和其他模型路径,请根据你实际放置位置来修改: 

vim extra_model_paths.yamla111:base_path: /app/ComfyUI/checkpoints: models/checkpointsconfigs: models/configsvae: models/VAEloras: |models/Loramodels/LyCORISupscale_models: |models/ESRGANmodels/RealESRGANmodels/SwinIRembeddings: embeddingshypernetworks: models/hypernetworkscontrolnet: models/ControlNet

三:下载相关的大模型

1、stable-diffusion-xl-base-1.0
git clone https://www.modelscope.cn/AI-ModelScope/stable-diffusion-xl-base-1.0.git

2、stable-diffusion-xl-refiner-1.0
git clone https://www.modelscope.cn/AI-ModelScope/stable-diffusion-xl-refiner-1.0.git

3、stable-diffusion-v1.5
git clone https://www.modelscope.cn/AI-ModelScope/stable-diffusion-v1.5-no-safetensor.git

模型百度下载:

链接:https://pan.baidu.com/s/1Xl1NCE8AT5V7nu3I-YF_BA?pwd=i2pa 
提取码:i2pa 

四:启动comfyui

python main.py --port 8188 --listen 192.168.29.81

五:插件安装

cd ComfyUI/custom_nodes
#直接克隆git clone https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION
git clone https://github.com/twri/sdxl_prompt_styler
git clone https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet
git clone https://github.com/pythongosssss/ComfyUI-Custom-Scripts
git clone https://github.com/ltdrdata/ComfyUI-Manager.git

插件说明

辣椒酱的界面汉化: https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION
提示词风格样式: https://github.com/twri/sdxl_prompt_styler
提示词中文输入: https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet
小瑞士军刀美化辅助: https://github.com/pythongosssss/ComfyUI-Custom-Scripts
ComfyUI Manager:https://github.com/ltdrdata/ComfyUI-Manager.git

六:ComfyUI使用方法

1、修改中语言

在语言处选择中文。

2、初步运行

 在默认加载页面,我们可以初步运行一个测试如下图:

选择一个模型,然后上传一张照片。

 

下一节我们再详细介绍其他设置。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

二十、K8S-1-权限管理RBAC详解

目录 k8s RBAC 权限管理详解 一、简介 二、用户分类 1、普通用户 2、ServiceAccount 三、k8s角色&角色绑定 1、授权介绍: 1.1 定义角色: 1.2 绑定角色: 1.3主体(subject) 2、角色(Role和Cluster…

【正在更新】从零开始认识语音识别:DNN-HMM混合系统语音识别(ASR)原理

摘要 | Abstract TO-BE-FILLED 1.前言 | Introduction 近期想深入了解语音识别(ASR)中隐马尔可夫模型(HMM)和深度神经网络-隐马尔可夫(DNN-HMM)混合模型,但是尽管网络上有许多关于DNN-HMM的介绍,如李宏毅教授的《深度学习人类语言处理》[1],…

Hive-架构与设计

架构与设计 一、背景和起源二、框架概述1.设计特点 三、架构图1.UI交互层2.Driver驱动层3.Compiler4.Metastore5.Execution Engine 四、执行流程1.发起请求2.获取执行计划3.获取元数据4.返回元数据5.返回执行计划6.运行执行计划7.运行结果获取 五、数据模型1.DataBase数据库2.T…

Elasticsearch 通信模块的分析

Elasticsearch 通信模块的分析 - 知乎 Elasticsearch是一个基于Lucene的分布式实时搜索框架,它本身能够接受用户发来的http 请求, 集群节点之间也会有相关的通信。 通信模块的简介 Elasticsearch 中的通信相关的配置都是由NetworkModule 这个类完成的…

【深度学习】:实验6布置,图像自然语言描述生成(让计算机“看图说话”)

清华大学驭风计划 因为篇幅原因实验答案分开上传,深度学习专栏持续更新中,期待的小伙伴敬请关注 实验答案链接http://t.csdnimg.cn/bA48U 有任何疑问或者问题,也欢迎私信博主,大家可以相互讨论交流哟~~ 案例 6 :图像自…

【RabbitMQ(二)】:Exchange 详解 | Message Convert 消息转换器

文章目录 03. 使用 Java 代码去操控 RabbitMQ3.1 快速入门3.1.1 创建父子项目3.1.2 编写代码 3.2 Work 模型3.3 RabbitMQ 中的三类交换机3.3.1 Fanout 扇出交换机3.3.2 Direct 交换机3.3.3 Topic 交换机 3.4 声明队列交换机3.4.1 方式一:书写 Config 类3.4.2 方式二…

如何将 Hexo 部署到 GitHub Pages

引言 在数字时代,拥有个人博客是展示自己想法、分享知识和技能的绝佳方式。Hexo 是一个基于 Node.js 的静态博客生成器,它结合了简洁性和功能性,让我们可以轻松地建立并维护一个博客。而 GitHub Pages 提供了一个免费的平台来托管这些静态网站…

推荐几个Python爬虫接单渠道

前言 平时工作有闲的家人们,今天给大家推荐一些用Python爬虫做私活的渠道! 【Python爬虫学习资料】 先给各位还不熟悉Python爬虫的朋友介绍一下! 可以短时间获得大量资料~ 可以进一步数据分析 当然也可以获得收益! 学会Python…

物资捐赠管理系统

文章目录 物资捐赠管理系统一、项目演示二、项目介绍三、系统部分功能截图四、部分代码展示五、底部获取项目(9.9¥带走) 物资捐赠管理系统 一、项目演示 爱心捐赠系统 二、项目介绍 基于springboot的爱心捐赠管理系统 开发语言&#xff1a…

Spring基础 - SpringMVC请求流程和案例

Spring基础 - SpringMVC请求流程和案例 什么是MVC 用一种业务逻辑、数据、界面显示分离的方法,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理…

MYSQL学习笔记:mysql运算符

MYSQL学习笔记:mysql运算符 select * from user where score in (99,100); select * from user where name like zhang%;通配符放到后面或者中间是可以利用索引的,但是通配符放到开头没法用到索引

社区店营销新趋势:如何吸引并留住顾客?

作为一名资深的鲜奶吧创业者,我已经在这个行业摸爬滚打了五年。 这五年的时间,我见证了社区店营销的变迁,也积累了一些关于如何吸引并留住顾客的经验。今天,我想和大家分享一些留住顾客的核心干货。(可以点赞收藏&…

统一数据格式返回,统一异常处理

目录 1.统一数据格式返回 2.统一异常处理 3.接口返回String类型问题 1.统一数据格式返回 添加ControllerAdvice注解实现ResponseBodyAdvice接口重写supports方法,beforeBodyWrite方法 /*** 统一数据格式返回的保底类 对于一些非对象的数据的再统一 即非对象的封…

Idea Git Review插件

idea git plugin 添加了一些常用的小插件 可以右键打开git bash窗口 可以右键选中文字点击baidu fanyi 可以通过搜索git用户名 指定开始时间查询某个版本自己提交的所有代码文件 可以通过点击蓝色行数,跳转到指定的改动代码块 资源地址: git-pl…

Python贝尔多项式

文章目录 Bell数和Bell多项式第二类Bell多项式 Bell数和Bell多项式 Bell,即所有包含 n n n个对象的有限集合的子集数之和,可通过递推式进行定义 B n ∑ k 0 n − 1 ( n − 1 k ) B k , B 0 1 B_n\sum^{n-1}_{k0}\begin{pmatrix} n-1\\k \end{pmatrix…

《PCI Express体系结构导读》随记 —— 第II篇 第4章 PCIe总线概述(11)

接前一篇文章:《PCI Express体系结构导读》随记 —— 第II篇 第4章 PCIe总线概述(10) 4.2 PCIe体系结构的组成部件 PCIe总线作为处理器系统的局部总线,其作用与PCI总线类似,主要目的是为了连接处理器系统中的外部设备…

Python 小白的 Leetcode Daily Challenge 刷题计划 - 20240209(除夕)

368. Largest Divisible Subset 难度:Medium 动态规划 方案还原 Yesterdays Daily Challenge can be reduced to the problem of shortest path in an unweighted graph while todays daily challenge can be reduced to the problem of longest path in an unwe…

你了解内联函数吗?

内联函数 概念 以inline修饰的函数叫做内联函数,编译时C编译器会在调用内联函数的地方展开,没有函数调用建立栈帧的开销,内联函数能提升程序运行的效率。对比于传统的函数调用,内联函数更像宏。告诉编译器在调用函数时将函数的代…

C++初阶:适合新手的手撕vector(模拟实现vector)

上次讲了常用的接口:C初阶:容器(Containers)vector常用接口详解 今天就来进行模拟实现啦 文章目录 1.基本结构与文件规划2.空参构造函数(constructor)4.基本函数(size(),capacity(),resize(),reserve())4.增…

软件文档测试

1 文档测试的范围 软件产品由可运行的程序、数据和文档组成。文档是软件的一个重要组成部分。 在软件的整人生命周期中,会用到许多文档,在各个阶段中以文档作为前阶段工作成果的体现和后阶段工作的依据。 软件文档的分类结构图如下图所示: …