FLUX本地Lora训练

原创
2024/08/19 15:34
阅读数 389

前言

 
目前 Flux 出现了 3 个训练工具
SimpleTuner https://github.com/bghira/SimpleTuner,
X-LABS 的https://github.com/XLabs-AI/x-flux
ai-toolkit https://github.com/ostris/ai-toolkit
 
待支持:https://github.com/kohya-ss/sd-scripts/
目前 前两个没有优化,硬件门槛很高,网友反馈效果不佳
 
目前测试 ai-toolkit,4090 24G 的显存可以训练
 

1.安装

#clone代码 
git clone https://github.com/ostris/ai-toolkit 
#下载子模块依赖 
git submodule update --init --recursive 
#创建 python 虚拟环境 
python -m venv venv 
.\venv\Scripts\activate 
#安装python依赖包 
pip install -r requirements.txt 
#这里注意单独去下载安装 torch和 torchvision
网址:https://pytorch.org/

2.下载 FLUX 模型

由于Hugging Face 需要魔法访问,建议提前下载好 FLUX,指定本地路径加载底模
这里选择 魔搭社区
https://modelscope.cn/models/ai-modelscope/flux.1-dev/files
建议用命令行下载,git 下载太慢了,也不能续传
pip install modelscope
下载完整的模型 repo
modelscope download --model ai-modelscope/flux.1-dev
 

3.修改配置

首先找到 config 下的 examples 目录里的 train_lora_flux_24gb.yaml
复制到 config 进行编辑修改

3.1 配置底模

name_or_path: "FLUX.1-dev'
目前推荐是用 dev 做底模,训练后的 lora 模型 其他也能用。
新建一个文件夹 FLUX.1-dev
将第2 步下载好的模型文件夹移动到FLUX.1-dev文件

3.2 数据集的配置

-folder_path:"dataset"
在项目根目录创建dataset文件夹
目前只支持 jpg,jpeg,png 将文件放在 dataset 文件夹里
并创建一个同名的 txt 文件用来描述 图片内容,内容是 触发词,提示词

3.3 批大小调整

batch_size=1 # 配置 1 ,才能运行

3.4 训练步数

steps:2000 设置 500-4000 步

3.5 需要额外再加配置

需要在 datasets 下面手动添加 num_repeates:20
现在不填,默认是 0
 

4.启动训练

python run.py. config/train_lora_flux_24gb.yaml
 
观察任务管理器的内存和显存的占用
如果内存占用过高,可以设置win 的虚拟内存
比如 32G 内存的电脑可以设置 32G 的虚拟内存,那么加起来就是 64G
配置里有一个低显存的开关配置 low_vram: true
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部