윈디하나의 누리사랑방. 이런 저런 얘기

글쓴시간
분류 기술,IT/스테이블 디퓨전
FLUX.1 Dev 사용하기

※ 원칙적(?)으로는 아래와 같이 사용할 수 있다.

1. https://huggingface.co/black-forest-labs/FLUX.1-dev/tree/main (공식 리포지토리)
   flux1-dev.safetensors 및 ae.safetensors 파일 다운로드

2. https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main
   clip_l.safetensors 및 t5xxl_fp16.safetensors 파일 다운로드
   -> 공식 리포지토리의 text_encoder, text_encoder_2 아래에 있는 파일과 같은 파일이다.

3. 다운로드 받은 파일을 stable-diffusion-webui-forge 의 디렉토리로 옮김
flux1-dev.safetensors  -> models/Stable-diffusion/
ae.safetensors         -> models/VAE/
clip_l.safetensors     -> models/text_encoder/
t5xxl_fp16.safetensors -> models/text_encoder/
3. stable-diffusion-webui-forge 실행 후, 아래와 같이 세팅
UI: flux
CheckPoint: flux1-dev
VAE / TextEncoder: clip_l.safetensors, t5xxl_fp16.safetensors, ae.safetensors

4. GERERATE 버튼 클릭!

- 이렇게 실행하려면 최소한 24GB VRAM 을 가진 nVidia GPU 와 64GB 의 시스템 메모리가 필요하다.

- 일부 파일은 여기서 받음: https://huggingface.co/camenduru/FLUX.1-dev/tree/main

※ FP8, NF4으로 구성

속도를 빠르게 하고 메모리 사용량을 줄이기 위한 목적으로 FP8 이나 NF4 를 사용한 모델을 사용할 수 있다. 이걸로 해야 필자의 사양(RTX 2060 12GB, MEMORY 64GB)에서 실행된다.


사용자 삽입 이미지



t5xxl_fp16.safetensors -> t5xxl_fp8_e4m3fn.safetensors     https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main
flux1-dev.safetensors  -> flux1-dev-fp8.safetensors        https://huggingface.co/Kijai/flux-fp8/tree/main
flux1-dev.safetensors  -> flux1-dev-bnb-nf4-v2.safetensors https://huggingface.co/lllyasviel/flux1-dev-bnb-nf4/tree/main

아니면 아래의 All-in-one 타입 을 사용할 수 있다.

https://huggingface.co/Comfy-Org/flux1-dev/tree/main FP8

※ 메모리 구성

전용 GPU 메모리(Dedicated GPU Memory): GPU 의 VRAM 용량
공유 GPU 메모리(Shared GPU Memory): GPU 에 의해 공유되는 시스템 메모리. 사용 가능한 용량은 시스템 메모리의 절반

- 스왑 메모리 위치
-- CPU: 모델을 GPU 메모리 및 시스템 메모리에 위치
-- Shared: 모델을 GPU 메모리 및 공유 GPU 메모리에 위치. 좀 더 빠른 대신 실행 이슈(크러시)가 발생할 수 있다.

- GPU Weights (MB): GPU 에 적재할 모델의 크기. 크면 클수록 좋지만, 이미지 생성시에도 GPU 메모리를 필요로 하기 때문에 적당히 조절해야 한다.

- 스왑 메쏘드
-- Queue: 모델 적재 -> 연산 -> 다른 모델 적재 -> 연산의 순서로 차례대로 진행된다.
-- Async: 모델 적재 -> 연산 및 다른 모델 적재 -> 연산 및 다른모델 적재 의 순서로 동시에 처리된다. Queue 보다 빠르지만, 모델에 따라 갑자기 매우 느려질때가 있다. Async 와 Queue 를 비교해보고 빠른걸 선택하자.

사용자 삽입 이미지

CivitAI 에 공개된 이미지 프롬프트를 보고 따라한 그림. FLUX 로 생성했다. https://civitai.com/images/31943195



https://github.com/lllyasviel/stable-diffusion-webui-forge/discussions/981