【ComfyUI】安装 之 window版
文章目录
- 序言
- 步骤
- 下载comfyUI
- 配置大模型和vae
- 下载依赖组件
- 启动
- 生成图片
- 解决办法
序言
由于stable diffusion web ui
无法做到对流程进行控制,只是点击个生成
按钮后,一切都交给AI来处理。但是用于生产生活是需要精细化对各个流程都要进行控制的。
故也就有个今天的猪脚:Comfyui
步骤
- 下载comfyui项目
- 配置大模型和vae
- 下载依赖组件
- 启动
下载comfyUI
官网地址:https://github.com/comfyanonymous/ComfyUI
将项目下载到自己喜欢的目录下,下面是我的:
yutao@yutao MINGW64 /e/openai/project
$ git clone https://github.com/comfyanonymous/ComfyUI.git
配置大模型和vae
- 在
ComfyUI\models\checkpoints
中放大模型文件 - 在
ComfyUI\models\vae
中放vae文件。
但是,我们学stable diffusion
基本都是从stable diffusion webui
开始的,所以我们其实不需要再额外的下载,checkpoint和vae,而是共用他们。
ComfyUI的作者提供了配置方法:
- 修改
extra_model_paths.yaml.example
文件重命名为:extra_model_paths.yaml
- 打开文件,将里面的base_path进行修改:
以下是我的stable-diffusion-webui
的路径
a111:base_path: E:\openai\project\stable-diffusion-webui
保存退出。
下载依赖组件
在ComfyUI中调出命令行(将文件夹路径上敲cmd,回车即可)中执行:
E:\openai\project\ComfyUI>pip install -r requirements.txt
就会开始下载所需的依赖组件。
启动
命令:python main.py
E:\openai\project\ComfyUI>python main.py
浏览器访问地址:http://127.0.0.1:8188
最左边,因为我之前玩stable diffusion时候已经下载好了guofeng3大模型。所以load checkpoint 里面我显示的是guofeng3.
大模型,我下载的是guofeng3。
放到models/checkpoints
文件夹里,例如:E:\openai\project\ComfyUI\models\checkpoints
。
生成图片
因为默认参数就可以生成一个花瓶,点击右上角的Queue Prompt
。
但是我的电脑总是不是那么顺利。
详细描述文章:【ComfyUI】RuntimeError: CUDA error: operation not supported
报了如下错误:
got prompt
model_type EPS
adm 0
making attention of type 'vanilla-pytorch' with 512 in_channels
Working with z of shape (1, 4, 32, 32) = 4096 dimensions.
making attention of type 'vanilla-pytorch' with 512 in_channels
missing {'cond_stage_model.text_projection', 'cond_stage_model.logit_scale'}
left over keys: dict_keys(['cond_stage_model.transformer.text_model.embeddings.position_ids', 'model_ema.decay', 'model_ema.num_updates'])
loading new
loading new
loading in lowvram mode 1842.6899042129517
!!! Exception during processing !!!
Traceback (most recent call last):File "E:\openai\project\ComfyUI\execution.py", line 152, in recursive_executeoutput_data, output_ui = get_output_data(obj, input_data_all)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\execution.py", line 82, in get_output_datareturn_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\execution.py", line 75, in map_node_over_listresults.append(getattr(obj, func)(**slice_dict(input_data_all, i)))^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\nodes.py", line 1236, in samplereturn common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\nodes.py", line 1206, in common_ksamplersamples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\comfy\sample.py", line 81, in samplecomfy.model_management.load_models_gpu([model] + models, comfy.model_management.batch_area_memory(noise.shape[0] * noise.shape[2] * noise.shape[3]) + inference_memory)File "E:\openai\project\ComfyUI\comfy\model_management.py", line 394, in load_models_gpucur_loaded_model = loaded_model.model_load(lowvram_model_memory)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "E:\openai\project\ComfyUI\comfy\model_management.py", line 288, in model_loadaccelerate.dispatch_model(self.real_model, device_map=device_map, main_device=self.device)File "D:\Program Files\Python\Lib\site-packages\accelerate\big_modeling.py", line 391, in dispatch_modelattach_align_device_hook_on_blocks(File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 532, in attach_align_device_hook_on_blocksadd_hook_to_module(module, hook)File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 155, in add_hook_to_modulemodule = hook.init_hook(module)^^^^^^^^^^^^^^^^^^^^^^File "D:\Program Files\Python\Lib\site-packages\accelerate\hooks.py", line 253, in init_hookset_module_tensor_to_device(module, name, self.execution_device)File "D:\Program Files\Python\Lib\site-packages\accelerate\utils\modeling.py", line 307, in set_module_tensor_to_devicenew_value = old_value.to(device)^^^^^^^^^^^^^^^^^^^^
RuntimeError: CUDA error: operation not supported
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.
其实就是说,我当前电脑的GPU或硬件,并不支持当前CUDA中的某些操作。
解决办法
官方提供了两种解决策略。
方式一:黑名单策略
加完后,再重启。发现还是不行。
方式二:启动时添加–disable-cuda-malloc
# 注意--disable-cuda-malloc
E:\openai\project\ComfyUI>python main.py --disable-cuda-malloc
最后,通过方式二,得以解决。
参考地址:
https://github.com/comfyanonymous/ComfyUI#manual-install-windows-linux
Stable Diffusion ComfyUI 入门感受
相关文章:
【ComfyUI】安装 之 window版
文章目录 序言步骤下载comfyUI配置大模型和vae下载依赖组件启动 生成图片解决办法 序言 由于stable diffusion web ui无法做到对流程进行控制,只是点击个生成按钮后,一切都交给AI来处理。但是用于生产生活是需要精细化对各个流程都要进行控制的。 故也…...
iMazing 2 .17.9最新官方中文版免费下载安装激活
iMazing 2 .17.9最新版是一款帮助用户管理IOS手机的应用程序,iMazing2最新版能力远超iTunes提供的终极的iOS设备管理器。IMazing与你的iOS设备(iPhone、 iPad或iPod)相连,使用起来非常的方便。作为苹果指定的iOS设备同步工具。 mazing什么意思 iMazing…...
Postman应用——Pre-request Script和Test Script脚本介绍
文章目录 Pre-request Script所在位置CollectionFolderRequest Test Script所在位置CollectionFolderRequest Pre-request Script(前置脚本):可以使用在Collection、Folder和Request中,并在Request请求之前执行,可用于…...
vue2中年份季度选择器(需要安装element)
调用 <!--父组件调用--><QuarterCom v-model"quart" clearable default-current/> 组件代码 <template><div><span style"margin-right: 10px">{{ label }}</span><markstyle"position:fixed;top:0;bottom:0…...
QT day5
数据库完成登入注册 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include<QDebug> #include<QPushButton> #include<QLineEdit> #include<QLabel> #include <QMainWindow> #include<QMessageBo…...
设计模式Java实战
文章目录 一、前置1.1 目的1.2 面向对象1.3 接口和抽象类 二、七大设计原则2.1 单一职责2.2 接口隔离原则2.3 依赖倒转原则2.4 里氏替换原则2.5 开闭原则2.6 不要重复原则2.7 迪米特最少知道法则 三、23种设计模式3.1创建型:创建对象3.1.1 单例模式定义最佳实践场景…...
外国固定资产管理系统功能有哪些
很多公司都在寻找提高自己资产管理效益的方法。为了满足这一要求,国外的固定资产管理系统已经发展成多种形式。以下是国外一些常见的固定资产管理系统的特点:自动化和智能化:许多现代固定资产管理系统采用自动化和数字化技术,以简化流程,减少…...
Postman应用——控制台调试
当你在测试脚本中遇到错误或意外行为时,Postman控制台可以帮助你识别,通过将console.log调试语句与你的测试断言相结合,你可以检查http请求和响应的内容,以及变量之类的。 通常可以使用控制台日志来标记代码执行,有时…...
如何制作思维导图?
思维导图是一种非常有用的工具,可以被广泛应用于不同领域的人群。以下是一些常见的使用人群:学生、教育工作人员、各领域的专业人员,法律、商业、医学等等,创作者、艺术家、个人自我成长管理。 由此可见,思维导图可以做…...
【力扣每日一题】2023.9.21 收集树中金币
目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们一棵树,不过这棵树不是普通的树,而是无向无根树。给我们一个二维数组表示节点之间的连接关系ÿ…...
Python与数据分析--每天绘制Matplotlib库实例图片3张-第1天
目录 1.实例1--Bar color demo 2.实例2--Bar Label Demo 3.实例3--Grouped bar chart with labels 1.实例1--Bar color demo import matplotlib.pyplot as plt # 支持中文 plt.rcParams[font.sans-serif] [SimHei] # 用来正常显示中文标签 plt.rcParams[axes.unicode_minus…...
pycharm 中package, directory, sources root, resources root的区别
【遇到的问题】 导入yolov5中有utils文件,自己的代码中也有utils文件,使得yolov5中的这部分引用出错了。 【解决方案】 单独建立detection文件夹,把检测相关的都放在这里,yolov5是github上拉取的源码,发现yolov5中fr…...
【谢希尔 计算机网络】第2章 物理层
目录 通信基础 基本概念 两个公式lim 奈氏准则 香农定理 奈氏准则 VS 香农定理 编码与调制 编辑 物理层下面的传输媒体 导引型传输媒体 1. 双绞线 2. 同轴电缆 3. 光缆 非导引型传输媒体 无线电微波通信 卫星通信 无线局域网使用的 ISM 频段 信道复用技术 …...
Eclipse工具使用技巧
1、常用快捷键 ctrlshifto 快速导包 CtrlSpace 内容助理 说明:内容助理。提供对方法,变量,参数,javadoc等得提示,应运在多种场合,总之需要提示的时候可先按此快捷键。注:避免输入法的切换设置与此设置冲突 CtrlShiftSpace 变量提示 Ctrl/ 添加/消除//注释 CtrlShift/ 添加…...
python LeetCode 刷题记录 94
题目 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 代码 递归 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.righ…...
滴滴可观测平台 Metrics 指标实时计算如何实现了又准又省?
在滴滴,可观测平台的 Metrics 数据有一些实时计算的需求,承载这些实时计算需求的是一套又一套的 Flink 任务。之所以会有多套 Flink 任务,是因为每个服务按照其业务观测需要不同的指标计算,也就对应了不同数据处理拓扑。我们尽力抽…...
每天几道Java面试题:IO流(第五天)
目录 第五幕 、第一场)街边 友情提醒 背面试题很枯燥,加入一些戏剧场景故事人物来加深记忆。PS:点击文章目录可直接跳转到文章指定位置。 第五幕 、 第一场)街边 【衣衫褴褛老者,保洁阿姨,面试者老王】 衣衫褴褛老…...
js/axios/umi-request 根据后端返回的二进制流下载文件
type ResponseType {data: Blob;headers: {content-disposition?: string;}; }; // 下载 (创建a标签) export const downloadBlob (response: ResponseType) > {const blob response.data; // 获取响应中的 Blob 数据const contentDisposition response.headers[conten…...
软件评测师之流水线
目录 一.概念二.周期三.执行时间的计算 一.概念 程序在执行时多条指令可以层叠并行的技术。 二.周期 取指→分析→执行 指令执行的各个阶段里面,执行时间最长的为流水线的周期。 三.执行时间的计算 n条指令执行的总时间流水线计算公式:单条指令所需…...
Linux系统编程——网络编程的学习
Linux系统编程学习相关博文 Linux系统编程——文件编程的学习Linux系统编程——进程的学习Linux系统编程——进程间通信的学习Linux系统编程——线程的学习 Linux系统编程——网络编程的学习 一、概述1. TCP/UDP2. 端口号3. 字节序4. Sockt服务器和客户端的开发步骤1. 服务器2…...
Vue中的ref 和$refs的使用
ref 和$refs 作用:利用ref 和$refs可以用于获取dom元素,或组件实例 特点:查找范围→当前组件内(更精确稳定,原生的dom在vue子组件中查找最终也会扫描到父组件) 1. 获取dom 目标标签–添加ref 属性 <…...
Hive【非交互式使用、三种参数配置方式】
前言 今天开始学习 Hive,因为毕竟但凡做个项目基本就避不开用 Hive ,争取这学期结束前做个小点的项目。 第一篇博客内容还是比较少的,环境的搭建配置太琐碎没有写。 Hive 常用使用技巧 交互式使用 就是我们正常的进入 hive 命令行下的使用…...
基于Yolov8的工业小目标缺陷检测(1)
目录 1.工业油污数据集介绍 1.1 小目标定义 1.2 难点 1.3 工业缺陷检测算法介绍 1.3.1 YOLOv8...
Python文件操作和管理指南:打开、读取、写入和管理文件
文章目录 文件(File)打开文件使用 with ... as 语句打开文件读取文件内容读取大文件的方式逐行读取和读取全部行写文件操作文件定位seek()tell() 关闭文件 文件管理获取目录结构获取当前目录切换当前所在目录创建目录删除目录删除文件重命名文件 总结pyt…...
WebGL 用鼠标控制物体旋转
目录 鼠标控制物体旋转 如何实现物体旋转 示例程序(RotateObject.js) 代码详解 示例效果 鼠标控制物体旋转 有时候,WebGL程序需要让用户通过鼠标操作三维物体。这一节来分析示例程序RotateObject,该程序允许用户通过拖动&…...
Spring Boot魔法:简化Java应用的开发与部署
文章目录 什么是Spring Boot?1. 自动配置(Auto-Configuration)2. 独立运行(Standalone)3. 生产就绪(Production Ready)4. 大量的起步依赖(Starter Dependencies) Spring …...
参议院算法Java
Dota2 的世界里有两个阵营: Radiant(天辉)和 Dire(夜魇) Dota2 参议院由来自两派的参议员组成。现在参议院希望对一个 Dota2 游戏里的改变作出决定,他们以一个基于轮为过程的投票进行。在每一轮中,每一位参议员都可以行使两项权利中的一项: 禁止一名参议员的权利:参…...
前端提交规范 ESLint + Prettier + husky + lint-staged
如何统一代码风格,规范提交呢? 推荐使用前端规范全家桶 ESLint Prettier husky lint-staged。 eslint (github.com/eslint/esli…)JavaScript 代码检测工具,检测并提示错误或警告信息prettier (github.com/prettier/pr…) 代码自动化格式…...
python实现命令tree的效果
把所有的文档都传到了git上,但是内容过多找起来不方便,突发奇想如果能在readme中,递归列出所有文件同时添加上对应的地址,这样只需要搜索到对应的文件点击就能跳转过去了… 列出文件总得有个显示格式,所以就按照tree的来了… 用python实现命令tree的效果 首先,这是tree的效果…...
Deformable DETR(2020 ICLR)
Deformable DETR(2020 ICLR) detr训练epochs缩小十倍,小目标性能更好 Deformable attention 结合变形卷积的稀疏空间采样和Transformer的关系建模能力 使用多层级特征层特征,不需要使用FPN的设计(直接使用backbone多层级输出&a…...
土石方工程网站/百度网址大全下载安装
这套程序某站授权卖3000开源9000程序可以完美运营,没有任何bug对接了众人帮、两个问卷一个打字一个游戏接口,搭建就能运营,支付对接的是码支付。下载地址里面有教程前端后端数据库都是完整的,后台账号密码好像是admin/123456主要说…...
南通建设企业网站/2021百度热搜年度榜
在现实生活中每个人去申请贷款,批下来的额度以及利息是不一样的,这样就有许多人觉得郁闷,为什么会每个人的差距这么大。其实,我们应该想一想自己的征信情况,负债情况,工作情况等是否好,是否符合…...
wap网站做微信小程序/今日头条10大新闻
Redux是JavaScript状态容器,提供可预测化的状态管理。在实际开发中,常搭配React React-redux使用。这代表了目前前端开发的一个基本理念,数据和视图的分离。redux应运而生,当然还有其他的一些状态管理库,如Flux、Elm等…...
网站列表页是啥/搜索引擎大全全搜网
目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 对程序猿来说改bug可…...
廉洁四川官方网权威发布/汕头seo推广外包
本文为美国罗切斯特理工学院(作者:Sandeep Aswath Narayana)的硕士论文,共56页。 硅工艺技术的不断改进使得在单个芯片上集成数百个核成为可能。然而,功耗和散热已经成为设计这些大规模多核芯片的主要限制,…...
绵阳的网站建设/可以免费打开网站的软件
laravel给我们提供了多渠道的消息通知功能,包括邮件,短信,数据库,slack等通知方式。本文主要分析基于数据库的消息通知的底层实现。为了方便,本文将需要接受通知消息的模型称为接收者。 ps:阅读本文前,请不了解Eloquent关联关系的读者先点击e…...