使用stable diffusion绘画时,第一步就是选择模型,选择模型非常重要,使用一个好的模型,提示词写的一般也可以画出好看的图片。
还没部署stable diffusion的朋友先参考以下文章(非高配电脑建议阅读第一篇):
AI绘画教程之stable diffusion【1.免费部署及初体验】
AI绘画教程之stable diffusion【2.Windows系统本地部署】
文章较长,建议先收藏再阅读。作者后续会写stable diffusion的一系列教程,关注公众号,与作者一起实战stable diffusion,从入门到精通。
一、什么是模型?
stable diffusion之所以能绘画,是因为收集了大量世界上已存在的图片来训练,这些图片训练得到的结果就是模型。使用什么图片训练出来的模型,就只能画什么样的图,假设有一个只用了狗的图片训练出来的模型,那么我们使用这个模型就没法画出人的照片。
下面我们直观体验一下模型的作用,使用同样的提示词和参数画一个女孩,看看不同模型的效果。
1.Realistic vision V30模型
masterpiece,ultra detailed face, 1 cute 10 years old girl walking on the street.Negative prompt: ugly,extra limbs,extra fingersSteps: 20, Sampler: Euler a, CFG scale: 7, Seed: 100, Size: 512×512, Model hash: c52892e92a, Model: realisticVisionV30_v30VAE2.GuoFeng3模型
masterpiece,ultra detailed face, 1 cute 10 years old girl walking on the street.Negative prompt: ugly,extra limbs,extra fingersSteps: 20, Sampler: Euler a, CFG scale: 7, Seed: 100, Size: 512×512, Model hash: a83e25fe5b, Model: GuoFeng3可以看到同样的提示词和参数,使用不同的模型画出来的图是截然不同的。
二、怎样找到合适的模型?
https://civitai.com/网站上有很多好的模型和图片,我们可以访问网站,使用下面两种方式找到自己喜欢的模型。
1. 直接搜索模型
我们可以在这里筛选模型:
浏览这些模型,找到与自己期望画的图片接近的模型,比如我现在想画真人,就可以使用这个:
点击进去,点击这个Download就可以下载:
鼠标移动到”Download”按钮上,右键可复制下载地址,后面使用命令下载时需要用到这个下载地址。
2. 通过图片找到模型
点击”Images”标签,这里都是网友画的图,找到自己喜欢的,点击进去:
这个就是该图片使用的模型名称,点击即可进入到模型详情页:
三、如何安装模型
有两种安装方式,一种是在stable-diffusion-webui的界面上安装,另一种是将模型文件下载下来,放在stable-diffusion-webui的models/Stable-diffusion目录下,模型的后缀一般为.ckpt或者.safetensors。下面展示第二种方法。
1. 如果你是参考的
2. 如果你是参考的AI绘画教程之stable diffusion【1.免费部署及初体验】,可以使用
!aria2c –console-log-level=error -c -x 16 -s 16 -k 1M https://civitai.com/api/download/models/105674 -d /kaggle/working/stable-diffusion-webui/models/Stable-diffusion -o realisticVisionV30_v30VAE.safetensors解释一下上面的命令:
这个命令使用了aria2c工具来下载文件,并包含了以下参数:1.”–console-log-level=error”:设置日志级别为error,只输出错误信息到控制台。2.”-c” 或 “–continue”:开启断点续传功能,如果之前已经下载了一部分文件,则可以从已下载的部分继续下载。3.”-x 16″ 或 “–max-connection-per-server=16″:设置每个服务器使用的最大连接数为16,这样可以同时使用多个连接来下载文件,从而加快下载速度。4.”-s 16″ 或 “–split=16″:将下载的文件分成16个片段进行下载,这样也可以加快下载速度。5.”-k 1M” 或 “–min-split-size=1M”:设置每个片段的最小大小为1M,这样可以避免将下载的文件分割成太小的块,从而减缓下载速度。6.”https://civitai.com/api/download/models/105674 ↗”:要下载的文件的URL。7.”-d /kaggle/working/stable-diffusion-webui/models/Stable-diffusion” 或 “–dir=/kaggle/working/stable-diffusion-webui/models/Stable-diffusion”:指定要将下载的文件保存到的目录。8.”-o realisticVisionV30_v30VAE.safetensors” 或 “–out=realisticVisionV30_v30VAE.safetensors”:指定要将下载的文件保存为的文件名。这个命令的参数设置可以让aria2c工具在下载文件时并行下载多个片段,并使用多个连接来加快下载速度,同时保证了断点续传和文件完整性。将命令中的文件链接改为自己想要的模型链接,保存文件名改为自己想的模型的名字即可。
也可以直接复制我的代码
https://www.kaggle.com/liliangjava/stable-diffusion-webui-liliang
使用kaggle的用户建议在代码中下载,不要使用界面安装。因为kaggle每周有30小时的使用限制,每次使用之后最好关机以节省时间,如果使用界面安装,关机之后下次再启动,之前安装的模型就没有了,还需要再重新找链接安装,而代码可以保存下来,下次再运行会自动执行代码将之前使用的模型下载下来。
四、如何使用模型
按照上面的步骤安装好模型之后,重新启动stable-diffusion-webui。
kaggle重启方法:点击”Cancel Run”取消运行,再点击运行的图标重新运行。
重启之后,在界面的左上角选择相应的模型,写好提示词即可使用该模型生成图片。
五、模型合并
将模型合并起来得到一个新模型,新模型会兼具两个模型的特点。以下截图为操作步骤:
注:图中的权重表示Secondary model(B)的权重,设置为0.5表示两个模型权重相同,如果设置为0.8,则表示Secondary model(B)占80%,生成的图片风格会更接近于Secondary model(B)的风格。
合并后,左上角的模型选项中就多了一个选项,我们使用合并后的模型+之前的提示词,看看生成的效果:
masterpiece,ultra detailed face, 1 cute 10 years old girl walking on the street.Negative prompt: ugly,extra limbs,extra fingersSteps: 20, Sampler: Euler a, CFG scale: 7, Seed: 100, Size: 512×512, Model hash: 5f433ea755, Model: realistic_guofeng3非常有意思,使用合并后的模型生成的图片,就是两种模型生成图片的混合体。
六、常见名词解释
解释一些和模型有关的名词,以便我们看到的时候能够理解是什么意思。
fine-tuning
Fine-tuning是机器学习中的一种常见技术,它在预训练模型的基础上进行微调,使用特定的数据集进行进一步的训练,经过fine-tuning的模型会倾向于生成与您的数据集类似的图像,同时保持原始模型的多样性。
Checkpoint
经过fine-tuning微调后的模型就是checkpoint,所以checkpoint就是模型,.ckpt就是模型文件的后缀,在civitai网站中标记checkpoint的都是模型。
七、后续教程内容
后续计划写提示词技巧、Lora、controlnet等一系列实战教程。关注公众号,与作者一起实战stable diffusion。
如果文章对您有用,请点击“赞”、“在看”、“分享”支持作者。