如何使用 LoRA 微调 Stable Diffusion

如何使用 LoRA 微调 Stable Diffusion

借助 LoRA Stable Diffusion 模型释放你的创造力。跟随我们的博客创建你自己的 LoRA 训练模型。

关键要点

  • LoRA 是一种更高效微调 Stable Diffusion 模型的方式。
  • LoRA 模型(1MB–6MB)更易于分享和分发。
  • 你可以轻松在 Civitai 和 Hugging Face 上找到许多 LoRA 模型。
  • Novita AI 提供 LoRA 训练模型的 API,方便像你这样的开发者创建自己的 LoRA 模型。
  • 在微调 Stable Diffusion 时,LoRA 优于 Dreambooth 和 textual inversion。

引言

LoRA Stable Diffusion 模型是 AI 生成内容领域的一种创新方法,它利用低秩适应(Low-Rank Adaptation)的概念对现有 Stable Diffusion 模型进行微调,从而能够高效地将 AI 生成的图像定制为特定的风格、角色或艺术偏好。

在本博客中,我们将全面介绍 LoRA 模型,并教你如何查找和使用 LoRA 来训练 Stable Diffusion 模型。此外,我们还将提供一种定制化方式,让你通过 Novita AI API 创建自己的 LoRA 训练模型。现在,让我们一起深入探索 LoRA Stable Diffusion 的世界吧!

LoRA 概述

LoRA(低秩适应)是一种用于微调 Stable Diffusion 模型的训练技术。

什么是 LoRA?

LoRA 代表“低秩适应”(Low-Rank Adaptation),是微软研究人员为解决大语言模型微调问题而引入的一种新颖技术。

在 Stable Diffusion 的语境中,它是一种高效微调 Stable Diffusion 模型的技术。LoRA Stable Diffusion 模型体积小巧,能够对标准 checkpoint 模型进行细微而 impactful 的修改,使其体积显著减小,通常比原始模型小 10 到 100 倍。

LoRA 如何工作?

LoRA 使 Stable Diffusion 模型更具适应性,而无需重新训练整个模型。相反,它会在模型处理图像和文本交互的关键部分添加少量新的权重。通过使用一种称为秩分解(rank decomposition)的方法,可以更高效地实现这种更改,从而简化模型的权重结构。结果得到一个更小、更定制化的模型,它保留了原有的能力,同时可以专注于特定任务。该模型与原始模型 checkpoint 一起使用,生成符合特定风格或创意的图像。

LoRA 模型的关键点

在使用 LoRA 模型之前,有必要了解为什么要使用它们以及它们的不同类型。

LoRA 模型的特点

  • 支持图像修复(inpainting)。
  • 开箱即用的多向量关键点调优反转(multi-vector pivotal tuning inversion)。
  • 高效性: LoRA 所需的计算能力和内存更少,训练大型模型更高效。
  • 针对性调整: 它专注于修改交叉注意力层(cross-attention layers),而不是整个模型,从而对模型行为实现更精确的控制。
  • 兼容性: LoRA 模型设计为与原始模型 checkpoint 一起使用,确保兼容性和易用性。
  • 易于分享: LoRA 模型体积小巧(1MB–6MB),便于分享和分发。

LoRA 模型示例

根据 LoRA 模型的不同功能,可以将其分为以下类型:

  • 角色 LoRA: 角色 LoRA 模型经过微调,能够捕捉卡通、视频游戏及其他娱乐平台中特定角色的视觉特征、体型和面部表情。它们有助于制作粉丝艺术、加速游戏开发流程,并满足动画和插画行业的需求。
  • 风格 LoRA: 风格 LoRA 模型经过微调,可以模仿特定艺术家的技法或标志性风格,从而生成反映这些特定美学的图像。它们常用于为参考图像注入独特的视觉风格,使其与所选艺术风格保持一致。

在哪里查找和使用 LoRA 模型

在 Civitai 或 Hugging Face 上下载 LoRA 模型文件

Civitai 是一个托管了大量 LoRA 模型的网站,Hugging Face 也是著名的 LoRA 库来源。你可以在这两个网站上轻松找到许多 LoRA 模型,只需访问其网站进行搜索即可。

在 AUTOMATIC1111 Stable Diffusion GUI 中使用 LoRA 模型

  • 安装 LoRA 模型: 只需将模型文件放入以下文件夹:

