政安晨【零基础玩转各类开源AI项目】基于Ubuntu系统部署ComfyUI:功能最强大、模块化程度最高的Stable Diffusion图形用户界面和后台

news2024/11/18 4:47:39

目录

ComfyUI的特性介绍

开始安装

做点准备工作

在Conda虚拟环境中进行

依赖项的安装

运行


政安晨的个人主页:政安晨

欢迎 👍点赞✍评论⭐收藏

收录专栏: 零基础玩转各类开源AI项目

希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正!

这套框架可让您使用基于图形/节点/流程图的界面设计和执行高级稳定扩散管道。

ComfyUI的特性介绍

当你对它形成了全貌,安装与使用的时候会更加得心应手。

特性如下:

- 节点/图形/流程图界面,用于实验和创建复杂的稳定扩散工作流程,无需编写任何代码。

- 完全支持 SD1.x, SD2.x, SDXL, Stable Video Diffusion, Stable Cascade, SD3 and Stable Audio

- 异步队列系统

- 许多优化只重新执行工作流程中在两次执行之间发生变化的部分。

- 智能内存管理:可在低至 1GB vram 的 GPU 上自动运行模型。

- 即使没有 GPU 也能使用:--cpu(慢速)

- 可加载 ckpt、安全传感器和扩散器模型/检查点。独立的 VAE 和 CLIP 模型。

- 嵌入/文本反转

- Loras (regular, locon and loha)

- Hypernetworks

- 从生成的 PNG、WebP 和 FLAC 文件中加载完整的工作流程(带种子)。

- 以 Json 文件格式保存/加载工作流程。

- 节点界面可用于创建复杂的工作流程,如 "Hires fix "或更高级的工作流程。

- 地区构成

- 使用常规模型和 Inpainting 模型进行 Inpainting。

- ControlNet and T2I-Adapter

- Upscale Models (ESRGAN, ESRGAN variants, SwinIR, Swin2SR, etc...)

- unCLIP Models

- GLIGEN

- Model Merging

- LCM models and Loras

- SDXL Turbo

- 使用 TAESD 进行潜伏预览

- 启动速度非常快。

- 完全脱机运行:不会下载任何内容。

开始安装

下载仓库:

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

当然,这里我为了修改方便,fork到了自己的github中,名称上稍有差异,大家自己酌情处理。

为咱们即将安装的ComfyUI工作流框架建立conda虚拟环境,python版本先选择3.9 , 如下:

conda create -n zac_comfyui python=3.9

做点准备工作

进入刚才下载的项目目录,干两件事:

1, 将 SD checkpoints (巨大的 ckpt/safetensors 文件)放到:models/checkpoints中;

2, 将 VAE 放到这个目录中:models/vae

具体操作如下:

# Checkpoints

### SDXL
### I recommend these workflow examples: https://comfyanonymous.github.io/ComfyUI_examples/sdxl/

#!wget -c https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/resolve/main/sd_xl_refiner_1.0.safetensors -P ./models/checkpoints/


# SD1.5

#!wget -c https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt -P ./models/checkpoints/

# SD2
#!wget -c https://huggingface.co/stabilityai/stable-diffusion-2-1-base/resolve/main/v2-1_512-ema-pruned.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/stabilityai/stable-diffusion-2-1/resolve/main/v2-1_768-ema-pruned.safetensors -P ./models/checkpoints/

# Some SD1.5 anime style
#!wget -c https://huggingface.co/WarriorMama777/OrangeMixs/resolve/main/Models/AbyssOrangeMix2/AbyssOrangeMix2_hard.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/WarriorMama777/OrangeMixs/resolve/main/Models/AbyssOrangeMix3/AOM3A1_orangemixs.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/WarriorMama777/OrangeMixs/resolve/main/Models/AbyssOrangeMix3/AOM3A3_orangemixs.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/Linaqruf/anything-v3.0/resolve/main/anything-v3-fp16-pruned.safetensors -P ./models/checkpoints/

# Waifu Diffusion 1.5 (anime style SD2.x 768-v)
#!wget -c https://huggingface.co/waifu-diffusion/wd-1-5-beta3/resolve/main/wd-illusion-fp16.safetensors -P ./models/checkpoints/


# unCLIP models
#!wget -c https://huggingface.co/comfyanonymous/illuminatiDiffusionV1_v11_unCLIP/resolve/main/illuminatiDiffusionV1_v11-unclip-h-fp16.safetensors -P ./models/checkpoints/
#!wget -c https://huggingface.co/comfyanonymous/wd-1.5-beta2_unCLIP/resolve/main/wd-1-5-beta2-aesthetic-unclip-h-fp16.safetensors -P ./models/checkpoints/

