SDXL-Turbo (이미지 생성)¶
Overview¶
Stable Diffusion XL Turbo (SDXL-Turbo)는 StabilityAI에서 제공하는 고속, 고품질의 텍스트-이미지 생성 모델입니다. 다른 여러 디퓨전 모델과 달리, SDXL-Turbo는 단일 추론 단계(single inference step)만으로 고품질 이미지를 생성할 수 있어 속도가 크게 향상되었습니다. 이 튜토리얼에서는 optimum-rbln을 사용하여 sdxl-turbo 모델을 컴파일하고 이미지를 생성하는 방법을 보여줍니다.
Setup & Installation¶
시작하기 전에 시스템 환경이 올바르게 구성되어 있으며, 필요한 모든 필수 패키지가 설치되어 있는지 확인하십시오. 다음 항목이 포함됩니다:
- System Requirements:
- Packages Requirements:
- Installation Command:
Note
rebel-compiler
를 사용하려면 RBLN 포털 계정이 필요하니 참고하십시오.
Optimum RBLN
라이브러리 사용하기¶
모델 컴파일¶
먼저 optimum-rbln
라이브러리에서 제공하는 RBLNStableDiffusionXLPipeline
클래스를 사용하여 SDXL-Turbo 모델을 컴파일합니다.
모델을 컴파일하려면 export
인수를 True
로 설정해야 합니다. 이렇게 설정하면 파이프라인이 HuggingFace 허브에서 원본 모델을 다운로드한 다음, RBLN Compiler
를 사용하여 컴파일합니다. export
가 False
컴파일 후에는 save_pretrained()
메서드를 사용하여 모델 아티팩트(artifacts)를 디스크에 저장합니다. 이 과정은 컴파일된 모델을 포함하는 디렉터리(예: rbln-sdxl-turbo
)를 생성합니다.
컴파일된 모델 불러오기¶
이미지를 생성하려면, 먼저 이전 단계에서 저장한 컴파일된 모델을 불러옵니다. 이번에는 export
인수를 False
로 설정하여 로컬 경로에서 사전 컴파일된 모델을 불러오도록 지정합니다.
SDXL-Turbo는 Classifier-Free Guidance 없이 실행되도록 설계되었으므로, 컴파일 시 rbln_guidance_scale=0.0
으로 설정했습니다. 최적의 성능을 위해서는 이 값이 추론 시 사용되는 guidance_scale
매개변수와 일치하는 것이 중요합니다.
이미지 생성¶
컴파일된 파이프라인이 로드되었으므로, 이제 이미지를 생성할 준비가 되었습니다. 프롬프트와 함께 파이프라인을 호출하고, num_inference_steps
와 같은 표준 인수를 사용합니다. 최상의 결과를 얻으려면 guidance_scale
이 컴파일 시 설정한 rbln_guidance_scale
과 일치하는지 확인하십시오 (이 경우 0.0
).
결과는 다음과 같이 표시됩니다:
Summary and References¶
이 튜토리얼에서는 optimum-rbln
을 사용하여 stabilityai/sdxl-turbo
모델을 컴파일하고, 컴파일된 파이프라인으로 이미지를 생성하는 방법을 다루었습니다. export=True
로 설정하여 모델을 RBLN NPU용으로 컴파일하고, 이후 저장된 아티팩트를 export=False
로 로드하여 빠르고 단일 단계의 이미지 생성을 수행할 수 있습니다.