【Dive Into Stable Diffusion v3.5】1:开源项目正式发布——深入探索SDv3.5模型全参/LoRA/RLHF训练

目录

  • [1 引言](#1 引言)
  • [2 项目简介](#2 项目简介)
  • [3 快速上手](#3 快速上手)
    • [3.1 下载代码](#3.1 下载代码)
    • [3.2 环境配置](#3.2 环境配置)
    • [3.3 项目结构](#3.3 项目结构)
    • [3.4 下载模型与数据集](#3.4 下载模型与数据集)
    • [3.5 运行指令](#3.5 运行指令)
    • [3.6 核心参数说明](#3.6 核心参数说明)
      • [3.6.1 通用参数](#3.6.1 通用参数)
      • [3.6.2 优化器/学习率](#3.6.2 优化器/学习率)
      • [3.6.3 数据相关](#3.6.3 数据相关)
  • [4 结语](#4 结语)

1 引言

在人工智能和机器学习领域,生成模型的应用越来越广泛。Stable Diffusion 作为其中的佼佼者,因其强大的图像生成能力而备受关注。今天,我的开源项目 Dive Into Stable Diffusion v3.5 已经正式发布!这个项目旨在总结我在开发过程中所学到和用到的知识和工具,同时帮助其他开发者更好地理解和应用 Stable Diffusion v3.5 模型。目前,项目提供了多种微调和优化的方法,包括全量参数微调、LoRA、DreamBooth、RLHF和DPO训练等。

项目地址:https://github.com/Donvink/dive-into-stable-diffusion-v3-5

2 项目简介

Dive Into Stable Diffusion v3.5 是一个用于微调 Stable Diffusion v3.5 的训练代码库,基于Hugging Face 的 diffusers 库进行适配开发。

以下是项目的主要功能模块:

  • SDv3.5 模型的全量微调
  • 使用 LoRA 微调 SDv3.5 模型
  • 结合 DreamBooth 与 LoRA 微调 SDv3.5 模型
  • 基于 DDPO 和美学评分器的 RLHF(人类反馈强化学习)微调 SDv3.5 模型
  • 基于 GRPO 和美学评分器的 RLHF 微调 SDv3.5 模型
  • 基于 DPO 微调 SDv1.5 模型
  • 基于 ReFL 和图文匹配评分器的 RLHF 微调 SDv1.5 模型

让我们一起 Dive Into Stable Diffusion v3.5 吧!

3 快速上手

3.1 下载代码

bash 复制代码
git clone https://github.com/Donvink/dive-into-stable-diffusion-v3-5.git

3.2 环境配置

首先安装所需的依赖项:

bash 复制代码
pip install -r requirements.txt

3.3 项目结构

项目的目录结构如下:

  • datas/ 数据集目录(从 HuggingFace Hub 下载),存放训练用的图片或提示文本
  • models/ 预训练模型目录(从 huggingface.co/models 下载)
  • outputs/ 输出目录,用于保存模型预测结果和训练检查点
  • scripts/ SDv3.5 训练主脚本目录
  • src/ 核心训练流程和训练器代码
  • demo.py / demo.sh SDv3.5 推理示例
  • requirements.txt / setup.py 基础依赖配置
  • train*.py 核心训练脚本

3.4 下载模型与数据集

从 HuggingFace 或 GitHub 下载所需的模型:

bash 复制代码
models
|-- aesthetics-predictor-v1-vit-large-patch14
|-- clip-vit-large-patch14
|-- improved-aesthetic-predictor
`-- stable-diffusion-3.5-medium

从以下地址下载 improved-aesthetic-predictor:
improved-aesthetic-predictor

下载数据集:

bash 复制代码
datas
|-- dogs
`-- pokemon

3.5 运行指令

  • SDv3.5 全量微调
bash 复制代码
bash scripts/train_full_finetuning_sd3.sh
  • LoRA 微调 SDv3.5
bash 复制代码
bash scripts/train_text_to_image_lora_sd3.sh
  • DreamBooth + LoRA 微调 SDv3.5
bash 复制代码
bash scripts/train_dreambooth_lora_sd3.sh
  • DDPO + 美学评分器 RLHF 微调
bash 复制代码
bash scripts/train_aesthetic_ddpo_sd3.sh
  • GRPO + 美学评分器 RLHF 微调
bash 复制代码
# 注意:这部分代码可能存在问题,还需要完善。
bash scripts/train_aesthetic_rlhf_grpo_lora_sd3.sh
  • DPO 微调 SDv1.5
bash 复制代码
bash scripts/train_dpo_sd_v1_5.sh
  • ReFL + 图文匹配评分器的 RLHF 微调
bash 复制代码
bash scripts/train_refl_v1_5.sh

3.6 核心参数说明

3.6.1 通用参数

  • --pretrained_model_name_or_path 预训练模型路径
  • --output_dir 模型输出和日志目录
  • --seed 训练随机种子(默认不设置)

3.6.2 优化器/学习率

  • --max_train_steps 总训练步数
  • --gradient_accumulation_steps 梯度累积步数
  • --train_batch_size 实际批大小(具体参考脚本说明)
  • --checkpointing_steps 模型保存间隔步数
  • --gradient_checkpointing 自动为 SDXL 启用梯度检查点
  • --learning_rate 基础学习率
  • --scale_lr 学习率缩放(推荐启用但非默认)
  • --lr_scheduler 学习率调度器类型(默认线性预热)
  • --lr_warmup_steps 学习率预热步数

3.6.3 数据相关

  • --dataset_name 数据集名称(来自 HuggingFace Hub)
  • --cache_dir 本地数据集缓存路径(需根据文件系统调整)
  • --resolution 输入分辨率(默认 1024)
  • --random_crop--no_hflip 数据增强设置
  • --dataloader_num_workers 数据加载器工作线程数

4 结语

我们希望 Dive Into Stable Diffusion v3.5 能够成为你在探索生成模型道路上的得力助手。无论你是经验丰富的开发者还是初学者,我们都欢迎你参与到这个项目中来,共同推动技术的进步。如果你有任何问题或建议,请随时通过 GitHub 提交 Issue 或 Pull Request。

让我们一起开启这段精彩的旅程吧!

如果觉得有用,别忘了点亮 ⭐️ 支持开源!

相关推荐
Dev7z4 分钟前
舌苔舌象分类图像数据集
人工智能·分类·数据挖掘
万俟淋曦7 分钟前
【论文速递】2025年第30周(Jul-20-26)(Robotics/Embodied AI/LLM)
人工智能·深度学习·ai·机器人·论文·robotics·具身智能
高洁0119 分钟前
大模型-高效优化技术全景解析:微调 量化 剪枝 梯度裁剪与蒸馏 下
人工智能·python·深度学习·神经网络·知识图谱
CoookeCola20 分钟前
MovieNet(A holistic dataset for movie understanding) :面向电影理解的多模态综合数据集与工具链
数据仓库·人工智能·目标检测·计算机视觉·数据挖掘
张艾拉 Fun AI Everyday26 分钟前
Gartner 2025年新兴技术成熟度曲线
人工智能
菜鸟‍30 分钟前
【论文学习】大语言模型(LLM)论文
论文阅读·人工智能·学习
默 语1 小时前
AI驱动软件测试全流程自动化:从理论到实践的深度探索
运维·人工智能·驱动开发·ai·自动化·ai技术·测试全流程
说私域1 小时前
基于开源AI大模型、AI智能名片与S2B2C商城小程序的购物中心精准零售数据架构研究
人工智能·小程序·开源
key061 小时前
大模型在网络安全领域的应用与评测
网络·人工智能·web安全
北京耐用通信2 小时前
破解工业通信瓶颈:耐达讯自动化Modbus转Profinet网关连接驱动器的奥秘
人工智能·物联网·网络协议·自动化·信息与通信