1.初识ComfyUI
简单来说,GUI 就是你在电脑屏幕上看到的那种有图标、按钮和菜单的交互方式。ComfyUI 是GUI的一种,是基于节点工作的用户界面,主要用于操作图像的生成技术,ComfyUI 的特别之处在于它采用了一种模块化的设计,把图像生成的过程分解成了许多小的步骤,每个步骤都是一个节点。这些节点可以连接起来形成一个工作流程,这样用户就可以根据需要定制自己的图像生成过程。
以下是ComfyUI的核心模块:
模型加载器:Load Checkpoint用于加载基础的模型文件,包含了Model、CLIP、VAE三部分
CLIP模块将文本类型的输入变为模型可以理解的latent space embedding作为模型的输入
解码器:VAE模块的作用是将Latent space中的embedding解码为像素级别的图像
采样器:用于控制模型生成图像,不同的采样取值会影响最终输出图像的质量和多样性。采样器可以调节生成过程的速度和质量之间的平衡。
Stable Diffusion的基本原理是通过降噪的方式(如完全的噪声图像),将一个原本的噪声信号变为无噪声的信号(如人可以理解的图像)。其中的降噪过程涉及到多次的采样。
采样的系数在KSampler中配置:
-
seed:控制噪声产生的随机种子
-
control_after_generate:控制seed在每次生成后的变化
-
steps:降噪的迭代步数,越多则信号越精准,相对的生成时间也越长
-
cfg:classifier free guidance决定了prompt对于最终生成图像的影响有多大。更高的值代表更多地展现prompt中的描述。
-
denoise: 多少内容会被噪声覆盖 sampler_name、scheduler:降噪参数。
2.ComfyUI图片生成流程:
3.浅尝ComfyUI工作流
下载安装ComfyUI的执行文件
和task1中微调完成Lora文件
git lfs install git clone https://www.modelscope.cn/datasets/maochase/kolors_test_comfyui.git mv kolors_test_comfyui/* ./ rm -rf kolors_test_comfyui/ mkdir -p /mnt/workspace/models/lightning_logs/version_0/checkpoints/ mv epoch=0-step=500.ckpt /mnt/workspace/models/lightning_logs/version_0/checkpoints/
进入文件并执行
当执行到最后一个节点的内容输出了一个访问的链接的时候,复制链接到浏览器中访问
请下载工作流脚本
需加载到刚刚安装的comfyUI上
加载模型,完成生图
工作流脚本(带Lora训练)
点开图片—>右键—>点击save image,即可保存图片
4.自我学习,快速提升
资源网站
名称 | 链接地址 |
在魔搭使用ComfyUI,玩转AIGC! | https://modelscope.cn/headlines/article/429 |
ComfyUI的官方地址 | https://github.com/comfyanonymous/ComfyUI |
ComfyUI官方示范 | https://comfyanonymous.github.io/ComfyUI_examples/ |
别人的基础工作流示范 | https://github.com/cubiq/ComfyUI_Workflows |
https://github.com/wyrde/wyrde-comfyui-workflows | |
工作流分享网站 | https://comfyworkflows.com/ |
推荐一个比较好的comfyui的github仓库网站 | https://github.com/ZHO-ZHO-ZHO/ComfyUI-Workflows-ZHO?tab=readme-ov-file |
LoRA (Low-Rank Adaptation) 微调是一种用于在预训练模型上进行高效微调的技术。它可以通过高效且灵活的方式实现模型的个性化调整,使其能够适应特定的任务或领域,同时保持良好的泛化能力和较低的资源消耗。这对于推动大规模预训练模型的实际应用至关重要。
参数详情表
参数名称 | 参数值 | 说明 |
| models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors | 指定预训练UNet模型的路径 |
| models/kolors/Kolors/text_encoder | 指定预训练文本编码器的路径 |
| models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors | 指定预训练VAE模型的路径 |
| 16 | 设置LoRA的秩(rank),影响模型的复杂度和性能 |
| 4 | 设置LoRA的alpha值,控制微调的强度 |
| data/lora_dataset_processed | 指定用于训练的数据集路径 |
| ./models | 指定训练完成后保存模型的路径 |
| 1 | 设置最大训练轮数为1 |
| 启用中心裁剪,用于图像预处理 | |
| 启用梯度检查点,节省显存 | |
| "16-mixed" | 设置训练时的精度为混合16位精度(half precision) |