X-GenGroup/Flow-Factory
A unified framework for easy fine-tuning in Flow-Matching models
Flow‑Factory – 디퓨전 및 플로우 매칭 모델을 위한 통합 RL 및 편집
무엇인가요 – 하나의 구성 언어를 사용하여 대규모 디퓨전 스타일 생성 모델(텍스트-이미지, 텍스트-비디오, 오디오-비디오 등)의 훈련, 파인튜닝, 평가를 가능하게 하는 연구용 Python 프레임워크입니다. 이는 온라인 강화학습 스타일 알고리즘(GRPO, DPO, DPPO 등)과 전통적인 오프라인 지도 학습(SFT) 및 오프라인 DPO를 Hugging‑Face diffusers 라이브러리 위에 통합합니다.
주요 기능
| 기능 | 세부 사항 |
|---|---|
| 지원 모델 패밀리 | Stable‑Diffusion 3.5, FLUX 1/2, Qwen‑Image(2.1 포함), Z‑Image, BAGEL, SenseNova, Wan2.x(텍스트-비디오 및 이미지-비디오), LTX‑2, MiniMax H3, 그리고 많은 이미지 편집 변형. |
| 작업 | 텍스트-이미지, 이미지-이미지, 멀티-이미지-이미지, 텍스트-비디오, 이미지-비디오, 첫/마지막 프레임-비디오, 텍스트-오디오-비디오, 이미지-오디오-비디오, 순서 기반 참조-오디오-비디오. |
| 알고리즘 | SFT, Offline‑DPO, Online‑DPO, GRPO, DiffusionNFT, AWM, DGPO, GRPO‑Guard, DPPO, CRD, DiffusionOPD, DMD2, TDM, TDM‑R1. |
| 훈련 백엔드 | PyTorch 2.10+, torch.compile, DeepSpeed ZeRO‑2, FSDP2, 선택적 flash‑attention 커널, 사용자 정의 Muon 옵티마이저. |
| 가속화 | 통합된 acceleration: 블록을 통해 어텐션 백엔드(네이티브, xformers, flash 변형)를 선택하고 torch.compile과 결합 가능. |
| 실험 추적 | Weights & Biases, SwanLab, TensorBoard와의 내장 통합. |
| 데이터셋 형식 | 지도 학습 예시 및 선호 쌍용 엄격한 JSONL v2 스키마; 순수 텍스트-이미지/비디오용 간단한 줄 또는 JSONL 프롬프트. |
| 리워드 모델 | DPO/GRPO 파이프라인에서 사용되는 플러그인 가능한 리워드 시스템(내장 및 원격 서버). |
| Docker 이미지 | CUDA 지원 훈련 이미지(Python 3.12, PyTorch 2.10, cu129, DeepSpeed, WandB). |
| 확장성 | 새로운 디퓨전/플로우 매칭 모델 및 새로운 데이터셋 추가를 위한 가이드 제공. |
사용 방법
- 설치 –
pip install -e .(Python ≥ 3.10, PyTorch ≥ 2.10). DeepSpeed, flash‑attention, 또는 특정 어댑터용 선택적 추가 기능. - 설정 선택 – 예:
ff-train examples/grpo/lora/flux1/default.yaml는 FLUX 1에서 GRPO + LoRA를 실행. - 실행 –
ff-trainCLI가 YAML을 읽고 모델을 구성하고, 데이터셋을 로드하며, 선택된 알고리즘(e.g.,trainer_type: grpo)을 생성하고 분산 훈련을 시작. - 로그 – 설정에서
logging_backend: wandb(또는 swanlab)를 지정하면 샘플 이미지/비디오 및 메트릭 곡선을 스트리밍 가능. - 자신의 모델 또는 데이터 추가 –
guidance/new_model.md및guidance/datasets.md를 따라 새로운 Diffusers 모델 또는 커스텀 JSONL 스키마를 등록.
왜 중요한가
- 통합 인터페이스 – SFT에서 RL 파인튜닝으로 전환할 때 리포지토리를 바꿀 필요 없음. 동일한
ff-train명령어가 모든 지원 알고리즘에서 작동. - 광범위한 모달리티 지원 – 이미지 외에도 동기화된 오디오-비디오로 디퓨전 파인튜닝을 확장하며, 거의 모든 오픈소스 툴킷이 커버하지 못하는 니치 영역을 포괄.
- 연구용 준비 완료 – 120개의 모델/백엔드/알고리즘 조합이 검증되어 실행 가능함을 확인하여 재현성에 신뢰를 제공.
- 모듈식 가속화 –
acceleration:블록을 통해 모델 코드를 변경하지 않고 flash‑attention, xformers, 네이티브 커널을 실험 가능.
주요 사용자
- 디퓨전 모델의 RL 기반 정렬을 탐구하는 연구자.
- 여러 디퓨전 패밀리(Stable‑Diffusion, FLUX, Qwen‑Image 등)를 한 번에 파인튜닝해야 하는 엔지니어.
- 텍스트-이미지/비디오 생성용 맞춤형 리워드 모델을 구축하는 팀.
제한 사항
- 디퓨전/플로우 매칭 모델에 집중; 일반적인 LLM 트레이너는 아님.
- 상당한 GPU 리소스 필요(대부분의 예제는 멀티 GPU 또는 DeepSpeed/FSDP 설정을 전제).
- 일부 선택적 백엔드(예: flash‑attention 변형)는 추가 시스템 레벨 라이브러리 필요.
위 정보는 리포지토리의 README에서 직접 인용되었으며, 추가 기능은 생성되지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트