FLUX.3 Image Klein 릴리스: Diffusers의 통합 텍스트-이미지, 다중 참조 이미지-이미지, 레이아웃 제어 모델

TL;DR

FLUX.3 Image Klein은 텍스트-이미지, 다중 참조 이미지-이미지, 경계 상자 레이아웃 편집을 처리하는 통합 이미지 생성 모델로, Hugging Face Diffusers에서 빠른 증류 체크포인트(H100에서 1024×1024 약 2초)와 파인튜닝용 기본 체크포인트로 제공됩니다.


시작하기

최신 Diffusers와 Transformers(Qwen3-VL 텍스트 인코더용)를 설치하고 증류 체크포인트를 로드합니다:

pip install -U diffusers transformers

import torch
from diffusers import ModularPipeline

pipe = ModularPipeline.from_pretrained("black-forest-labs/flux-3-image-klein")
pipe.load_components(dtype=torch.bfloat16)
pipe.to("cuda")

pipe(prompt="a red fox", output="images")[0].save("fox.png")

기본 체크포인트(black-forest-labs/flux-3-image-klein-base)는 분류기 없는 가이드(CFG)로 50회 추론 단계를 실행하며 LoRA 파인튜닝의 권장 시작점입니다.


FLUX.3이 할 수 있는 것

텍스트-이미지

모델은 상세한 장면 설명을 기대합니다. 증류 체크포인트는 기본적으로 16단계로 1024×1024 이미지를 생성합니다. 예제 프롬프트와 코드는 공지에서 제공됩니다.

이미지-이미지

image 인수를 통해 하나 이상의 참조 이미지를 전달하고 프롬프트에서 원하는 변경 사항을 설명합니다. 여러 참조는 <ref_image_0>, <ref_image_1>, ...으로 지정됩니다.

레이아웃 제어

경계 상자 레이아웃 편집은 캡션에 추가된 JSON 영역 목록으로 표현됩니다. 각 영역에는 id, 정규화된 bbox(y 우선, 0-1000 스케일), 텍스트 desc가 포함됩니다. 모델은 각 설명을 해당 상자 안에 그립니다. 편집의 경우 src_bbox와 tgt_bbox가 콘텐츠가 어디서 오고 어디에 배치되어야 하는지 지정합니다.


모델 체크포인트 및 양자화

체크포인트 설명 기본 추론
black-forest-labs/flux-3-image-klein 시간 단계 증류, 빠른 추론 16단계, CFG 없음
black-forest-labs/flux-3-image-klein-base 파인튜닝용 기본 모델 50단계, CFG

두 체크포인트 모두 단일 파일 safetensors로 제공됩니다. 두 가지 양자화 변형(fp8r 및 nvfp4)은 Flux3Transformer2DModel.from_single_file 및 BFLQuantizationConfig로 로드할 수 있습니다. fp8r 변형은 컴퓨트 기능 8.9+(Ada, Hopper, Blackwell) GPU에서 실행됩니다. nvfp4는 FlashInfer 커널이 있는 Blackwell GPU를 대상으로 합니다.


LoRA 파인튜닝

FLUX.3은 텍스트-이미지 및 이미지-이미지 모두에 대한 DreamBooth LoRA 스크립트를 지원합니다. 샘플 명령은 공개 도메인 데이터 세트 multimodalart/1920-raider-waite-tarot-public-domain에서 타로 카드 스타일 LoRA를 파인튜닝합니다. 권장 메모리 절약 플래그에는 --gradient_checkpointing, --cache_latents, --use_8bit_adam이 포함됩니다.

훈련된 어댑터는 diffusers-modular/flux3-tarot-lora에서 호스팅됩니다. 이미지-이미지 LoRA 스크립트(train_dreambooth_lora_flux3_klein_img2img.py)는 (참조, 대상, 지시) 트리플로 훈련하며 프롬프트에서 <ref_image_0> 자리 표시자를 사용합니다.


리소스 사용량 및 성능

메모리 사용량

변형 로드 후 피크(GiB) 추론 후 피크(GiB)
nvfp4 (RTX 6000) 13.4 15.3
fp8r (H100) 14.35 16.27
bf16 (H100) 18.80 20.72

양자화된 체크포인트는 메모리를 줄입니다. 텍스트 인코더는 한 번 실행 후 해제할 수 있으며, ComponentsManager를 통해 자동 CPU 오프로딩이 지원됩니다.

속도 (단일 NVIDIA H100 80GB, 오프로딩 없음)

워크플로 출력 크기 시간 피크 메모리
텍스트-이미지 1024×1024 1.93초 23.8GiB
이미지-이미지(참조 1개) 1024×1024 3.87초 23.8GiB
레이아웃 편집(기사 예제) 1360×768 4.10초 23.8GiB

참조 이미지는 텍스트 시퀀스에 토큰이 연결되므로 대기 시간이 약 2배가 됩니다(1024×1024 참조당 약 4k 추가 토큰).


아키텍처 개요

  • 토큰 유형 – 텍스트, 노이즈 이미지 잠재, 선택적 참조 잠재.
  • 픽셀-토큰 변환 – VAE가 1024×1024 픽셀을 64×64 잠재 그리드(4,096토큰)로 압축하며, 각 토큰은 16×16 픽셀 패치를 덮습니다.
  • 텍스트 인코딩 – Qwen3-VL은 36개 레이어 중 8개 레이어의 숨겨진 상태를 제공합니다. 각 토큰은 20,480차원 벡터가 되어 트랜스포머 너비 3072로 투영됩니다.
  • 2단계 트랜스포머 – 1단계는 각 모달리티를 자체 5블록으로 처리합니다. 2단계는 모든 스트림을 28개의 공동 블록으로 병합하여 교차 모달 주의를 가능하게 합니다.
  • 변조 – 시간 단계 임베딩이 토큰을 변조합니다. 이미지 토큰은 현재 시간 단계를 사용하는 반면, 텍스트 및 참조 토큰은 항상 시간 단계 0(깨끗한 컨텍스트로 처리)으로 변조됩니다.
  • 주의 – 회전 위치 임베딩은 4축(시간 단계, 높이, 너비, 시퀀스 길이)에 걸쳐 있어 참조 기반 편집에 정밀한 공간적 근거를 제공합니다.
  • 잡음 제거 루프 – 흐름 매칭 스케줄러가 각 단계에서 속도 벡터를 예측합니다. 증류 체크포인트는 더 큰 점프(16단계 흐름 맵)를 사용합니다.

모듈형 Diffusers 통합

FLUX.3은 ModularPipeline으로 노출됩니다. 사용자는 다음을 수행할 수 있습니다:

  • 사용 가능한 워크플로 나열(text2image, image_conditioned).
  • 텍스트 인코더를 제거하여 프롬프트를 한 번 인코딩하고 다시 인코딩하지 않고 여러 이미지를 생성합니다.
  • ModularPipelineBlocks를 확장하여 사용자 지정 블록(예: 중간 잡음 제거 잠재를 기록하는 미리 보기 단계)을 삽입합니다.

직접 사용해 보기

허브에서 자신만의 FLUX.3 파이프라인과 LoRA를 구축, 공유, 반복하세요!

Sources