Flux“炼丹炉”——fluxgym安装教程

一、介绍

这个炼丹炉目前可以训练除了flux-dev之外的其它模型,只需更改一个配置文件内容即可。重要的是训练时不需要提前进行图片裁剪、打标等前置工作,只需下图的三个步骤即可开始训练。它就是——fluxgym。

image.png

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

image.png

完成之后你的文件夹结构应该会如下所示:

/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:

image.png

(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

image.png

完成之后返回根(fluxgym)文件夹,安装应用程序依赖项:

cd ..
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

安装依赖时如果出现下图的报错:

image.png

那么可以更换 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如下图:

image.png

然后重新执行依赖安装命令即可。

最后,安装 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进行安装就好:

image.png

例:pip install voluptuous

然后再次通过 python app.py命令启动项目。当输出为下图中的内容时,恭喜你!运行成功了!:

image.png

此时只需在浏览器输入 127.0.0.1:8080即可访问UI界面,如下:

image.png

3.下载模型

丹炉安装完成后,差的就只有零件儿(模型)了,我提供了多种下载的方式,你可以根据实际情况选择。开干!

模型路径

说在前面,所有的模型大小加起来大致在30GB左右,如果你当前的内存不够存储,那我们可以先修改模型的存储路径到其它地方:打开 app.py文件,找到下图的两部分代码并将其修改为想变动的路径:

你想修改的路径/
	——models/
		+——unet/	#unet文件夹中放置flux模型
		|	flux-dev.sft
		|——vae/		#vae文件夹中放置vae模型
		|	ae.sft
		+——clip/	#clip文件夹中有两个模型
			clip_l.safetensors
			t5xxl_fp16.safetensors

image.png

image.png

自动下载模型

(1)如果你的设备已经能够访问如huggingface等外国网址,那么启动UI界面后,在下图标出的地方填入类似的内容(随便填,目的是启动模型下载的代码)后,点击“Training”就会自动下载缺失的模型。

image.png

(2)然后再点击下图按钮下载“Florence-2“模型,这是用来对训练的图片进行自动打标的模型。有了这个模型后,只需轻轻一按,就能实现反推提示词的效果。直接简化了模型训练的步骤!

image.png

(2)设置环境变量下载(需要网速稳定)

如果不能访问外网,那我们可以通过huggingface国内的镜像网站hf-mirror来下载。在启动项目命令 app.py运行前,输入下面命令:export HF_ENDPOINT=https://hf-mirror.com,然后再按照(1)的方法下载。

如果出现下载出错并且报出下面错误:

image.png

这是由于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
...

如果一切正常的话,弄完这些应该几个小时就能搞定。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/950285.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【PLL】非线性瞬态性能

频率捕获、跟踪响应,是大信号非线性行为锁相范围内的相位、频率跟踪,不是非线性行为 所以:跟踪,是线性区域;捕获,是大信号、非线性区域 锁定范围:没有周跳(cycle-slipping&#xff0…

OpenAI CEO 奥特曼发长文《反思》

OpenAI CEO 奥特曼发长文《反思》 --- 引言:从 ChatGPT 到 AGI 的探索 ChatGPT 诞生仅一个多月,如今我们已经过渡到可以进行复杂推理的下一代模型。新年让人们陷入反思,我想分享一些个人想法,谈谈它迄今为止的发展,…

“AI智慧语言训练系统:让语言学习变得更简单有趣

大家好,我是你们的老朋友,一个热衷于探讨科技与教育结合的产品经理。今天,我想和大家聊聊一个让语言学习变得不再头疼的话题——AI智慧语言训练系统。这个系统可是我们语言学习者的福音,让我们一起来揭开它的神秘面纱吧&#xff0…

一、二极管(应用篇)

1.5普通二极管应用 1.5.1钳位电路 利用二极管的固定的导通电压,在二极管处并联用电器,达到用电器的工作电压相对稳定。如果电源处有尖峰电压,则可以通过二极管导入到5v的电源内,防止此尖峰电压干扰用电器 ,起到对电路的…

Android Studio 安装配置(个人笔记)

Android studio安装的前提是必须保证安装了jdk1.8版本以上 一、查看是否安装jdk cmd打开命令行,输入java -version 最后是一个关键点 输入 javac ,看看有没有相关信息 没有就下载jdk Android studio安装的前提是必须保证安装了jdk1.8版本以上 可以到…

unity学习14:unity里的C#脚本的几个基本生命周期方法, 脚本次序order等

目录 1 初始的C# 脚本 1.1 初始的C# 脚本 1.2 创建时2个默认的方法 2 常用的几个生命周期方法 2.1 脚本的生命周期 2.1.1 其中FixedUpdate 方法 的时间间隔,是在这设置的 2.2 c#的基本语法别搞混 2.2.1 基本的语法 2.2.2 内置的方法名,要求更严…

node.js|浏览器插件|Open-Multiple-URLs的部署和使用,实现一键打开多个URL的强大工具

前言: 在整理各类资源的时候,可能会面临资源非常多的情况,这个时候我们就需要一款能够一键打开多个URL的浏览器插件了 说简单点,其实,迅雷就是这样的,但是迅雷是基于内置nginx浏览器实现的,并…

HTML 显示器纯色亮点检测工具

HTML 显示器纯色亮点检测工具 相关资源文件已经打包成html等文件,可双击直接运行程序,且文章末尾已附上相关源码,以供大家学习交流,博主主页还有更多Html相关程序案例,秉着开源精神的想法,望大家喜欢&#…

dbeaver导入导出数据库(sql文件形式)

目录 前言dbeaver导出数据库dbeaver导入数据库 前言 有时候我们需要复制一份数据库,可以使用dbeaver简单操作! dbeaver导出数据库 选中数据库右键->工具->转储数据库 dbeaver导入数据库 选中数据库右键->工具->执行脚本 mysql 默…

接口测试-postman(使用postman测试接口笔记)

一、设置全局变量 1. 点击右上角设置按钮-》打开管理环境窗口-》选择”全局“-》设置变量名称,初始值和当前值设置一样的,放host放拼接的url,key放鉴权那一串字符,然后保存-》去使用全局变量,用{{变量名称}}形式 二、…

enzymejest TDD与BDD开发实战

一、前端自动化测试需要测什么 1. 函数的执行逻辑,对于给定的输入,输出是否符合预期。 2. 用户行为的响应逻辑。 - 对于单元测试而言,测试粒度较细,需要测试内部状态的变更与相应函数是否成功被调用。 - 对于集成测试而言&a…

Flutter项目开发模版,开箱即用(Plus版本)

前言 当前案例 Flutter SDK版本:3.22.2 本文,是由这两篇文章 结合产出,所以非常建议大家,先看完这两篇: Flutter项目开发模版: 主要内容:MVVM设计模式及内存泄漏处理,涉及Model、…

Spring Boot - 日志功能深度解析与实践指南

文章目录 概述1. Spring Boot 日志功能概述2. 默认日志框架:LogbackLogback 的核心组件Logback 的配置文件 3. 日志级别及其配置配置日志级别3.1 配置文件3.2 环境变量3.3 命令行参数 4. 日志格式自定义自定义日志格式 5. 日志文件输出6. 日志归档与清理7. 自定义日…

IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)

时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元) 目录 时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现IWOA-GRU和GRU时间序列预测…

