Stable Diffusion:使用自己的数据集微调 Stable Diffusion 3.5 LoRA 文生图模型

Stable Diffusion:使用自己的数据集微调 Stable Diffusion 3.5 LoRA 文生图模型

Stable Diffusion:使用自己的数据集微调 Stable Diffusion 3.5 LoRA 文生图模型

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述

前言

由于本人水平有限,难免出现错漏,敬请批评改正。更多精彩内容,可点击进入Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏、人工智能混合编程实践专栏或我的个人主页查看Ultralytics:使用 YOLO11 进行速度估计Ultralytics:使用 YOLO11 进行物体追踪Ultralytics:使用 YOLO11 进行物体计数Ultralytics:使用 YOLO11 进行目标打码人工智能混合编程实践:C++调用Python ONNX进行YOLOv8推理人工智能混合编程实践:C++调用封装好的DLL进行YOLOv8实例分割人工智能混合编程实践:C++调用Python ONNX进行图像超分重建人工智能混合编程实践:C++调用Python AgentOCR进行文本识别通过计算实例简单地理解PatchCore异常检测Python将YOLO格式实例分割数据集转换为COCO格式实例分割数据集YOLOv8 Ultralytics:使用Ultralytics框架训练RT-DETR实时目标检测模型基于DETR的人脸伪装检测YOLOv7训练自己的数据集(口罩检测)YOLOv8训练自己的数据集(足球检测)YOLOv5:TensorRT加速YOLOv5模型推理YOLOv5:IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano(五):TensorRT加速YOLOv5目标检测YOLOv5:添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5:yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5:使用7.0版本训练自己的实例分割模型(车辆、行人、路标、车道线等实例分割)使用Kaggle GPU资源免费体验Stable Diffusion开源项目Stable Diffusion:在服务器上部署使用Stable Diffusion WebUI进行AI绘图(v2.0)Stable Diffusion:使用自己的数据集微调训练LoRA模型(v2.0)

环境要求

Package Version ------------------------ ------------ absl-py 2.3.1 accelerate 1.11.0 aiohappyeyeballs 2.6.1 aiohttp 3.13.1 aiosignal 1.4.0 annotated-types 0.7.0 anyio 4.11.0 attrs 25.4.0 bitsandbytes 0.48.1 certifi 2025.10.5 charset-normalizer 3.4.4 click 8.3.0 datasets 4.2.0 diffusers 0.35.2 dill 0.4.0 filelock 3.20.0 frozenlist 1.8.0 fsspec 2025.9.0 gitdb 4.0.12 GitPython 3.1.45 grpcio 1.75.1 h11 0.16.0 hf-xet 1.1.10 httpcore 1.0.9 httpx 0.28.1 huggingface-hub 0.35.3 idna 3.11 importlib_metadata 8.7.0 Jinja2 3.1.6 Markdown 3.9 MarkupSafe 3.0.3 modelscope 1.31.0 mpmath 1.3.0 multidict 6.7.0 multiprocess 0.70.16 networkx 3.5 numpy 2.3.4 nvidia-cublas-cu11 11.11.3.6 nvidia-cuda-cupti-cu11 11.8.87 nvidia-cuda-nvrtc-cu11 11.8.89 nvidia-cuda-runtime-cu11 11.8.89 nvidia-cudnn-cu11 9.1.0.70 nvidia-cufft-cu11 10.9.0.58 nvidia-curand-cu11 10.3.0.86 nvidia-cusolver-cu11 11.4.1.48 nvidia-cusparse-cu11 11.7.5.86 nvidia-nccl-cu11 2.20.5 nvidia-nvtx-cu11 11.8.86 packaging 25.0 pandas 2.3.3 peft 0.17.1 Pillow 9.5.0 pip 24.0 platformdirs 4.5.0 propcache 0.4.1 protobuf 6.33.0 psutil 7.1.1 pyarrow 21.0.0 pydantic 2.12.3 pydantic_core 2.41.4 python-dateutil 2.9.0.post0 pytz 2025.2 PyYAML 6.0.3 regex 2025.10.22 requests 2.32.5 safetensors 0.6.2 sentencepiece 0.2.1 sentry-sdk 2.42.1 setuptools 65.5.0 six 1.17.0 smmap 5.0.2 sniffio 1.3.1 sympy 1.14.0 tensorboard 2.20.0 tensorboard-data-server 0.7.2 tokenizers 0.22.1 torch 2.4.1+cu118 torchaudio 2.4.1+cu118 torchvision 0.19.1+cu118 tqdm 4.67.1 transformers 4.57.1 triton 3.0.0 typing_extensions 4.15.0 typing-inspection 0.4.2 tzdata 2025.2 urllib3 2.5.0 wandb 0.22.2 Werkzeug 3.1.3 xxhash 3.6.0 yarl 1.22.0 zipp 3.23.0 

