클라우드 GPU에서 직접 Z-Image Turbo LoRA 학습하기

발행: (2026년 2월 1일 오후 06:20 GMT+9)
5 분 소요
원문: Dev.to

Source: Dev.to

위에 제공된 소스 링크 외에 번역할 텍스트를 알려주시면, 요청하신 대로 한국어로 번역해 드리겠습니다.

필요 사항

  • GPU 인스턴스 접근이 가능한 AWS 계정
  • EC2 접근용 SSH 키 페어
  • 피사체의 고품질 이미지 6–15장 (권장 해상도 1024×1024) 및 캡션
  • 설정 및 학습에 약 2시간

EC2 인스턴스 설정

  1. 인스턴스 선택 – 예: g6e.2xlarge (48 GB VRAM).
  2. 보안 그룹 구성 – 인바운드 포트 8675, 8888, 22를 엽니다.
  3. AMI 선택Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.9 (Ubuntu 22.04), CUDA와 드라이버가 포함된 버전.
  4. 스토리지 할당 – 모델, 데이터셋, 체크포인트를 위해 최소 100 GB.

인스턴스에 SSH 연결

ssh -i your-key.pem ubuntu@YOUR_PUBLIC_IP

시스템 패키지 및 AI 툴킷 설치

# 시스템 업데이트
sudo apt update && sudo apt upgrade -y

# 기본 패키지 설치
sudo apt install -y git build-essential python3-pip python3-venv
# 저장소 복제
cd ~
git clone https://github.com/ostris/ai-toolkit.git
cd ai-toolkit
git submodule update --init --recursive

# 가상 환경 설정
python3 -m venv venv
source venv/bin/activate

# PyTorch (CUDA 12.6) 및 기타 요구 사항 설치
pip3 install --no-cache-dir torch==2.7.0 torchvision==0.22.0 torchaudio==2.7.0 \
    --index-url https://download.pytorch.org/whl/cu126
pip3 install -r requirements.txt

UI용 Node.js 설치

# nvm 설치
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bash

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

# Node.js 23 설치 (또는 18 이상 버전)
nvm install 23

# 확인
node -v   # v23.x.x가 표시되어야 함
npm -v

Toolkit UI 실행

cd ~/ai-toolkit
source venv/bin/activate
cd ui
npm run build_and_start

UI는 포트 8675에서 실행됩니다. 로컬 머신에서 SSH 터널을 생성하세요:

ssh -i your-key.pem -L 8675:localhost:8675 -N ubuntu@YOUR_PUBLIC_IP

그런 다음 브라우저에서 http://localhost:8675를 엽니다.

Jupyter Notebook 설정

cd ~/ai-toolkit
source venv/bin/activate

pip install jupyter jupyterlab ipykernel
python -m ipykernel install --user --name=ai-toolkit --display-name="AI Toolkit (Python)"

jupyter notebook --generate-config
jupyter notebook password   # 비밀번호를 설정하고 기억해 두세요

~/.jupyter/jupyter_notebook_config.py 파일을 편집하고 다음을 추가하세요:

c.NotebookApp.ip = 'localhost'
c.NotebookApp.port = 8888
c.NotebookApp.open_browser = False
c.NotebookApp.allow_remote_access = True
c.NotebookApp.notebook_dir = '/home/ubuntu/ai-toolkit'

Jupyter를 시작하고 포트를 터널링합니다:

jupyter notebook --no-browser --port=8888

로컬 머신에서:

ssh -i your-key.pem -L 8888:localhost:8888 -N ubuntu@YOUR_PUBLIC_IP

http://localhost:8888 에서 Jupyter에 접속하고, 설정한 비밀번호로 로그인하세요.

UI에서 데이터셋 만들기

  1. AI Toolkit UI에서 Datasets → New Dataset 로 이동합니다.
  2. 이름을 지정합니다 (예: MySubject).
  3. 6–15장의 이미지를 업로드합니다.
  4. 고유한 트리거 단어를 포함하는 캡션을 추가합니다 (예: samt).
    • 캡션 형식: [TRIGGER_WORD], a man with wavy hair …

  • 사전에는 없는 트리거 단어를 사용합니다 (예: skt, samt).
  • 이미지 품질을 높게 유지하고, 포즈와 조명을 다양하게 하되 피사체는 일관되게 유지합니다.

Create a Training Job

SettingValue
훈련 이름your_training_name
트리거 단어your_trigger_word
모델 아키텍처Z-Image Turbo (w/ Training Adapter)
Low VRAM비활성화
TransformerNONE
Cache Text Embeddings활성화
Advanced – Do Differential Guidance활성화, 3으로 설정

훈련된 LoRA 테스트

다음 코드를 Jupyter 노트북에서 실행하세요 (필요에 따라 경로와 트리거 단어를 교체합니다):

import torch
from diffusers import ZImagePipeline

device = "cuda"
dtype = torch.bfloat16  # Must be bfloat16, not float16!

print("Loading Z-Image Turbo pipeline...")
pipe = ZImagePipeline.from_pretrained(
    "Tongyi-MAI/Z-Image-Turbo",
    torch_dtype=dtype,
    low_cpu_mem_usage=False,
)
pipe.to(device)
print("Pipeline loaded!")

# Load your trained LoRA
lora_path = "/home/ubuntu/ai-toolkit/output/my_first_lora_v1/my_first_lora_v1.safetensors"
print(f"Loading LoRA from: {lora_path}")
pipe.load_lora_weights(lora_path)
print("LoRA loaded!")

# Generate an image
prompt = "YOUR_TRIGGER_WORD, posing in front of the Eiffel Tower"
generator = torch.Generator(device).manual_seed(42)

print("Generating image...")
image = pipe(
    prompt=prompt,
    height=1024,
    width=1024,
    num_inference_steps=9,   # 8 DiT forwards
    guidance_scale=0.0,       # Must be 0.0 for Turbo inference
    generator=generator,
).images[0]

image.save("output.png")
print("Done!")

# Display in Jupyter
from IPython.display import display
display(image)

YOUR_TRIGGER_WORD를 캡션에 사용한 단어로 교체하세요. 노트북을 실행한 후에는 1초 미만의 시간 안에 대상의 실사와 같은 이미지를 생성하는 맞춤형 Z‑Image Turbo LoRA를 얻을 수 있습니다.

Back to Blog

관련 글

더 보기 »