【SpringBoot】日志处理-异常日志(Logback)

文章目录 异常日志(Logback)1、将 logback-spring.xml 文件放入项目的 src/main/resources 目录下2、配置 application.yml 文件3、使用 Logback 记录日志 异常日志(Logback) 使用 Logback 作为日志框架时,可以通过配…

【RK3568笔记】Android修改开机动画

概述 Android 的开机动画是由一系列连续的 PNG 图片作为帧组成的动画形式,不是一张 GIF 图片。将各帧 PNG 图片以压缩方式进行保存(压缩方式要求是存储压缩),并将保存的文件名命名为 bootanimation.zip,这个 bootanim…

复合机器人助力手机壳cnc加工向自动化升级

在当今竞争激烈的制造业领域,如何提高生产效率、降低成本、提升产品质量,成为众多企业面临的关键挑战。尤其是在手机壳 CNC 加工这一细分行业,随着市场需求的持续增长,对生产效能的要求愈发严苛。而复合机器人的出现,正…

HTML——75. 内联框架

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>内联框架</title><style type"text/css">iframe{width: 100%;height: 500px;}</style></head><body><!--iframe元素会创建包含…

(七)人工智能进阶之人脸识别:从刷脸支付到智能安防的奥秘,小白都可以入手的MTCNN+Arcface网络

零、开篇趣谈 还记得第一次用支付宝"刷脸"时的新奇感吗&#xff1f;或者被抖音的人脸特效逗乐的瞬间&#xff1f;这些有趣的应用背后&#xff0c;其实藏着一个精妙的AI世界。今天&#xff0c;就让我们开启一段奇妙的人脸识别技术探索之旅吧&#xff01; 一、人脸识…

1. 使用springboot做一个音乐播放器软件项目【前期规划】

背景&#xff1a; 现在大部分音乐软件都是要冲会员才可以无限常听的。对于喜欢听音乐的小伙伴&#xff0c;资金又比较紧张&#xff0c;是那么的不友好。作为程序员的我&#xff0c;也是喜欢听着歌&#xff0c;敲着代码。 最近就想做一个音乐播放器的软件&#xff0c;在内网中使…