相关介绍

Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。PyTorch 是一个深度学习框架,封装好了很多网络和深度学习相关的工具方便我们调用,而不用我们一个个去单独写了。它分为 CPU 和 GPU 版本,其他框架还有 TensorFlow、Caffe 等。PyTorch 是由 Facebook 人工智能研究院(FAIR)基于 Torch 推出的,它是一个基于 Python 的可续计算包,提供两个高级功能:1、具有强大的 GPU 加速的张量计算(如 NumPy);2、构建深度神经网络时的自动微分机制。Stable Diffusion 3.5 简介核心特点
Stable Diffusion 3.5 是 Stability AI 于 2024 年 10 月 22 日正式发布的最新图像生成模型,是 Stable Diffusion 3.0 系列的升级版本,旨在回应社区对 SD3 Medium 版本的不满。主要版本:Stable Diffusion 3.5 Large:80亿参数,支持100万像素分辨率的高清图像生成Stable Diffusion 3.5 Large Turbo:80亿参数,仅需4步即可生成高质量图像,速度比 Large 版本快5-10倍Stable Diffusion 3.5 Medium(10月29日发布):25亿参数,适合消费级硬件,支持0.25-200万像素图像生成技术核心:采用 MM-DiT(Modified Multimodal Diffusion Transformer)作为核心基于改进的 MMDiT-X 架构和训练方法集成 Query-Key Normalization,简化微调过程,提升可定制性优势图像质量提升:生成图像更清晰,画质优于前代版本提示词遵循能力:在提示词精确度方面领先市场,能更准确地理解用户指令多样化输出:能生成代表不同肤色、特征和背景的图像,无需复杂提示词广泛风格支持:可生成3D渲染、摄影作品、传统绘画、线条艺术等多种风格商业友好:年收入不超过100万美元的组织或个人可免费商用修复重大Bug:修复了 SD3 中"无法生成躺在草地上的女孩"的重大问题局限性结构稳定性:与 Flux 模型相比,在手指、文字等结构细节上略逊一筹提示词要求:当提示词缺乏具体性时,输出结果的不确定性可能增加硬件需求:虽然比前代优化,但 Large 版本仍需要10G以上显卡和32G以上内存应用场景艺术创作:艺术家和设计师生成独特艺术作品或设计概念图游戏开发:快速生成游戏角色、场景和道具的概念图广告营销:设计广告图像和营销材料,快速迭代创意媒体娱乐:在电影和视频制作中生成特效背景或场景教育研究:创建教学材料或模拟科学现象商业应用:中小企业和个人可免费商用,用于产品设计和营销与竞品对比与 Flux.1 DEV 相比:SD3.5 Large 推理速度略快(1分50秒 vs 2分10秒),画质更清晰SD3.5 在提示词遵循能力上更优,但 Flux 在结构稳定性(如手指、文字)上略胜一筹SD3.5 Large 支持100万像素,Flux 支持200万像素官方源代码: https://huggingface.co/stabilityai/stable-diffusion-3.5-largePatrick Esser, Sumith Kulal, Andreas Blattmann, Rahim Entezari, Jonas Muller, Harry Saini, Yam Levi, Dominik Lorenz, Axel Sauer, Frederic Boesel, Dustin Podell, Tim Dockhorn, Zion English,
Kyle Lacey, Alex Goodwin, Yannik Marek, Robin Rombach, Stability AI. Scaling Rectified Flow Transformers for High-Resolution Image Synthesis. 2024

微调 Stable Diffusion 3.5 LoRA 文生图模型

下载Stable Diffusion 3.5 LoRA Fine-Tuning项目

官方源代码: https://github.com/seochan99/stable-diffusion-3.5-text2image-lora.git

Windows

在这里插入图片描述

Linux

git clone https://github.com/seochan99/stable-diffusion-3.5-text2image-lora.git 

准备数据集

准备一个用于模型微调数据集。

dataset/ ├── images/ │ ├── landscape_001.jpg │ ├── portrait_001.jpg │ └── ... └── metadata.jsonl 
在这里插入图片描述


在这里插入图片描述

metadata.jsonl,内容如下。

