Eson Wong's Blog

生活随想、学习笔记、读书总结、创作记录

0%

使用 Google Colab 训练 Stable Diffusion LoRA 模型教程

最近在玩 Stabl Diffusion ,想用老婆的照片来训练一个 LoRA 模型。因为 Mac 上无法调用 GPU 进行 fp16 运算, LoRa 的模型训练无法在 Mac 上运行,所以我用了 Google Colab 来训练 LoRa 模型。下面介绍如何在 Google Colab 上训练 LoRa 模型。

Colab 在空闲时会自动断开连接,释放资源。所以在操作时要尽量保持 Colab 页面不要关闭,并且不要把这个页面放在后台。如果 Colab 页面被关闭,需要重新打开页面,然后从 1.1 开始执行。

安装 LoRA 模型训练环境

  1. 访问 https://github.com/esonwong/learning-python/blob/main/kohya-LoRA-dreambooth.ipynb 点击 “Open in Colab” 按钮。

  1. 选择 “代码执行程序” -> “更改运行时类型”,在硬件加速器选项中选择 “GPU”,然后点击 “保存”。

  2. 运行 1.1 安装依赖。如果出现错误,请重复第 2 步。训练好的 LoRA 模型将保存到 Google Drive,因此需要授权访问 Google Drive。

    完成后执行按钮旁边会出现绿色的对勾,大约等待 3 分钟。

准备基础模型(底模,Checkpoint)

LoRA 模型需要搭配基础模型才能发挥预期效果。可以通过执行 2.1 选择一个基础模型 下载,或执行 2.2 指定模型 URL 来下载基础模型。

可以从 https://civitai.com 下载模型按钮上复制模型 URL。

  1. 以 ChilloutMix 为例:在 2.2modeUrl 输入框中输入 https://civitai.com/api/download/models/11745,然后执行 2.2

  2. 2.3 中选择 none,然后执行。

模型会下载到 pretrained_model 目录下。

准备训练数据

  1. 执行 3.1
  2. 准备 15 至 25 张 512x512 分辨率的人像图片作为训练数据。
  3. 将图片上传至 Colab 页面左侧的 /LoRA/train_data 文件夹。

图片处理

  1. 4.1 中勾选 convert

  2. 执行 4.1 以处理图片。

  3. 执行 4.2.14.2.2 为图片生成 prompts。

    • 对于一般图像,请使用 BLIP 生成
    • 对于动漫和漫画风格的图像,请使用 Waifu Diffusion 1.4 Tagger V2

训练

  1. 在 5.1 的 project_name 输入框中填入 将要创建的 LoRA 模型名称。

    下面示范中填的是 test-lora:

  2. pretrained_model 目录下复制底模的路径粘贴到 pretrained_model_name_or_path 输入框

  3. 执行 5.1

  4. 执行 5.2

  5. 执行 5.3

  6. 执行 5.4

  7. 执行 5.5 开始训练模型。

训练好的模型存放在 Google Drive 的 MyDrive/LoRA/output 目录,示范的文件名为 test-lora.safetensors

请我喝杯咖啡吧!

欢迎关注我的其它发布渠道