首页
东邻西舍
本站信息
前来吐槽
统计
Search
1
openwrt系统上安装第三方插件
28,884 阅读
2
ubuntu下zerotier的基本使用教程
15,989 阅读
3
给小米R3G更换系统:从padavan刷成openwrt
14,993 阅读
4
openwrt使用第一步:设置上网拨号
12,964 阅读
5
openwrt无线中继功能:实现不插网线就能上网
11,531 阅读
学习点滴
后端
前端
Linux
踩坑实录
AI
折腾搞机
关于建站
只言片语
登录
Search
标签搜索
Linux
Java
建站
踩坑实录
折腾搞机
Ubuntu
MySQL
MyBatis
CSS
HTML
Spring
SQL
Nginx
OpenWrt
树莓派
路由器
Windows
Maven
只言片语
Win10
知识分子没文化
累计撰写
87
篇文章
累计收到
155
条评论
首页
栏目
学习点滴
后端
前端
Linux
踩坑实录
AI
折腾搞机
关于建站
只言片语
页面
东邻西舍
本站信息
前来吐槽
统计
搜索到
1
篇与
的结果
2025-12-16
折腾AI画图小记(一):ComfyUI环境相关
目录: 一、环境相关 1.1、启动器 1.2、插件下载 1.3、主要目录 二、模型下载 2.1、模型文件格式 2.2、根据显卡选择恰当精度的模型 2.3、寻找适合ComfyUI的模型 运行环境: Win11 专业版、ComfyUI 0.12.3 Python 版本 : 3.12.12 PyTorch 版本: 2.9.0 CUDA 版本 : 12.8 显卡:RTX 2080Ti 22G 推荐几个良心 B 站 UP:Work-Fisher、黑鹤001、鳌拜拜丿AllBuy、飞天闪客 关于 ComfyUI 相关的一些基础概念和教程示例,强烈推荐阅读其官方文档,从模型下载到工作流都有:ComfyUI 官方文档 - ComfyUI 一、环境相关 1.1、启动器 我目前用的启动器是由 B 站 UP 主 Mr陌客 开发的 NB启动器,UI 界面美观,功能比较丰富,看日志、管理插件、环境检测、管理依赖等这些功能都有,个人感觉很好用。 1.2、插件下载 现在基本百分之九十九的插件基本都能在 Github 上能找到,手动安装的方法是从 Github 上把项目 clone 下来放在目录的 custom_nodes 文件夹下,或者使用启动器的安装插件功能,当然启动器上面的安装插件功能也都是选定 Github 上的插件之后自动在 custom_nodes 文件夹下执行 clone 命令。 安装完成之后重启 ComfyUI 即可。 部分推荐安装的插件: Comfy-Org/ComfyUI-Manager:ComfyUI 的自定义节点管理器,支持安装、卸载、禁用和启用各种自定义节点。 Dontdrunk/ComfyUI-DD-Translation:基于 AIGODLIKE-ComfyUI-Translation 的衍生分支,为 ComfyUI 提供全面的简体中文翻译支持,支持界面语言切换和自定义节点汉化。 nunchaku-ai/ComfyUI-nunchaku:集成 Nunchaku 量化推理引擎,支持 4-bit 量化模型的高效推理,兼容 FLUX.1 等模型。 rgthree/rgthree-comfy:提供一系列自定义节点和优化工具,让 ComfyUI 工作流更简洁、快速和易用。 crystian/ComfyUI-Crystools:提供资源监控(CPU/GPU/内存)、进度条、元数据提取、图像保存及调试等实用工具集。 pythongosssss/ComfyUI-Custom-Scripts:增强 ComfyUI 的界面功能,包括嵌入式自动补全、节点自动排列、颜色拾取器和工作流快捷操作。 1038lab/ComfyUI-QwenVL:集成 Qwen-VL 系列多模态模型(含 Qwen2.5-VL/Qwen3-VL),支持图像理解、视频分析和文本生成。 yawiii/ComfyUI-Prompt-Assistant:提示词助手,支持调用多种大模型进行提示词翻译、润色扩写、图片反推,并提供预设插入和历史记录功能。 kijai/ComfyUI-KJNodes:提供多种实用自定义节点,包括跨子图的 Set/Get 连接管理及其他工作流优化工具。 yolain/ComfyUI-Easy-Use:对常用节点进行优化和集成,简化 ComfyUI 操作流程,提升图像生成的使用便利性。 ltdrdata/ComfyUI-Impact-Pack:提供图像检测、面部修复、分割、预览桥接及多种实用检测与修复节点,支持复杂工作流优化。 jags111/efficiency-nodes-comfyui:高效加载器和工作流简化节点集合,减少节点数量并优化 SDXL/SD1.5 等生成流程。 Suzie1/ComfyUI_Comfyroll_CustomNodes:包含多 ControlNet、LoRA、宽高比切换、流程控制开关等多种实用自定义节点。 WASasquatch/was-node-suite-comfyui:大型节点套件,提供图像处理、文本处理、数学运算、视频/GIF 处理等 100+ 高级节点。 BlenderNeko/ComfyUI_ADV_CLIP_emb:高级 CLIP 文本编码节点,支持更精细的提示词权重控制和嵌入混合。 shadowcz007/comfyui-mixlab-nodes:提供图像混合、抠图、蒙版处理、布局优化及多种创意编辑节点。 1.3、主要目录 一般从官方仓库下载的 ComfyUI 便携包目录下,python_embeded 是自带的 python 环境,ComfyUI 文件夹是程序本体,主要介绍一下 ComfyUI 文件夹下的几个常用文件夹: models:存放各类模型文件,所有 AI 模型权重文件都按类型分类存放在其子目录中。节点加载器(如 Checkpoint 加载器、LoRA 加载器、uNet 加载器)会自动扫描对应的路径。 checkpoints:存放主模型(如 SDXL、Flux、Z-Image、Wan 等)文件,文件格式多为 .safetensors 或 .ckpt(很少)。使用“checkpoint 加载器”节点加载该目录下的模型。 clip / text_encoders:都存放 CLIP 文本编码模型文件,使用任意一个文件夹都可以。使用“CLIP 加载器”节点可加载该目录下的模型。 controlnet:存放 ControlNet 模型(.safetensors 文件)。这类模型用于对图像生成过程进行精确控制,例如根据线稿上色、模仿特定姿势、依据深度图生成等。使用“controlnet 加载器”节点可加载该目录下的模型。 unet / diffusion_models:存放扩散模型的 UNet 权重(.safetensors 文件)。使用“unet 加载器”节点可加载该目录下的模型。 vae:存放 VAE(变分自编码器)模型(.safetensors 文件),用于图像编码/解码,提升生成质量或修复颜色问题。使用“vae 加载器”节点可加载该目录下的模型。 loras:存放 LoRA 模型(.safetensors 文件),这是一种轻量级的微调模型,用于在基础模型上增加特定的人物、风格、服饰等特征,文件体积较小。使用“lora 加载器”节点可加载该目录下的模型。 hypernetworks:存放超网络模型,是另一种微调技术,功能与 LoRA 类似,但目前使用不如 LoRA 广泛。 embeddings:存放文本嵌入模型(也称为 Textual Inversion)。它可以将一个特定的概念(如自定义的角色、画风)编码成一个词,方便在提示词中调用。 LLM:专门用于存放大语言模型(Large Language Model)权重文件,特别是 GGUF 格式(llama.cpp / GGML 量化模型)、transformers 格式的完整模型文件夹、VLM(Vision-Language Model)多模态模型等。它不是 ComfyUI 核心自带的文件夹,而是由各种 LLM 相关自定义节点自动创建路径。 configs:存放模型的配置文件(.yaml 或 .json),定义了模型的网络结构和采样参数。 其他可能出现的文件夹(如 ipadapter、insightface、ultralytics 等)由自定义节点或特定功能创建。 custom_nodes:安装第三方插件的主要位置,每个子文件夹对应一个插件,插件内通常包含 .py 文件定义节点。 input:用于存放上传的输入文件,当使用“加载图片”、“加载视频”等节点上传文件时,文件默认保存到这里,上传或手动复制文件进来,节点也可以直接从此目录读取。 output:生成结果的默认保存目录,使用“保存图片”、“保存视频”等节点时,生成的图片(.png/.jpg)、视频、GIF 等会保存在这里。 temp:存放临时文件、缓存、中间结果(如上传的临时图像、预览图、某些节点生成的中间数据)。 user\default\workflows:存放工作流的目录。 注意:模型文件不能乱放,必须放在对应文件夹,否则节点无法识别。为了管理方便,可以在这些文件夹里再创建子文件夹分类存放不同版本的模型,ComfyUI 也能正常识别。 二、模型下载 2.1、模型文件格式 所谓模型文件格式(.safetensors、.gguf、.ckpt、.pt)本质上都是“模型权重的存储方式”,主要有这么几种格式: .safetensors:由 Hugging Face 推出的一种安全的模型权重格式,只存“纯数据”(tensor),加载速度快,不包含任何可执行代码,因此安全性高,没有执行潜在恶意代码的风险。 .gguf:由 llama.cpp 团队开发的二进制格式,专门为大语言模型(LLM) 设计,支持 Q2、Q3、Q4、Q5、Q8 等不同比特量化(quantization),可大幅缩小模型体积,并且支持 CPU 运行。 .ckpt:“Checkpoint”(检查点)的缩写,通常指代训练过程中的模型快照。一个 .ckpt 文件(或一组文件)不仅包含模型权重,还通常包含优化器状态、当前训练轮数、学习率调度器状态等信息。 .pt / .pth:PyTorch 框架原生的模型文件格式,两者可以互换使用。它们是使用最广泛的模型格式之一,兼容性最好,但文件较大,加载较慢,且存在安全风险。 其中,ComfyUI 中这几种模型文件格式都有涉及,不过主要重点关注 “.safetensors”、“.gguf”,checkpoint / vae / clip / lora / unet 模型文件大部分是 “.safetensors” 格式,也会有部分经过量化的 checkpoint 模型文件为 “.gguf” 格式,如果涉及大语言模型的节点大部分用到的是经过量化的 “.gguf” 格式。 其他自定义节点或特定功能也会用到“.pt / .pth”文件,不过一般也无需专门下载,即便缺少该文件,在运行工作流时也会自动下载。 完整的基础模型文件在 HuggingFace 平台(需科学上网)或者国内的镜像站 HF-Mirror 上下载,还有阿里旗下的 魔搭社区 也是类似于 HuggingFace 的平台,上面的模型文件虽然不如 HuggingFace 丰富,但也涵盖了目前大部分的开源模型及其量化版本,除此之外,Civitai | Discover and Create AI Art(C站)也提供了丰富的模型。 2.2、根据显卡选择恰当精度的模型 HuggingFace 或魔搭社区常有同一模型的不同精度变体,也就是经常听到的 FP16、BF16、FP8 等,文件名里会标,尽量根据自己的显卡来选择对应精度的模型。目前近几代 Nvidia 显卡对于浮点运算的硬件加速支持情况也各不相同: 50系列(Blackwell):FP16、BF16、FP8、FP4 40系列(Ada):FP16、BF16、FP8 30系列(Ampere):FP16,BF16 20系列(Turing):FP16 10系列(Pascal)及以下:只有较慢的全精度 FP32 当然,这并不代表在 RTX2080Ti 这种不支持 FP8 / BF16 硬件加速的显卡上使用不了 FP8 / BF16 精度的模型,相反,其加载新精度的模型文件通常不会报错,依然还是能跑起来。原因在于,ComfyUI(以及背后的PyTorch和CUDA)在加载模型时检测到显卡如果不支持原生 FP8 / BF16 硬件加速,系统会将低精度权重自动转换到硬件支持的格式(通常是 FP16 或 FP32)后再进行计算。 缺点在于每次都需要进行数据类型转换,中间多了数据转换的开销,实际速度有时不如直接用原生支持的FP16模型快。 FPxx / BFxx 就是模型权重的数值精度(Precision),简单来说,精度越高,模型计算时的误差越小,生成的图像细节理论上越还原,但速度和显存占用会相应增加,反之亦然。除此之外,混合精度(mixed precision)技术在 AI 推理中也有应用:用低精度格式存储/计算权重和激活值,同时在关键部分保留较高精度来维持生成质量,从而追求资源占用与生成质量的平衡。 目前主流的精度格式主要有以下几种: FP32 (Float32):全精度,32 位浮点数。这是传统深度学习训练的标准格式,精度最高,但体积最大,对算力和显存要求极高。老款显卡(如10系及更早)通常只能跑这个精度,速度最慢。 FP16 (Float16):半精度,16 位浮点数。这是目前最通用的格式。它将模型体积缩小了一半,在支持它的显卡上能获得显著的速度提升。几乎所有现代显卡(20系及以上)都原生支持 FP16。 BF16 (Brain Float16):也是一种 16 位浮点数,但它的动态范围比 FP16 更大。它主要用于训练和推理,对显存要求低,且在支持它的硬件上效率极高。需要 30系(Ampere)及以上的显卡才能原生支持。 FP8 (Float8):8位浮点数,它将模型体积进一步压缩,推理速度极快,显存占用极低。这是 40系(Ada)和 50系(Blackwell)显卡的“独享”特性,能带来巨大的性能飞跃。 更低精度(如GGUF量化、NVFP4等):GGUF 常用于 LLM 相关节点,支持 Q4/Q5/Q8 等比特量化,体积更小,可 CPU/GPU 混合运行。NVFP4 是 从 50系(Blackwell)显卡引入的新特性,目前主要利好新卡,且需匹配特定 PyTorch/CUDA 版本。 要更详细了解数据精度的话,推荐 B 站 UP 主飞天闪客的视频:【闪客】你管这破玩意叫 UE8M0?_哔哩哔哩_bilibili 2.3、寻找适合ComfyUI的模型 最省事的办法是在 HuggingFace 或者 魔搭社区 下载 ComfyUI 官方(Comfy-Org - HuggingFace / Comfy Org - 魔搭社区)提供的 safetensors 模型文件,基本包含了大部分社区主流开源模型的 safetensors 文件,除此之外,ComfyUI 官方文档 里面有很多模型的工作流模板,也提供了其对应模型的下载链接。 对于新发布的、在 ComfyUI 官方仓库中找不到 safetensors 文件的模型来说,可以下载由社区大佬根据官方开源模型适配、微调、量化的 safetensors 模型文件。 以在 HuggingFace 下载 Z-Image-Turbo 模型的 safetensors 文件为例,先找到其官方仓库 Tongyi-MAI/Z-Image-Turbo · Hugging Face,在右侧的模型系谱中会显示社区在官方模型基础上进行 Adapters(适配)、Finetunes(微调)、Quantizations(量化)的版本(魔搭社区界面也是类似的)。 个人的经验是先在Finetunes(微调)找提供了 safetensors 文件、且下载人数比较多的仓库,没有合适的再从Adapters(适配)、Quantizations(量化)找。 仓库一般都会包含扩散模型(diffusion_model)、VAE 模型(vae)、CLIP 模型(text_encoder),下载下来放在对应的本地模型目录(unet/diffusion_models、vae、clip/text_encoder)即可。 如果只有一个 safetensors 文件,且命名中包含了 “AIO” 字样,那就是将扩散模型、VAE 模型和 CLIP 模型打包在一起的一体化模型,放在 checkpoint 文件夹中,使用 checkpoint 加载器加载模型;如果命名中不包含 “AIO” 字样,说明该版本模型的扩散模型、VAE 模型和 CLIP 模型是分开的,甚至有可能只提供了扩散模型,而 VAE 模型和 CLIP 模型需要单独下载,不过很多生图模型用到的 VAE 模型和 CLIP 模型就 ae、Qwen等几个,比较容易下载。 如果 ComfyUI 在运行时往模型目录添加了新模型,不用重启,在界面上按 R就能刷新模型与节点缓存。
2025年12月16日
5,899 阅读
0 评论
3 点赞