这些 Checkpoints大家选择使用。

# VAE
!wget -c https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors -P ./models/vae/
#!wget -c https://huggingface.co/WarriorMama777/OrangeMixs/resolve/main/VAEs/orangemix.vae.pt -P ./models/vae/
#!wget -c https://huggingface.co/hakurei/waifu-diffusion-v1-4/resolve/main/vae/kl-f8-anime2.ckpt -P ./models/vae/

选择一个你需要的VAE,也可以去https://huggingface.co上查看最新的,checkpoints也是一样。

比如,查看models:https://huggingface.co/stabilityai

在该模型页面,您可以看到下载链接:

这里咱们选择SDXL的checkpoints:

wget -c https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors -P ./models/checkpoints/

VAE我们选择这个:

wget -c https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors -P ./models/vae/

完成后,咱们开始正式安装。

在Conda虚拟环境中进行

conda activate zac_comfyui

本文档基于N卡来安装(没有符合标准的N卡的同学,建议先缓一缓,折腾一圈浪费时间没必要,所以基于A卡的情况我也就不做展示了,我以前基于A卡做了很多尝试,结果不好,各种问题都有可能出现,尤其是基于ubuntu系统):

Nvidia 用户应使用此命令安装稳定的 pytorch:

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121

 

使用此命令安装 pytorch nightly,性能可能会有所提高:

pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu124

 

这是个补充操作,我已经都ok了,继续。 

疑难解答 如果出现 "Torch not compiled with CUDA enabled"(Torch 未在启用 CUDA 的情况下编译)错误,请使用: pip uninstall torch(卸载命令)卸载,然后使用上述命令重新安装。

依赖项的安装

在 ComfyUI 文件夹中打开终端,安装依赖项,然后:

pip install -r requirements.txt

安装完成后,你就可以继续运行 ComfyUI 了。

注:当然,全程安装过程中要准备好您的上网能力,网不能断,谢谢。

运行

执行命令:

python main.py

顺利的话,接下来就是您需要的:

祝您好运!

以后的一切都可以基于comfyUI的各种教程开始啦!

再说一句:如果需要多人远程使用,启动服务时的命令为:

python main.py --multi-user

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

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

相关文章

2024年江苏省研究生数学建模竞赛B题人造革性能优化设计研究论文和代码

经过不懈的努力, 2024年江苏省研究生数学建模竞赛B题人造革性能优化设计研究论文和代码已完成,代码为C题全部问题的代码,论文包括摘要、问题重述、问题分析、模型假设、符号说明、模型的建立和求解(问题1模型的建立和求解、问题2模…

适用于 Windows的 5 个最佳 PDF 转 Word 转换器

PDF 文件是共享文档的首选格式,但是,此类文件存在限制,使其难以修改或编辑。因此,您可能会发现自己正在寻找一种将 PDF 文件转换为 Word 或其他可编辑格式的方法。 有许多不同的 PDF 转换器,每个转换器的功能略有不同…

KDTree 简单原理与实现

介绍 K-D树是一种二叉树的数据结构,其中每个节点代表一个k维点,可用于组织K维空间中的点,其中K通常是一个非常大的数字。二叉树结构允许对多维空间中的点进行非常有效的搜索,包括最近邻搜索和范围搜索,树中的每个非叶…

嵌入式系统中状态机实现详解

嵌入式开发中系统经常处于某种状态,如何处理呢?接下来分析一下,状态机的实现无非就是 3 个要素:状态、事件、响应。转换成具体的行为就 3 句话。 发生了什么事? 现在系统处在什么状态? 在这样的状态下发生了这样的事,系统要干什么? 用 C 语言实现状态机主要有 3 种方法…

机器学习——岭回归

1、岭回归与线性回归的区别 岭回归(Ridge Regression)和线性回归(Linear Regression)都是用于回归分析的统计方法,但它们在处理方式和应用场景上有一些关键的区别: a)基本概念 线性回归:目标是…

帕金森病患者在选择运动疗法时应该注意哪些事项?

帕金森病患者在选择运动疗法时,应该遵循以下几点注意事项: 个性化运动处方:根据患者的病情、年龄、健康状况、以往运动能力等因素,制定个体化的运动处方。 避免运动负荷过大:运动时间不宜过长,注意控制心率…

【优化论】约束优化算法

约束优化算法是一类专门处理目标函数在存在约束条件下求解最优解的方法。为了更好地理解约束优化算法,我们需要了解一些核心概念和基本方法。 约束优化的核心概念 可行域(Feasible Region): 比喻:想象你在一个园艺场…

