FlyMyAI LoRA Trainer 是 FlyMy.AI 开源的一个 LoRA 训练实现,用于为 Qwen-Image、Qwen-Image-Edit 和 FLUX.1-dev 模型训练 LoRA(低秩适配)层。FlyMy.AI 定位为面向生成式 AI 的 B2B 基础设施,用于构建和运行 GenAI 媒体智能体。
用途 该项目的主要用途是让用户能够针对特定角色、风格或图像编辑任务,对 Qwen-Image、Qwen-Image-Edit 和 FLUX.1-dev 等文生图模型进行 LoRA 微调。它支持基于控制的图像编辑训练,并兼容 Hugging Face diffusers。
主要能力
- 支持 Qwen-Image、Qwen-Image-Edit 和 FLUX.1-dev 模型的 LoRA 训练。
- 提供 Qwen-Image 和 Qwen-Image-Edit 的完整训练支持。
- 支持基于控制的图像编辑 LoRA 训练。
- 针对 FLUX 提供高质量人像和角色训练。
- 通过 YAML 文件进行配置。
- 训练期间冻结模型权重。
- 提供数据集准备说明和数据集验证脚本(utils/validate_dataset.py)。
- 提供预训练 LoRA 权重示例(Qwen LoRA 和 FLUX LoRA)。
- 提供适用于 Qwen 和 FLUX 训练后 LoRA 模型的 ComfyUI 工作流。
- 支持在显存小于 24GiB 的 GPU 上进行训练的流程。
使用方式
- 克隆仓库并进入目录: git clone https://github.com/FlyMyAI/flymyai-lora-trainer cd flymyai-lora-trainer
- 安装依赖: pip install -r requirements.txt
- 从 GitHub 安装最新 diffusers: pip install git+https://github.com/huggingface/diffusers
- 可选下载预训练 LoRA 权重:
Qwen LoRA 权重
git clone https://huggingface.co/flymy-ai/qwen-image-realism-loraFLUX LoRA 权重
git clone https://huggingface.co/flymy-ai/flux-dev-anne-hathaway-lora或下载特定文件
wget https://huggingface.co/flymy-ai/qwen-image-realism-lora/resolve/main/flymy_realism.safetensors wget https://huggingface.co/flymy-ai/flux-dev-anne-hathaway-lora/resolve/main/pytorch_lora_weights.safetensors - 准备数据集:训练数据需遵循相同格式,每张图片对应一个同名的文本文件。图片支持 PNG、JPG、JPEG、WEBP 格式。对于 Qwen-Image-Edit 训练,需将目标图片/描述与控制图片分目录存放。建议使用高分辨率图片(推荐 1024x1024 或更高),描述详细准确,数据集至少 10-50 对图文。FLUX 角色训练可使用触发词 "ohwx woman" 或 "ohwx man";Qwen 训练无需特定触发词。可使用 Florence-2 自动生成描述。
- 数据验证:运行包含的验证工具检查图片与文本文件对应关系及命名规范。
- 开始训练:
- Qwen-Image LoRA 训练:使用配置文件(如 train_lora.yaml)运行训练脚本。
- Qwen-Image 完整训练:使用配置文件(如 train_full_qwen_image.yaml)运行,该方法在 NVIDIA H200 GPU 环境测试。
- Qwen-Image-Edit LoRA 训练:使用专用训练脚本,配置文件需包含 img_dir 和 control_dir 等参数。
- Qwen-Image-Edit 完整训练:使用配置文件(如 train_full_qwen_edit.yaml)运行。
- FLUX.1-dev LoRA 训练:使用配置文件(如 train_flux_config.yaml)运行。
- 推理与生成:训练后可从检查点目录加载模型进行推理。项目提供了 Qwen-Image、Qwen-Image-Edit 和 FLUX LoRA 的加载与生成示例。FLUX 生成需触发词 "ohwx woman"。
- ComfyUI 使用:下载最新 ComfyUI,安装依赖,下载模型权重并放入 ComfyUI/models/ 对应文件夹,下载预训练 LoRA 权重放入 ComfyUI/models/loras/,然后加载工作流文件(Qwen 使用 qwen_image_lora_example.json,FLUX 使用 flux_anne_hathaway_lora_example.json)。
适用场景
- 为特定人物或角色训练 FLUX LoRA,生成高质量人像。
- 为 Qwen-Image 训练风格或主题 LoRA。
- 基于控制的图像编辑任务训练 Qwen-Image-Edit LoRA。
- 在本地 GPU 环境(包括小于 24GiB 显存)进行 LoRA 训练。
- 通过 ComfyUI 工作流使用训练好的 LoRA 模型进行图像生成。
限制
- 项目状态为开发中,正在改进代码并添加测试覆盖,处于完善阶段但已可使用。
- 性能优化仍在进行中,测试覆盖即将推出。
- 完整训练 Qwen-Image 的方法在 NVIDIA H200 GPU 环境测试,其他环境未明确说明。
- 数据集大小建议至少 10-50 对图文,具体效果可能因数据质量而异。
- 部分功能(如在线训练平台)的具体收费、价格、平台细节暂未提供。