{"image":"images/landscape_001.jpg","caption":"a breathtaking mountain landscape with snow-capped peaks, a crystal clear lake reflecting the sky, and pine trees in the foreground"}{"image":"images/portrait_001.jpg","caption":"a professional portrait of a young woman with curly brown hair, wearing a blue denim jacket, smiling softly, natural lighting"}{"image":"images/cityscape_001.jpg","caption":"a bustling cyberpunk cityscape at night, neon signs glowing in pink and blue, flying cars, futuristic skyscrapers reaching into the clouds"}{"image":"images/nature_001.jpg","caption":"a peaceful forest scene with tall oak trees, sunlight filtering through the leaves, a small stream flowing over rocks"}{"image":"images/abstract_001.jpg","caption":"an abstract digital art piece with flowing geometric shapes in vibrant colors, purple and gold gradients, modern minimalist style"}{"image":"images/animal_001.jpg","caption":"a majestic golden retriever dog sitting in a flower field, tongue out, happy expression, wildflowers in the background"}

下载预训练模型

Hugging Face

import os os.environ['HF_ENDPOINT']='https://hf-mirror.com'# 如果没有科学上网,可以设置国内镜像。from huggingface_hub import snapshot_download snapshot_download(repo_id="stabilityai/stable-diffusion-3.5-large", local_dir="stabilityai/stable-diffusion-3.5-large")

Model Scope

from modelscope import snapshot_download model_dir = snapshot_download('AI-ModelScope/stable-diffusion-3.5-medium', local_dir="stabilityai/stable-diffusion-3.5-medium")

进行训练

python stable-diffusion-3.5-text2image-lora-main/train_text_to_image_lora_sd35.py --pretrained_model_name_or_path stabilityai/stable-diffusion-3.5-medium --train_data_dir sd3_test/stable-diffusion-3.5-text2image-lora-main/examples/dataset/ --output_dir sd3_test/stable-diffusion-3.5-text2image-lora-main/outputs/sd35-lora --resolution 1024 --train_batch_size 1 --gradient_accumulation_steps 4 --num_train_epochs 50 --rank 64 --learning_rate 0.0001 --text_encoder_lr 1e-05 --lr_scheduler cosine --lr_warmup_steps 500 --lr_num_cycles 1 --mixed_precision fp16 --validation_epochs 2 --num_validation_images 2 --checkpointing_steps 500 --report_to tensorboard --dataloader_num_workers 2 --seed 42 --precondition_outputs 1 --random_flip --gradient_checkpointing --train_text_encoder 

输出结果

在这里插入图片描述

进行预测

python stable-diffusion-3.5-text2image-lora-main/inference.py --model_path stabilityai/stable-diffusion-3.5-medium --lora_path stable-diffusion-3.5-text2image-lora-main/outputs/sd35-lora/pytorch_lora_weights.safetensors --prompt "a professional portrait of a young woman with curly brown hair, wearing a blue denim jacket, smiling softly, natural lighting" --num_images 4 --seed 42

输出结果

在这里插入图片描述

参考

[1] Patrick Esser, Sumith Kulal, Andreas Blattmann, Rahim Entezari, Jonas Muller, Harry Saini, Yam Levi, Dominik Lorenz, Axel Sauer, Frederic Boesel, Dustin Podell, Tim Dockhorn, Zion English,
Kyle Lacey, Alex Goodwin, Yannik Marek, Robin Rombach, Stability AI. Scaling Rectified Flow Transformers for High-Resolution Image Synthesis. 2024

[2] https://huggingface.co/stabilityai/stable-diffusion-3.5-large
[3] https://huggingface.co/stabilityai/stable-diffusion-3.5-medium

由于本人水平有限,难免出现错漏,敬请批评改正。更多精彩内容,可点击进入Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏、人工智能混合编程实践专栏或我的个人主页查看Ultralytics:使用 YOLO11 进行速度估计Ultralytics:使用 YOLO11 进行物体追踪Ultralytics:使用 YOLO11 进行物体计数Ultralytics:使用 YOLO11 进行目标打码人工智能混合编程实践:C++调用Python ONNX进行YOLOv8推理人工智能混合编程实践:C++调用封装好的DLL进行YOLOv8实例分割人工智能混合编程实践:C++调用Python ONNX进行图像超分重建人工智能混合编程实践:C++调用Python AgentOCR进行文本识别通过计算实例简单地理解PatchCore异常检测Python将YOLO格式实例分割数据集转换为COCO格式实例分割数据集YOLOv8 Ultralytics:使用Ultralytics框架训练RT-DETR实时目标检测模型基于DETR的人脸伪装检测YOLOv7训练自己的数据集(口罩检测)YOLOv8训练自己的数据集(足球检测)YOLOv5:TensorRT加速YOLOv5模型推理YOLOv5:IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano(五):TensorRT加速YOLOv5目标检测YOLOv5:添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5:yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5:使用7.0版本训练自己的实例分割模型(车辆、行人、路标、车道线等实例分割)使用Kaggle GPU资源免费体验Stable Diffusion开源项目Stable Diffusion:在服务器上部署使用Stable Diffusion WebUI进行AI绘图(v2.0)Stable Diffusion:使用自己的数据集微调训练LoRA模型(v2.0)

