如何从 FLUX 微调 / DreamBooth 训练中提取 LoRA 完整教程与比较…


5 个月前

如何从 FLUX 微调 / DreamBooth 训练中提取 LoRA

完整教程及微调、提取与 LoRA 训练的比较

None

None

None

None

详细信息

  • 正如你所知,我已经完善了我的 FLUX 微调工作流程,直到有新的方法出现。
  • 这与训练 LoRA 完全相同,只是你需要将配置加载到 DreamBooth 标签中,而不是 LoRA 标签。
  • 配置和必要的说明在这里分享:https://www.patreon.com/posts/kohya-flux-fine-112099700
  • 目前我们有 16GB、24GB 和 48GB 的 FLUX 微调 / DreamBooth 完整检查点训练配置,但所有配置的质量相同,只有训练时长不同。
  • Kohya 今天宣布,较低 VRAM 配置将通过块交换技术算法改进获得约 30% 的速度提升,希望如此。
  • 我经常被问到如何从 FLUX 的完整微调 / DreamBooth 训练检查点中提取 LoRA。
  • 所以这里有一个教程,并比较不同的设置。
  • 在这篇文章中,图像 1-5 是完整图像的链接,点击它们查看或下载。

如何提取 LoRA

  • 我们将使用 Kohya GUI。
  • 如何安装、使用和训练的完整教程在这里:https://youtu.be/nySGu12Y05k
  • 云服务的完整教程在这里:https://youtu.be/-uhL2nW7Ddw
  • 默认设置效果不佳。
  • 因此,请查看画廊中分享的第一张图像,并按其设置提取你的 FLUX LoRA。
  • 按照 图像 1 中的步骤进行操作。

那么你可以改变什么?

  • 你可以将保存精度更改为 FP16 或 BF16,这样可以将保存到磁盘的 LoRA 大小减半。
  • 质量有差异吗?
  • 你可以在 图像 2 中查看比较,我没有注意到任何显著的质量差异。
  • 我认为 FP16 更接近 FP32 的保存效果。
  • 另一个可以更改的设置是网络维度(Rank)。
  • 它的有效范围是 640,超过这个值会出错。
  • 保存的 Rank 越高,越接近原始微调模型,但会占用更多空间。
  • 你可以在 图像 3 中查看网络维度(Rank)的比较。

如何使用提取的 LoRA

  • 我发现将提取的 LoRA 强度设置为 1.1 时,当网络维度(Rank)设置为 640 时,它更接近原始的微调 / DreamBooth 训练的完整检查点。
  • 你可以在 图像 4 中查看完整的 LoRA 强度比较。
  • 如果你使用较低的网络维度(Rank),可能需要使用更高的 LoRA 强度。
  • 我在 SwarmUI 中使用 FLUX,这里有 SwarmUI 的完整教程。
  • 主要教程:https://youtu.be/HKX8_F1Er_w
  • FLUX 教程:https://youtu.be/bupRePUOA18

结论

  • 在相同的训练数据集(使用 15 张图像)、相同的步骤数量(所有比较训练都是 150 轮,因此 2250 步),几乎相同的训练时长下,FLUX 的微调 / DreamBooth 训练产生了最佳结果。
  • 所以是的,微调确实比 LoRA 训练更好。
  • 令人惊叹的相似性,质量和最少的过拟合问题。
  • 此外,从微调的完整检查点提取 LoRA,产生的结果远优于 LoRA 训练本身。
  • 从完整训练检查点提取 LoRA 在 SD 1.5 和 SDXL 中也产生了更好的结果。
  • 这三者的比较在 图像 5 中进行了展示(查看图像顶部)。
  • 640 网络维度(Rank)FP16 LoRA 占用 6.1 GB 磁盘空间。
  • 你也可以尝试 128 网络维度(Rank)FP16 和不同的 LoRA 强度,以使其更接近微调模型。
  • 此外,你可以尝试 Kohya GUI 的 Resize LoRA 功能,但希望这将是我之后的另一个研究和文章。

图像原始链接

FluxAI 中文

© 2025. All Rights Reserved