AI绘画入门(三)——SD图像创作的灵魂:checkpoint模型

金刚葫芦叔

<p class="ql-block ql-indent-1">大家在自行尝试使用SD作图的时候可能遇到了这样的情况——同样只写了“1girl(一个女孩)”作为提示词,葫芦叔教程里演示的图片是这样的:</p> <p class="ql-block ql-indent-1">可有的小伙伴自己折腾半天生出来的图片却是这样婶的(当同事拿着他生的这些图来质问我的时候请原谅我无情的笑出了猪叫):</p> <p class="ql-block ql-indent-1"><span style="color:rgb(1, 1, 1);">ok,请先把手里的臭鸡蛋放下,出现这种情况并不是因为葫芦叔忽悠了各位,而是因为</span><span style="color:rgb(237, 35, 8);">你没有设置出图所需的模型</span><span style="color:rgb(1, 1, 1);">。</span></p><p class="ql-block ql-indent-1"><span style="color:rgb(1, 1, 1);">关注AIGC领域或者看过我其他文章的朋友,应该都知道AI绘图工具能够生成的图像风格其实是多种多样的:</span></p> <p class="ql-block ql-indent-1">输入提示词固然可以直接影响最终的成像效果,但想要实现风格差异如此巨大的创作,只靠写提示词是不够的。准确的说,提示词在整个AI成像过程中起到的只不过是传令兵的作用,而它所调用的力量,就来自于模型。</p><p class="ql-block ql-indent-1">注意,这里所说的模型,并非是指Stable Diffusion本体这样的大模型。如果把SD比作一个人的话,大模型相当于它的身体构造和生理机能,<span style="color:rgb(1, 1, 1);">而本章所述的模型,</span><span style="color:rgb(237, 35, 8);">则可以看做SD认识我们这个世界所使用的素材合集,也就是训练集。</span></p> <p class="ql-block ql-indent-1">当我们把一本语文书摆在一个小学生面前,他就会明白接下来要面对的任务大概是识字填词造句作文之类;换成数学书,则是加减乘除逻辑运算相关。同理,当我们为SD选择训练集(也就是选择模型)以后,它也会认清自己接下来要生成的是一幅照片级仿真图像,还是二次元卡通形象。</p> <p class="ql-block ql-indent-1">在Stable Diffusion中,目前最常见的模型主要有三类,其中最重要的,就是Checkpoint(检查点)模型,通常也被称为底模,是SD出图必不可少的基本模型,其自身的训练集属性也会对我们的成像风格产生最直接的影响。</p> <p class="ql-block ql-indent-1">例如葫芦叔之前推荐的<a href="https://www.meipian.cn/4tixqjz5" target="_blank" style="font-size:18px; background-color:rgb(255, 255, 255);">顶级亚洲人物模型brav5</a>,就是一个非常典型的真实系模型,由于这个模型在炼制过程中使用了海量的真人照片作为训练素材,所以使用它生成的几乎全是令人难辨真假的仿真人物图像;相反的,由于其训练集中缺少动漫风格的图片素材,所以即使加入animated、comic等提示词,也很难让它生成理想的二次元风格图像。</p> <p class="ql-block ql-indent-1">Checkpoint模型的训练对设备和素材集的要求都比较高,通常单个模型的大小在1Gb-10Gb之间,后缀名为.ckpt或.safetensors,存放路径为SD安装目录下的models\stable diffusion文件夹,将下载的模型文件放入该目录后刷新模型列表,即可在webUI中选择并使用。</p> <p class="ql-block ql-indent-1">当然如果你用的是哩布哩布AI或吐司之类的云端SD,那就不需要下载,直接选择需要的模型在线加载就可以了。</p> <p class="ql-block ql-indent-1">相对于MJ这类仅由官方提供模型的AI绘图工具,SD由于开源的关系,其模型数量几乎可说是无穷无尽,每天都会有来自世界各地的机构和个人通过各种渠道分享自己炼制的模型(还有更多是炼完自用不分享的),大到时空、物种、创作风格,小到服饰、姿态、角色特征,都可以被炼制成不同类型的模型供SD调用——这就为AI图像创作提供了近乎无限的可能性。</p> <p class="ql-block ql-indent-1">通过对模型的调用,我们可以轻而易举的将蒙娜丽莎变成一个二次元少女,</p> <p class="ql-block">用水墨和油彩重新演绎梵高的《星空》,</p> <p class="ql-block">或者将原本只存在于文学、艺术和游戏动漫作品中的角色带到我们的世界。</p> <p class="ql-block ql-indent-1">当然,在如此巨大的模型基数下,其质量自然也难以避免的呈现良莠不齐的状况。这也是为什么葫芦叔会专门开一个系列来为大家做模型推荐——找到一组合适的模型,绝对可以让你的AI图像创作事半功倍。</p> <p class="ql-block ql-indent-1">当然,除了checkpoint之外,SD中还有许多其它类型的模型,例如VAE模型——眼尖的小伙伴可能已经发现了,就在刚刚那个checkpoint模型选框的旁边,还有一个叫做VAE的选框。没错,就是它。</p> <p class="ql-block ql-indent-1">VAE的中文名称是变分自编码器,大家可以把它简单理解为一种自动寻找规律提取关键信息的学习模型,我们下载的checkpoint模型里一般都会自带VAE,而上图这里让我们选择的实际上是一种辅助性的附加VAE,用于进一步改善图像的线条和色彩细节。其作用有些类似于PS中的滤镜,效果如下图:</p> <p class="ql-block ql-indent-1">嗯......几乎看不出什么区别对吧~所以这里的VAE并非必选项,一般也不会对最终成像效果产生太大的影响,大多数情况下都可以用效果更好也更加直观的后期处理来替代,通常来说<span style="color:rgb(237, 35, 8);">无脑选择vae-ft-mse-840000-ema-pruned.safetensors或者不选都可以</span><span style="color:rgb(1, 1, 1);">。</span>如果想了解更多可以去看看<a href="https://zhuanlan.zhihu.com/p/631452035" target="_blank" style="font-size:18px; background-color:rgb(255, 255, 255);">这篇文章</a>。</p> <p class="ql-block ql-indent-1">本来打算这期把所有模型基础知识讲完,但编辑下来发现内容太多了,lora和embeddings模型就放到下期再讲吧~建议大家利用空余时间自己动手去加载各种不同风格的checkpoint模型试一试出图效果,在实践中了解模型的作用和使用方法,过程中遇到问题也欢迎回到这里留言交流。</p>