本机的配置
能跑模型,本地也跑过一点Lora训练的脚本,看看几个效果:
以上的都是配合huggingface有的模型结合civitai上的Lora模型在本地跑出来的图片,自己本地训练的Lora太拉闸了,就不放上来了……
1.安装
1.1安装git以及python3.10
git直接安装最新版本的,python3.10可以下载miniconda,默认会帮忙安装python3.10;记得git和python都要配置在环境目录下(安装的时候都有勾选提示)
git下载链接 | miniconda下载链接
1.2 stable diffusion webui 安装
在你想要的地方利用git从github上clone项目——webui项目链接
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
科学上网,如果出现网络问题,但是项目链接又能打开,说明代理设置有问题,可以查看知乎回答解决问题。或者直接网站上下载项目的zip文件也行。但是后续还有脚本需要执行git clone, 建议还是自己解决网络的问题。
项目clone完之后得到这样的目录:
双击红框里的.bat文件就行了,会自动执行安装框架的脚本。
webui-user.bat 会调用 webui.bat,里面主要执行的就是这个目录下的launch.py脚本。
在这个文件夹目录下会自动生成venv的虚拟环境,用于安装和使用配置框架的python库(这个挺好的,不用污染自己本地的python环境,代价就是占用空间)
安装过程中可能会出错,大家根据提示修复遇到的坑,继续双击.bat文件就能继续安装。
成功后执行.bat脚本终端就会出现:
浏览器输出网址就能使用了。
1.2.1 安装踩的坑
1.2.1.1 检查损失的库
所有的库安装完毕大概是这样的:
上面的终端是在目录
下,进入powershell执行进入虚拟环境的命令
大家安装过程中遇到什么库没装上的,可以跑进来pip list看看,然后也可以自己手动安装失败的库。
红色框的xformers不会在执行脚本的时候自动安装,因为这个不是必须的,功能就是加速图像生成,代价就是图像不稳定,大家看情况自己进入虚拟环境手动进行安装
pip install xformers==0.0.16rc425
1.2.1.2 webui-user.bat执行clone出错
框架安装的时候会执行clone脚本,成功的结果是这样的
这些东西被安装在repositories目录下
笔者当时安装脚本执行git clone的时候有问题,一直只能看网络不断重新执行安装脚本,但是本地git bash是可以克隆的,于是就跑到launch.py脚本里面,把需要clone的代码网址,手动clone下来了。
手动clone的肯定是最新版本,安装脚本里似乎会根据hash码去重新fetch版本?笔者就直接在prepare_envrionment函数里给他注释掉了(最新版本的还能安装成功嘛?赌一把)
1.2.1.3 安装官方的基础模型出错
上述的库和git依赖仓安装完毕了之后,脚本会下载SD1.5的基础模型。下载完了之后运行框架是需要加载模型的,如果加载模型出了问题,大家去红框的网站自行下载模型,放到models/Stable-diffusion目录下即可,原来坏掉的可以删掉。
1.3 框架的运行与模型的使用
在SD安装目录下,打开webui-user.bat,直到终端出现url链接的时候,用浏览器访问链接就可以看到界面了。
训练好的模型可以去huggingface上搜索stable diffusion关键字得到,保存在对应的目录下即可。
然后就可以在prompt文本框里输入想要生成的图像了。
1.3.1 图像生成
这里或许应该叫做prompt工程师…描述词是个技术活具体可以查看B站视频学习一下关键字和一些语法。
每次生成的图像都会保存在项目目录下的outputs中,大家可以去检查。
因为生成的图像是512*512像素的,大家可以勾选红框里的选项,生成完后可以后续进行图像的放大处理,可以直接选定放大倍数,也可以移动黄框里自定义大小。看看效果:
为什么不要直接生成1024*1024?基本网络训练的都是512*512,或者512*726的图像,直接生成比较大的图像,效果不好。
训练的seed可以根据
生成后的描述进行复制,如果遇到画风和结构是自己比较喜欢的,就固定seed,调整prompt或者其他参数吧。
1.3.2 Lora的使用
简单来说就是fine-tuning模型,因为基础模型太大,每次训练要耗费大量的资源和时间,Lora就是在一个基本模型的基础上,去微调参数,得到更符合自己目的的模型。
因此使用Lora的时候,记得看看它是基于那个基础模型的。二者不同,可能出现的结果不好。
Lora模型可以去网站上下载
for example:我想要画一个《双城之战》画风的金克斯
1. 找到对应的lora模型
下载之后放到models/Lora文件夹之下,点击下面的红框就能刷新出来本地有的Lora模型
然后生成想要的图片:
如果把Lora标记删除,那么生成的图片就完全是另一个样子
以上,后续更新本地训练的安装配置。目前在尝试controlnet的使用。
常用链接
models:huggingface
models and lora:civitai
国内的models网站,这几天刚发现的:aituzhan