一、介绍
这个炼丹炉目前可以训练除了flux-dev之外的其它模型,只需更改一个配置文件内容即可。重要的是训练时不需要提前进行图片裁剪、打标等前置工作,只需下图的三个步骤即可开始训练。它就是——fluxgym。
fluxgym:用于训练具有低 VRAM (12GB/16GB/20GB) 支持的 FLUX LoRA 的简单 Web UI,它具有 AI-Toolkit WebUI 的简单性和 Kohya Scripts 的灵活性。
- 前端:是从 AI-Toolkit(https://x.com/multimodalart 创建的 Gradio UI)分叉而来的 WebUI)
- 后端**:** 由 Kohya Scripts 提供支持的训练脚本
它通过默认隐藏的 Advanced 选项卡支持 100% 的 Kohya sd-scripts 功能。
二、怎么安装?
介绍完丹炉,我们来看看如何获取吧,本安装教程属于手把手教学,因为网络问题无法下载模型?不用慌张,包教包会!
1.部署项目
(1)首先需要克隆 Fluxgym 和 kohya-ss/sd-scripts:
git clone https://github.com/cocktailpeanut/fluxgym
cd fluxgym
git clone -b sd3 https://github.com/kohya-ss/sd-scripts
完成之后你的文件夹结构应该会如下所示:
/fluxgym
app.py
requirements.txt
sd-scripts/
(2)现在从根文件夹(fluxgym文件中)激活一个 虚拟环境:fluxgym
如果你使用的是 Windows:
python -m venv env
env\Scripts\activate
如果你使用的是 Linux:
python -m venv env
source env/bin/activate
当然也可以使用conda创建(前提条件是你已经安装了conda或mimiconda,这个教程网上很多):
conda create -n fluxgym python=3.10
conda activate fluxgym
下面这里输入“y"然后按Enter:
(3)然后进入 sd-scripts文件夹,安装依赖项
cd sd-scripts
pip install -r requirements.txt
通常情况下依赖默认会到官网进行下载,很多在国外的下载速度会非常缓慢,这时需要我们通过镜像加速下载:
清华源:-i https://pypi.tuna.tsinghua.edu.cn/simple
使用如下:
cd sd-scripts
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
完成之后返回根(fluxgym)文件夹,安装应用程序依赖项:
cd ..
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
安装依赖时如果出现下图的报错:
那么可以更换 requirements.txt
文件中 gradio_logsview@https://huggingface.co/spaces/cocktailpeanut/gradio_logsview/resolve/main/gradio_logsview-0.0.17-py3-none-any.whl
的 huggingface.co
为 hf-mirror.com
如下图:
然后重新执行依赖安装命令即可。
最后,安装 pytorch Nightly:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu121
2.启动项目
回到根文件夹( fluxgym/
),激活虚拟环境(venv或comda)后,然后运行
cd fluxgym #回到根文件夹
python app.py #运行项目
然后访问出现的网址即可,如果有需求可以进行指定,比如我指定:0.0.0.0:8080
cd fluxgym
export GRADIO_SERVER_NAME=0.0.0.0
export GRADIO_SERVER_PORT=8080
python app.py
如果出现类似下图的模块缺失,通过 pip install
进行安装就好:
例:pip install voluptuous
然后再次通过 python app.py
命令启动项目。当输出为下图中的内容时,恭喜你!运行成功了!:
此时只需在浏览器输入 127.0.0.1:8080
即可访问UI界面,如下:
3.下载模型
丹炉安装完成后,差的就只有零件儿(模型)了,我提供了多种下载的方式,你可以根据实际情况选择。开干!
模型路径
说在前面,所有的模型大小加起来大致在30GB左右,如果你当前的内存不够存储,那我们可以先修改模型的存储路径到其它地方:打开 app.py
文件,找到下图的两部分代码并将其修改为想变动的路径:
你想修改的路径/
——models/
+——unet/ #unet文件夹中放置flux模型
| flux-dev.sft
|——vae/ #vae文件夹中放置vae模型
| ae.sft
+——clip/ #clip文件夹中有两个模型
clip_l.safetensors
t5xxl_fp16.safetensors
自动下载模型
(1)如果你的设备已经能够访问如huggingface等外国网址,那么启动UI界面后,在下图标出的地方填入类似的内容(随便填,目的是启动模型下载的代码)后,点击“Training”就会自动下载缺失的模型。
(2)然后再点击下图按钮下载“Florence-2“模型,这是用来对训练的图片进行自动打标的模型。有了这个模型后,只需轻轻一按,就能实现反推提示词的效果。直接简化了模型训练的步骤!
(2)设置环境变量下载(需要网速稳定)
如果不能访问外网,那我们可以通过huggingface国内的镜像网站hf-mirror来下载。在启动项目命令 app.py
运行前,输入下面命令:export HF_ENDPOINT=https://hf-mirror.com
,然后再按照(1)的方法下载。
如果出现下载出错并且报出下面错误:
这是由于Hugging Face Hub 的 hf_transfer
模式在并行下载过程中出现了问题。可以尝试重新下载几次,如果都不行还可以尝试通过禁用 HF_HUB_ENABLE_HF_TRANSFER
来解决这个问题:中断项目,在运行项目前设置环境变量,然后重新启动:
export HF_HUB_ENABLE_HF_TRANSFER=False
如果都无法解决,那就手动下载吧
手动下载
(1)首先,在浏览器下下载以下模型:models/clip
。一共有两个,分别是clip_l和图xxl。
clip_l:
https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/clip_l.safetensors?download=true
t5xxl:
https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/t5xxl_fp16.safetensors?download=true
(2)其次,在文件夹下下载以下模型:models/vae
。
https://huggingface.co/cocktailpeanut/xulf-dev/resolve/main/ae.sft?download=true
(3)最后,在文件夹下下载以下模型:models/unet
。
https://huggingface.co/cocktailpeanut/xulf-dev/resolve/main/flux1-dev.sft?download=true
当然,手动下载模型也可以通过hf-mirror镜像网站。将上面网址中的 huggingface
替换为 hf-mirror.co
即可。
最后的文件结构将如下所示:
/models
/clip
clip_l.safetensors
t5xxl_fp16.safetensors
/unet
flux1-dev.sft
/vae
ae.sft
/sd-scripts
/outputs
/env #如果使用conda安装的虚拟环境,就没有
app.py
requirements.txt
...
如果一切正常的话,弄完这些应该几个小时就能搞定。