
RADEON RX9060XT를 이용한 Anima LoRA 학습
요약
AMD Radeon RX9060XT 그래픽카드를 사용하여 Windows 환경에서 ROCm 기반의 Anima LoRA 학습을 수행하는 가이드를 제공합니다. PyTorch와 bitsandbytes의 ROCm 호환 설치 방법 및 kohya_lora_param_gui 수동 설정 과정을 다룹니다.
핵심 포인트
- Radeon RX9060XT 환경을 위한 ROCm 버전 PyTorch 설치 방법 안내
- bitsandbytes 설치 시 ROCm PyTorch 삭제 주의사항 및 권장 방식
- kohya_lora_param_gui와 sd-scripts의 수동 설치 및 디렉토리 구조 설정
- accelerate config를 활용한 학습 환경 최적화 설정
- RADEON RX9060XT + Windows11 + ROCm
- anima-base
- ANIMA-Tagger
- kohya_lora_param_gui + sd-scripts
각자 힘내길.
이번 실험에서는 캐릭터 LoRA (Low-Rank Adaptation)를 위해 공식 의상 47장, 사복 28장, 정규화 이미지 (Regularization images) 407장을 준비했습니다. 반복 횟수 (Repeat)는 5, 10, 1입니다.
시도해 본 것 중 가장 심플하고 사용하기 편했습니다.
start.bat가 Blackwell 전용으로 고정되어 있으므로, 18행 부근의
pip install --pre --upgrade torch torchvision --index-url https://download.pytorch.org/whl/nightly/cu130
이 부분을
pip install --upgrade torch[device-gfx1200] torchvision[device-gfx1200] --index-url https://rocm.nightlies.amd.com/whl-multi-arch/
pip install https://github.com/bitsandbytes-foundation/bitsandbytes/releases/download/continuous-release_main/bitsandbytes-1.33.7.preview-py3-none-win_amd64.whl
이렇게 바꾸세요.
gfx1200=RX9060XT이므로, 그 외의 분들은 각자 구글링해서 gfx 번호가 몇 번인지 찾아보시기 바랍니다. 물론 https://rocm.nightlies.amd.com/whl-multi-arch/ 에 없다면 작동하지 않습니다.
bitsandbytes는 https://github.com/bitsandbytes-foundation/bitsandbytes/releases 에 나와 있는 대로이지만, --force-reinstall 등을 하면 ROCm 버전 PyTorch까지 통째로 삭제되어 이번에는 ROCm 버전 PyTorch를 다시 --force-install 해야 하는 상황이 발생하므로, 다시 설치하고 싶을 때는 bitsandbytes만 uninstall → install 하도록 합시다.
처음 실행하기 전에 start.bat를 미리 수정해 두면 될 일이지만 말이죠.
먼저 공통 상위 디렉토리를 만들고, 그곳에 kohya_lora_param_gui를 압축 해제합니다. 여기서는 아직 실행되지 않습니다.
공통 상위 디렉토리로 cd 한 상태에서
git clone https://github.com/kohya-ss/sd-scripts.git
를 수행하여, 상위 디렉토리 안에 kohya_lora_param_gui와 sd-scripts 두 개의 디렉토리가 나란히 존재하는 상태로 만듭니다.
그다음, sd-scripts의 설치와 설정을 먼저 수동으로 진행합니다.
cd sd-scripts
python3.12 -m venv venv
.\venv\Scripts\activate
...
평소처럼 ROCm 버전 PyTorch와 bitsandbytes를 집어넣습니다.
그 후에는 NVIDIA 환경과 동일한 의식.
pip install -r requirements.txt
accelerate config
설정은
This machine、No distributed training、NO、NO、NO、all、bf16
로 하면 될 것 같은데 맞나요?
kohya_lora_param_gui에 부속된 간이 인스톨러를 사용하면 매우 엉망이 되므로 반드시 수동 설치를 합시다.
그러고 보니 지난번 torch.distributed.is_initialized 에서 발생했던 에러는 발생하지 않게 되었습니다. ROCm 버전 PyTorch를 새로 업데이트했기 때문일까요?
우선 kohya_lora_param_gui의 맨 아래 가이드에서 샘플 프리셋 (Preset)을 가져와 적당한 곳에 압축 해제해 둡니다.
저는 이번에 Anima의 인물 프리셋을 사용하고 있지만, 다른 것이라도 크게 다르지는 않을 것 같습니다.
우선 프리셋을 로드한 상태에서, 세부적인 부분은 건드리지 않고 작동을 위해 설정이 필요한 부분은 다음과 같습니다.
- 학습 원본 모델 (Learning Source Model): anima-base-v1.0.safetensors의 위치를 지정
- 학습 이미지 (Training Images): 학습 이미지 폴더의 상위 폴더를 지정. 상위 폴더라는 점에 주의할 것. 이미지가 들어있는 10_akane 같은 폴더 자체가 아니라, 그보다 더 상위 폴더를 지정해야 함
- 정규화 이미지 (Regularization Images): 마찬가지로 정규화 폴더의 상위 폴더를 지정. 일단 없어도 동작은 할 것임
- 출력 파일명 및 출력 대상 폴더 (Output Filename and Output Folder): 원하는 곳을 지정
- 상세 설정(Detailed Settings) → 경로(Path) → VAE/Qwen3TE: qwen_image_vae.safetensors/qwen_3_06b_base.safetensors (← 주의/실수하기 쉬운 부분)
override steps. steps for 4 epochs is / 지정 에포크(Epoch)까지의 스텝(Step) 수: 2060
running training / 학습 시작
num train images * repeats / 학습 이미지 수 × 반복 횟수: 515
...
사용 메모리는 9.5G 정도이므로 배치(Batch) 사이즈를 조금 더 늘릴 수 있을 것 같지만, 튜닝 방법을 모르기 때문에 우선은 전부 기본값(Default)에 맡김.
에포크(Epoch)는 4. 배치 사이즈(Batch Size) 2로 2060 스텝(Step)이므로 4120 루프(Loop) 상당.
소요 시간은 3시간 20분이었습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기