量化机器人:金融市场的智能助手

引言 想象一下,在繁忙的金融市场中,有一位不知疲倦、冷静客观的“超级交易员”,它能够迅速分析海量数据,精准捕捉交易机会,并自动完成买卖操作。这位“超级交易员”不是人类,而是我们今天要聊的主角——量…

SSM家庭理财个人理财系统-JAVA【数据库设计、源码、开题报告】

第一章 绪论 1.1 课题背景、目的及意义 从 20 世纪末以来,在全球经济日趋一体化的背景之下,中国经济也得到了飞速的发展,家庭收入也快速增长。居民的消费结构发生了巨大变化,购置房产、旅游、汽车消费、教育等成为居民消费重点。…

SQL使用join查询方式找出没有分类的电影id以及名称

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 描述 现有电影信息…

ABAP 生成word文档

1.创建模板 通过开发工具->空间->格式文本为word添加变量 选中要设为变量的文本,点击格式文本,然后在属性页签设置变量名 模板使用示例参考ZABAPDOCX包下的模板 2. 代码生成 参考ZABAPDOCX包下示例程序,可直接执行下载word文档 如果…

linux ifconfig未找到命令

linux ifconfig未找到命令 1、使用yum安装net-tools yum install net-toolsyum报未找到命令请查看文章vim未找到命令,且yum install vim安装vim失败 2、安装后使用ifconfig命令 ifconfig

【Kubernetes】Pod 资源调度之亲和性调度

Pod 资源调度之亲和性调度 1.Node 亲和性调度1.1 Node 硬亲和性1.2 Node 软亲和性 2.Pod 亲和性调度2.1 Pod 硬亲和2.2 Pod 软亲和2.3 Pod 反亲和 Kubernetes 的 默认调度器 以 预选、优选、选定机制 完成将每个新的 Pod 资源绑定至为其选出的目标节点上,不过&#…

解决数据库PGSQL,在Mybatis中创建临时表报错TODO IDENTIFIER,连接池用的Druid。更换最新版本Druid仍然报错解决

Druid版本1.1.9报错Caused by: java.sql.SQLException: sql injection violation, syntax error: TODO IDENTIFIER : CREATE TEMPORARY TABLE temp_ball_classify (id int8 NOT NULL,create_time TIMESTAMP,create_by VARCHAR,classify_name VARCHAR) 代码如下: 测…

基于java+springboot+vue实现的在线课程管理系统(文末源码+Lw)236

摘要 本文首先介绍了在线课程管理系统的现状及开发背景,然后论述了系统的设计目标、系统需求、总体设计方案以及系统的详细设计和实现,最后对在线课程管理系统进行了系统检测并提出了还需要改进的问题。本系统能够实现教师管理,科目管理&…

Android --- 新电脑安装Android Studio 使用 Android 内置模拟器电脑直接卡死,鼠标和键盘都操作不了

新电脑安装Android Studio 使用 Android 内置模拟器电脑直接卡死,鼠标和键盘都操作不了 大概原因就是,初始化默认Google的安卓模拟器占用的RAM内存是2048,如果电脑的性能和内存一般的话就可能卡死,解决方案是手动修改安卓模拟器的config文件&…

皮卡超级壁纸 | 幸运壁纸幸运壁纸app是一款涵盖了热门影视剧、动漫、风景等等资源的装饰工具,

软件下载链接:壁纸下载方式在链接中文章底部 皮卡超级壁纸 皮卡超级壁纸是一款专为手机用户设计的壁纸应用,它提供了丰富多样的高清壁纸资源,让用户的手机界面焕然一新。这款应用以其海量的壁纸库和用户友好的操作界面,在市场上…

模型加载gltf

3. 加载.gltf文件(模型加载全流程) | Three.js中文网 (webgl3d.cn) 1.引入GLFloader.js模型加载器 import {GLTFloader} from three/addons/loader/GLTFloader.js; 2.GLTF加载器new GLTFloader() 执行new GLTFloader()就可以实例化一个gltf加载器对象 const loader new …

Star CCM+界面显示字体大小调整

前言 打开界面字体显示大小是默认的,软件内设置调整默认字体的大小是无法实现,需要在图标属性中进行设置,操作方法与中英文切换很类似,具体方法如下: 操作流程 1. 右击Star-CCM快捷⽅式,选择“属性”&…

jenkins配置gitee源码地址连接不上

报错信息如下: 网上找了好多都没说具体原因,最后还是看jenkins控制台输出日志发现: ssh命令执行失败(git环境有问题,可能插件没安装成功等其他问题) 后面发现是jenkins配置git的地方git安装路径错了。新手…