前言
在上一个task中,我们对baseline进行了逐行精读,我们学会了使用AI工具来帮助我们更快更好地学习。另外我们制作了一个话剧连环画,同时我们对零代码文生图平台secpter webui也有了一个初步的理解。
今天的任务是了解微调的基本原理,然后我们会对微调的各种参数有一个更加清楚的了解,来实现一个更好的效果,并且在这个Task中会给大家介绍一下文生图的工作流平台工具ComfyUI,来实现一个更加高度定制的文生图。
工具初探一ComfyUI应用场景探索
什么是ComfyUI,要想解释ComfyUI,就不得不先介绍GUI。GUI 是 "Graphical User Interface"(图形用户界面)的缩写。简单来说,GUI 就是你在电脑屏幕上看到的那种有图标、按钮和菜单的交互方式。ComfyUI 是以GUI的形式将图片生成的每一个步骤变成一个节点,这些节点可以连接起来形成一个工作流程,这样用户就可以根据需要定制自己的图像生成过程。
ComfyUI核心模块由模型加载器、提示词管理器、采样器、解码器。模型加载器:Load Checkpoint用于加载基础的模型文件,包含了Model、CLIP、VAE三部分
CLIP模块,也就是提示词管理器,将文本类型的输入变为模型可以理解的latent space embedding作为模型的输入
采样器:用于控制模型生成图像,不同的采样取值会影响最终输出图像的质量和多样性。采样器可以调节生成过程的速度和质量之间的平衡
解码器:VAE模块的作用是将Latent space中的embedding解码为像素级别的图像
这里以Stable Diffusion为例解释采样参数,Stable Diffusion的基本原理是通过降噪的方式(如完全的噪声图像),将一个原本的噪声信号变为无噪声的信号(如人可以理解的图像)。其中的降噪过程涉及到多次的采样。采样的系数在KSampler中配置
-
seed:控制噪声产生的随机种子
-
control_after_generate:控制seed在每次生成后的变化
-
steps:降噪的迭代步数,越多则信号越精准,相对的生成时间也越长
-
cfg:classifier free guidance决定了prompt对于最终生成图像的影响有多大。更高的值代表更多地展现prompt中的描述。
-
denoise: 多少内容会被噪声覆盖 sampler_name、scheduler:降噪参数。
ComfyUI图片生成流程
速通ComfyUI
在这里,我们依旧选择使用魔搭社区提供的Notebook和免费的GPU算力体验来体验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的安装文件
一键执行安装程序
进入预览界面
执行到最后一个节点的内容输出了一个访问的链接的时候,复制链接到浏览器中访问
PS:如果链接访问白屏,或者报错,就等一会再访问重试,程序可能没有正常启动完毕
浅尝ComfyUI工作流
将之前Lora训练的工作脚步加载
(这里的Lora是我们Task1微调训练出来的文件
地址是:/mnt/workspace/models/lightning_logs/version_0/checkpoints/epoch=0-step=500.ckpt
大家如有有其他的Lora文件,可以在下面截图Lora文件地址区域更换成自己的地址)
像之前一样,可行修改提示词来生成自定义的图片。
这是我的Loran的训练模型(可以在ComfyUI,点击Save下载)
链接:https://pan.quark.cn/s/588f4b04afc6