Read more

Flutter 三方库 twitter_intent 的鸿蒙化适配指南 - 实现一键唤起 X (原 Twitter) 社交意图、支持预填发帖内容与第三方授权跳转

Flutter 三方库 twitter_intent 的鸿蒙化适配指南 - 实现一键唤起 X (原 Twitter) 社交意图、支持预填发帖内容与第三方授权跳转

欢迎加入开源鸿蒙跨平台社区:[https://openharmonycrossplatform.ZEEKLOG.net, https://openharmonycrossplatform.ZEEKLOG.net] Flutter 三方库 twitter_intent 的鸿蒙化适配指南 - 实现一键唤起 X (原 Twitter) 社交意图、支持预填发帖内容与第三方授权跳转 前言 在进行 Flutter for OpenHarmony 的全球化应用开发时,支持社交媒体的快速分享和交互是提升用户活跃度的重要手段。twitter_intent 致力于通过简单的 URL Intent 模式,让应用能瞬间跳转到 X (原 Twitter) 并自动填充推文内容、用户名或搜索词。本文将具体介绍如何在鸿蒙端构建丝滑的社交分享体验。 一、原理解析 / 概念介绍 1.1 基础原理 twitter_intent 利用了移动端的

By Ne0inhk
HarmonyOS应用开发实战(基础篇)Day07-《登录注册页面》

HarmonyOS应用开发实战(基础篇)Day07-《登录注册页面》

设计:从零构建一个专业级登录页面 在移动应用开发中,登录/注册页面是用户与系统建立身份关联的第一道门户,其设计质量直接影响用户的第一印象与使用体验。本文将基于 ArkTS 与 HarmonyOS 的 ArkUI 框架,从 UI 设计到交互逻辑,完整实现一个简洁、安全、响应式的登录页面。 一、设计目标与视觉规范 根据需求草图,我们的登录页面需包含以下核心元素: * 顶部 Logo:品牌标识,增强识别度; * 账号输入框:支持文本输入,带占位提示; * 密码输入框:密文显示,保障安全; * 操作按钮组:包含“登录”与“取消”两个功能按钮; * 交互反馈:输入校验、加载状态、跳转逻辑。 整体风格遵循 HarmonyOS 设计语言(HUAWEI Design): * 使用 vp

By Ne0inhk
【Linux】Linux基本使用和程序部署

【Linux】Linux基本使用和程序部署

🎬 那我掉的头发算什么:个人主页 🔥 个人专栏: 《javaSE》《数据结构》《数据库》《javaEE》 ⛺️待到苦尽甘来日 文章目录 * Linux环境搭建 * 环境搭建方式 * 使用云服务器 * 使用终端软件连接到Linux * Linux常用命令 * ls * pwd * cd * touch * cat * mkdir * rm * cp * mv * tail * vim * grep * ps * netstat * 搭建java部署环境 * apt * JDK * MYSQL * 部署web项目到Linux * 什么是部署 * 环境配置 * 构建项目并打包 * 上传jar包运行程序 * 杀死进程 Linux环境搭建 环境搭建方式 主要有四种: 1. 直接安装在物理机上。但是 Linux 桌面使用起来非常不友好。所以不建议。【不推荐】。 2. 使用虚拟机软件,

By Ne0inhk

Flutter 三方库 super_dates 的鸿蒙化适配指南 - 在鸿蒙系统上构建极致、强类型、更优雅的 DateTime 增强与时间逻辑审计引擎

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 super_dates 的鸿蒙化适配指南 - 在鸿蒙系统上构建极致、强类型、更优雅的 DateTime 增强与时间逻辑审计引擎 在鸿蒙(OpenHarmony)系统的日程管理、精密任务调度(如鸿蒙版闹钟/日历)、理财工具或带有复杂时间区间(Periods)计算的应用中,如何摆脱标准 DateTime 库中那些模糊的整数偏移,转而使用语义明确、强类型保障的现代日期 API?super_dates 为开发者提供了一套工业级的、基于 Extension 的 DateTime 深度增强方案。本文将深入实战其在鸿蒙时间维度逻辑层中的应用。 前言 什么是 SuperDates?它不是一个替代 DateTime 的庞大框架,而是对 Dart 原生时间类的一次“极致外科手术级”

By Ne0inhk