T2I-Adapters를 사용한 SDXL의 효율적인 컨트롤러블 생성

T2I-Adapter-SDXL은 사용자가 외부 신호를 사용하여 Stable Diffusion XL (SDXL) 생성을 제어하면서 기본 모델을 동결 상태로 유지할 수 있게 해주는 가벼운 플러그 앤 플레이 가이던스 모델입니다. 내부 모델 지식과 외부 제어 신호를 맞춤으로써 T2I-Adapters는 풍부한 편집 및 제어 효과를 달성하기 위한 ControlNet에 대한 계산적으로 효율적인 대안을 제공합니다.

ControlNet 대비 효율성 향상

T2I-Adapters는 ControlNet에 비해 파라미터 수와 계산 비용을 크게 줄입니다. ControlNet은 모든 디노이징 단계에서 ControlNet과 UNet을 모두 실행하고 UNet 인코더를 복제해야 하는 반면, T2I-Adapters는 전체 디노이징 프로세스에 대해 단 한 번만 실행됩니다.

SDXL 기반 제어 모델의 모델 파라미터 및 저장소(fp16) 비교:

모델 유형 모델 파라미터 저장소 (fp16)
ControlNet-SDXL 1251 M 2.5 GB
ControlLoRA (rank 128) 197.78 M 396 MB
T2I-Adapter-SDXL 79 M 158 MB

보여진 바와 같이, T2I-Adapter-SDXL은 ControlNet-SDXL에 비해 파라미터가 93.69% 감소하고 저장소가 94% 감소합니다.

기술적 구현 및 훈련

T2I-Adapter-SDXL은 작은 79M 파라미터 어댑터를 사용하여 2.6B 파라미터 SDXL 모델을 구동합니다. 해당 모델들은 LAION-Aesthetics V2 데이터셋의 3백만 개의 고해상도 이미지-텍스트 쌍을 사용하여 diffusers 라이브러리로 훈련되었습니다.

훈련 구성

  • 훈련 단계: 20,000에서 35,000
  • 배치 크기: 데이터 병렬을 통해 GPU당 16개, 총 배치 크기 128
  • 학습률: 상수 1e-5
  • 혼합 정밀도: fp16

Diffusers에서의 생성 제어

diffusers 라이브러리와의 통합은 StableDiffusionXLAdapterPipeline을 통해 처리됩니다. 생성 프로세스는 조건 이미지(예: 라인아트 맵)를 준비하고 프롬프트와 함께 파이프라인에 전달해야 합니다.

주요 제어 파라미터

  1. adapter_conditioning_scale: 조건 효과의 강도를 조절합니다. 값이 높을수록 외부 신호가 출력에 미치는 영향이 증가합니다.
  2. adapter_conditioning_factor: 디노이징 프로세스 동안 조건 적용의 지속 시간을 결정합니다. 값이 1.0이면 모든 타임스텝에 어댑터를 적용하고, 0.5이면 처음 50%의 단계에만 적용됩니다.

지원되는 조건부 모달리티

T2I-Adapter-SDXL은 다양한 제어 신호에 대한 사전 훈련된 체크포인트를 제공하여 다양한 이미지 생성 워크플로를 가능하게 합니다:

  • 라인아트 가이드: TencentARC/t2i-adapter-lineart-sdxl-1.0 모델을 사용합니다.
  • 스케치 가이드: TencentARC/t2i-adapter-sketch-sdxl-1.0 모델을 사용합니다.
  • Canny 가이드: TencentARC/t2i-adapter-canny-sdxl-1.0 모델을 사용합니다.
  • 깊이 가이드: TencentARC/t2i-adapter-depth-midas-sdxl-1.0TencentARC/t2i-adapter-depth-zoe-sdxl-1.0을 통해 이용 가능합니다.
  • OpenPose 가이드: TencentARC/t2i-adapter-openpose-sdxl-1.0 모델을 사용합니다.

Sources