stable-diffusion-webui/models/Lora

  • 在提示词中使用 LoRA: 在提示词或负面提示词中使用以下语法来添加带权重的 LoRA:

lora:名称:权重

使用 Novita AI 训练自己的 LoRA 模型进行微调

在 Stable Diffusion 中,有许多模型在架构和流程上相似,但输出不同。因此,用于微调 Stable Diffusion 的 LoRA 模型也多种多样。此外,LoRA 并非完整的模型,而是一个附加组件。也就是说,你可以创建自己的 LoRA 模型,根据需求不断“教”它并训练任何概念。

如果你想创建自己的 LoRA,可以将 API 集成到自己的程序中。Novita AI 正是这样一个平台,为像你这样的开发者提供 API 来创建独特的 LoRA 模型,并提供 playground 来训练你的 LoRA 模型。由于所有训练都将计算密集,请确保你有一台配备 GPU 的机器来继续。

查找关于 LoRA 训练的 API

  • 步骤 1: 访问 Novita AI 网站并创建一个账户。
  • 步骤 2: 导航至“API”,并在“Training”选项卡下找到 LoRA 训练的 API。Novita AI 提供“LoRA for subject training”和“LoRA for style training”,你可以用来训练角色 LoRA 和风格 LoRA。
  • 步骤 3: 开始训练你的 LoRA 模型。

开始 LoRA 模型训练

获取 Novita AI API 密钥后,即可开始训练你的 LoRA 模型。我们以“LoRA for subject training”为例,展示如何训练模型。

  • 步骤 1:上传用于模型训练的图片。 获取图片上传 URL 并放入以下文件夹。每个任务最多支持上传 50 张图片。为了获得良好的最终效果,上传的图片应满足一些基本条件,例如:“人像居中”、“无水印”、“画面清晰”等。

curl -X PUT -T “{{filepath}}” “{{upload_url}}”

  • 步骤 2:配置参数。 模型训练有四种参数类型:模型信息参数、数据集参数、组件参数和专家参数。根据需求配置参数。

  • 步骤 3:开始训练任务。 Novita AI 提供了一个用户友好的 ** 训练 playground** 来训练你的模型。只需输入 Novita AI API 密钥,按照下图中的步骤操作,即可查看训练结果。

  • 步骤 4:获取训练状态。 输入以下命令获取模型训练的进度以及训练后模型的部署状态。

curl — location — request GET ‘training task_id’ \ — header ‘Authorization: Bearer {{Key}}’

  • 步骤 5:开始使用模型。 当响应显示“task_status: SUCCESS”且“model_status: SERVING”时,即可开始使用训练好的模型。

训练 Stable Diffusion 的其他方法

Dreambooth 和 Textual Inversion

除了 LoRA,Dreambooth 和 textual inversion 也是微调 Stable Diffusion 的流行方法。然而,与 Dreambooth 产生的大型模型文件(2–7 GB)相比,LoRA 体积更小、效率更高;与 textual inversion 产生的极小结果(约 100 KB)相比,LoRA 可用于通用微调,适应新的领域或数据集。

训练技巧

  • GPU 要求: 训练 LoRA 模型计算需求高,因此请确保你有一台配备强大 GPU 的机器来承担工作量。
  • 模型兼容性: LoRA 模型应与要增强的基础 Stable Diffusion 模型兼容。检查兼容性以避免集成问题。
  • 参数调整: 仔细调整 LoRA 模型的参数,因为它们会显著影响输出,包括 LoRA 调整的权重以及任何其他特定的超参数。

总结

总之,LoRA Stable Diffusion 模型代表了 AI 生成艺术和内容创作领域的重大进步。利用 Novita AI 的 LoRA 模型 API 来训练你自己的模型,以微调 Stable Diffusion 模型。总体而言,LoRA Stable Diffusion 模型是一个强大的工具,在负责任使用的前提下,能够极大地增强 AI 在艺术和创意应用中的能力。

Novita AI 是一个一站式平台,释放无限创造力,为你提供 100 多个 API。从图像生成、语言处理到音频增强和视频操作,按量付费价格低廉,助你在构建自己产品的同时免去 GPU 维护的麻烦。立即免费试用。

推荐阅读

  1. 添加 LoRA Stable Diffusion:全面指南
  2. LoRA AI 艺术生成器:轻松创作艺术
  3. LoRA AI 生成图像 —— 艺术的未来