前面我们简单介绍了如何安装使用Stable Diffusion web UI,如果还没看过可以阅读 AI文生图Stable Diffusion初体验 (opens in a new tab)。 除了使用自己的电脑进行安装,我们也可以借助Google Colab来进行免费体验。优点是,Google Colab提供了GPU资源,性能还可以。同时,软件相关依赖,以及模型的数据量比较大,Google的平台下载更快。还有一点,你可以随时在不同的地方进行体验(前提是要能够访问得了Google)。
Google账号注册
如果你还没有Google账号,可以先注册一个邮箱 http://mail.google.com。
或者先在网页打开 https://drive.google.com/ (opens in a new tab) , 系统会自动跳转到登录页面,然后点击左下角的 创建账号 按钮,根据要求填写信息进行注册。
登录Google云盘之后,将会看到以下界面:
进入Colab环境
在浏览器打开一个新的标签页,在地址栏输入并访问以下地址 https://colab.research.google.com/github/TheLastBen/fast-stable-diffusion/blob/main/fast-DreamBooth.ipynb (opens in a new tab)
然后点击文件菜单,选择 在云端硬盘中保存一份副本,方便后续在云盘中打开该实验环境。
点击后,浏览器将自动打开一个新的Colab页面,左上角的图标变成云盘的三角形logo。
实验环境名称可以自己定义,这里我设置成和默认的相同了。
返回到云盘 https://drive.google.com/ (opens in a new tab) ,展开 我的云端硬盘 菜单,将会看到自动创建了Colab Notebooks目录,下面有一个我们刚刚保存的副本,名称为fast-DreamBooth.ipynb。 以后,我们就可以通过点击这个文件的名称,进入对应的环境了。
初始化运行环境
回到我们的实验环境,点击右上角的 连接 按钮,让colab给我们分配一个可以运行程序的环境。 连接成功后,连接 按钮会变成 RAM磁盘 图标。
点击该 RAM磁盘 图标,可以查看已分配的内存、磁盘和GPU的容量与使用情况,GPU内存需要在运行期间才能看到。
点击左边的文件图标,可以展开文件目录。默认当前环境目录是/content,其中自动生成了sample_data目录,全路径为/content/sample_data。
挂载云盘
点击第一个代码块左边的播放按钮,执行挂载操作。
在弹出的提示框中,点击 连接到Google云端硬盘
进行授权
挂载成功后提示如下
同时,左边文件列表自动显示了一个名称为gdrive的目录。
其中,MyDrive目录,对应的就是挂载了Google Drive的“我的云端硬盘”目录,可以看到两个目录下的文件夹是相同的,都是Colab Notebooks。
安装依赖
点击Dependencies左边的播放按钮,安装相关依赖资源。
模型下载
点击Model Download下方的播放按钮,默认下载stable-diffusion v1.5模型: https://huggingface.co/runwayml/stable-diffusion-v1-5 (opens in a new tab)
左边的文件目录,多了一个stable-diffusion-v1.5的目录。
初始化会话配置
创建会话
创建一个新会话,用于保存接下来用于训练的图片,以及训练后的模型数据。会话名称,可以随便填写。
会话创建成功后,在Colab Notebooks的同级,增加了一个名为Fast-Dreambooth的目录。下一级是会话的父目录Sessions,然后FirstTest就是我们刚刚创建的会话对应的目录。而instance_images,用于存放我们要拿来作为训练输入的图片集。
上传训练图片
点击Instance Images左边的播放按钮,在该执行块的下方,将会出现上传图片的按钮。 点击Choose Files进行上传,可以先上传几张图片试试。
训练模型
由于默认训练模型的时间很长,第一次体验可以先将UNet_Training_Steps和Text_Encoder_Training_Steps调小,先体验一下。 后面跑顺了之后,可以根据需要调整这两个值,以达到更好的训练效果。
训练成功后,在FirstTest目录下生成了一个CKPT模型FirstTest.ckpt,名称和会话名相同,大小为1.99G。
测试模型
启动项目
点击Test The Trained Model下方的播放按钮,启动项目:
打开webui
打开Running on public URL后面的网址,进入webui界面:
测试训练一张图片
输入Prompt:a girl, beautiful, smile。 点击右侧的Generate按钮,等待10s左右,在右下方将生成一张图片。 可以点击放大,通过点击右键,可以在新页面打开,或者保存到本地。
参考
https://github.com/TheLastBen/fast-stable-diffusion (opens in a new tab)
https://github.com/Excalibro1/fast-stable-diffusionwik/wiki/fast-stable-diffusion-wiki (opens in a new tab)