본문 바로가기

AI

로라(LoRA) 사용법 개념 정리! / Stable Diffusion

로라(LoRA) 사용법 개념 정리! / Stable Diffusion

로라(LoRA) 사용법 개념 정리

아래에서는 이미지 생성 AI에 대한 중급 사용자를 위한 주제입니다.

기존 모델에 원하는 디자인 캐릭터를 추가 학습하는 '로라(LoRA)' 방식
하나를 소개하기 위한 것입니다.

Stable Diffusion 시리즈 모델을 사용하여 이미지를 생성하는 경우,

'특정 캐릭터의 일러스트를 만들고 싶다'
'특정 애니메이션의 패턴을 재현하고 싶습니다.'
이런 욕구가 생길 수 있습니다. 하지만 이미지 생성 AI가 그대로 "결정에 의해 특정 디자인/캐릭터 제공"이 매우 어렵고, 이를 해결하기 위한 기술이 있지만 고성능 PC가 필요합니다. 시간이 걸리고… 문제가 있었습니다.

그러나 이러한 문제를 해결하기 위한 '로라(LoRA)'라는 기술이 알려지면서 현재 꽤 대중화되고 있습니다. 여기서는 이 로라(LoRA)에 대해 이야기하겠습니다.

'로라(LoRA) 개요'
'환경을 구축하는 방법'
'로라(LoRA)를 이용한 학습 방법'
'Stable Diffusion web UI'에서 로라(LoRA) 모델 사용법' 등
이 점에 대해 자세히 설명하겠습니다.

 

【※주의】
로라(LoRA)는 편리하지만 강력한 기술이므로 남용하지 마시기 바랍니다.

로라(LoRA)는?

  • '로라(LoRA)는 뭘까?'
  • '알아봤는데 결국 뭔지 잘 모르겠다!'

라고 생각하는 분도 계실 것이기 때문에, 개요를 간단하게 설명해 드리려고 합니다(※그렇다고는 하지만 저도 전문가 아니기 때문에, 개념에 대해서는 오해를 살 수 있는 설명이 되어 버릴지도 모르는 점은 양해 바랍니다).

로라(LoRA)는 'Low-Rank Adaptation'의 줄임말로 단적으로 말하면

기존 모델에 새로운 피사체를 학습시키는 추가 학습 기법의 일종입니다.
그냥 이 말만 가지고는 뭐가 뭔지 잘 모르니까 구체적인 예를 들어보겠습니다.

예를 들어, Stable Diffusion 계열의 모델을 사용해 「특정 캐릭터의 일러스트」를 생성하는 경우를 생각해 보겠습니다. 이때 보통은

프롬프트에 목적을 둔 캐릭터의 특징을 나타내는 키워드를 포함하여 해당 캐릭터에 가까운 일러스트가 나올 때까지 뽑기를 반복이 필요합니다. 하지만 이 방법에는

'모델의 학습에 포함되지 않은 것 같은 마이너한 캐릭터라면 아무리 좋아도 '비슷한' 수준의 일러스트밖에 나오지 않는다. '
'유명 캐릭터라도 뭔가 다른 캐릭터가 되어 버리는 경우가 있다.'
'목표 이미지가 생성될 때까지 계속해서 뽑기를 해야 한다'

는 문제점이 있습니다. 그래서 만약 가능하다면 목표 캐릭터가 결정적으로 나왔으면 할것입니다.

그래서 이 문제를 해결하기 위해서

기존 모델을 목표로 한 캐릭터가 나오도록 조정하는것이 추가학습입니다. 일단로라(LoRA)는 이 추가 학습기법의 일종이라고 생각하시면 될 것 같습니다.

로라(LoRA)의 예

그럼 실제로 제가 로라(LoRA)를 시도한 결과를 올려놓겠습니다.

【조건】

'학습 데이터 : 나의 오리지널 캐릭터 '얼룩양이' 일러스트 15장'
'사용 모델: Stable Diffusion v1.5'
'에퍼크 수: 10'


학습 데이터는 아래 이미지와 같은 느낌입니다.

이를 이용하여 로라(LoRA)에서 학습을 수행하고 그 결과를 사용하여 자동 생성한 이미지 예는 아래와 같습니다.

LoRA를 이용해 생성한 얼룩고양이 예시(1) / LoRA를 이용해 생성한 얼룩고양이 예시(2) / LoRA를 이용해 생성한 얼룩고양이 예시(3)

 

원래 캐릭터에 꽤 가까운 이미지가 생성되었습니다! 

이와 같이 로라(LoRA)를 사용하면, 목적의 캐릭터·그림의 일러스트를 결정적으로 생성할 수 있게 되므로 매우 편리합니다.

다른 추가 학습법(DreamBooth 등)과의 차이점

그런데 추가 학습이라고 하면 로라(LoRA) 뿐만 아니라 'DreamBooth' 등 다른 기법도 있는데, 그와 비교하면 로라(LoRA)의 강점은

'다른 방법보다 훨씬 짧은 시간에 학습시킬 수 있다'
'비교적 낮은 사양의 PC에서도 학습 처리 가능'
'학습 결과 모델 파일은 매우 가볍다'

라는 점에 있습니다. 특히 시간 단축이 가능한 점과 스펙이 다소 낮은 PC에서도 처리를 할 수 있는 점은 강해 글을 쓴 시점에서는 가장 대중적인 수법이 되고 있는 것 같습니다.

필요한 PC 스펙 및 필요한 데이터

다음은 로라(LoRA)를 이용한 학습 처리에 필요한 PC 스펙과 데이터입니다.

필요한 PC 스펙(주로 그래픽카드가 중요)

우선 필요한 PC 스펙은 다음과 같습니다.

최소 6GB, 가능하면 10GB 이상의 VRAM(비디오 메모리)이 있는 그래픽 보드를 탑재하고 있을 것

즉 이미지 생성을 할 때와 마찬가지로 그래픽 보드의 성능이 매우 중요합니다. 그래서 만약 성능이 부족하다면 교체를 검토하는 것이 좋습니다.

2023.03.16 - [AI] - Stable Diffusion용 그래픽카드 고르는법!

 

Stable Diffusion용 그래픽카드 고르는법!

Stable Diffusion용 그래픽카드 고르는법! 아래에서는 제목에서 알 수 있듯이 Stable Diffusion을 쾌적하게 사용하기 위해 그래픽 카드를 고르는법에 대해 알아봅니다. 이미지 생성 AI의 대표주자라고 할

loodyrunning.tistory.com

학습에 필요한 데이터에 대해서

다음으로 학습에는 학습이 되는 데이터가 필요하기 때문에 그것에 대해 설명하겠습니다. 사실 로라(LoRA)를 이용한 학습 방법에는 주로 다음 두 가지 방법이 있습니다.

1. DreamBooth 방식 :
학습 데이터와 정칙화 이미지를 사용하여 학습시키는 방법

2. 파인튠 방식:
학습 데이터와 캡션 파일을 사용하여 학습시키는 방법

어느 쪽이든 원하는 방법을 사용하셔도 괜찮습니다만, 아래에서는 첫 번째 DreamBooth 방식으로 학습을 실시하는 것으로 합니다. 이 경우 학습에는 다음 두 종류의 데이터가 필요합니다.

  • 학습 데이터가 되는 이미지
  • 정칙화 이미지

학습 데이터

먼저 학습 데이터입니다.아래 요건을 충족한 이미지가 최소 20매 이상 필요합니다.

'학습시키고 싶은 피사체가 단독으로 찍혀 있다'
'이미지마다 여러 가지 포즈를 취하고 있다'
'이미지마다 여러 가지 배경이 찍혀 있다'
'난잡한 그림, 특이한 그림들은 제외한다'
(AI가 봤을때 피사체와 배경구분이 잘 안되는 사진, 이펙트가 너무 화려한 사진, 어떤 물건이 나물에 피사체의 일부가 가려진 사진 등.)

너무 비슷한 포즈나 비슷한 배경만 있는 이미지를 학습시키면 그것을 강하게 기억하게 되므로 주의해야 합니다. 또 당연하지만 학습 데이터는 적은 것보다는 많은 것이 좋습니다. 질, 양을 모두 고려하여 모읍시다.

정칙화 이미지

그리고 하나 더 필요한 것이 정칙화 이미지입니다. 학습 대상이나 용도에 따라 다르지만, 일반적으로 학습에서는 이 정칙화 이미지가 대량으로 필요합니다(※만드는 방법은 후술합니다).

정칙화 이미지란 간단히 말하면

프롬프트에 포함된 단어의 개념이 바뀌지 않도록 하기 위한 학습용 이미지
라는 것입니다. …라고 해도 이 설명이라면 의미가 불분명할 것 같아서 조금 더 설명하겠습니다.

참고할 사항으로 일단 이미지 준비로는 * 로라(LoRA)의 버킷 기능(자동 크기 조정 및 자르기) 덕분에 이미지를 자를 필요가 없습니다. 트레이닝 해상도가 512X512라도 이미지를 512 x 512로 준비할 필요가 없다는 뜻입니다. 원본 이미지에서 쓸데없는 부분만 잘라내는 방식으로 합니다.

인스턴스 프롬프트와 클래스 프롬프트

먼저 이미지 생성에서 로라(LoRA)에서의 학습 결과를 반영할 때는 '인스턴스 프롬프트'라고 불리는 프롬프트를 주문에 포함해야 합니다.인스턴스 프롬프트는 학습시킨 도안을 호출하여 생성되는 이미지에 반영시키는 역할을 합니다.

인스턴스 프롬프트에는 예를 들어 아래와 같이 모델과 관련되어 있지 않은 키워드를 할당하는 것이 좋다고 되어 있습니다(※아래 이외에도 무의미한 키워드라면 무엇이든 좋습니다만, 알기 쉽도록 다음과 같은 짧은 키워드를 사용하는 것이 관례입니다).

  • svs
  • coc
  • msm
  • nen
  • cic
  • usu
  • shs
  • ici
  • lvl
  • sts
  • cpc

위의 얼룩양이의 예라면 위 중 'svs'라는 키워드를 인스턴스 프롬프트에 할당하고 있습니다.

그리고 또 하나, 인스턴스 프롬프트와 세트로 사용하는 '클래스 프롬프트'라는 것도 있습니다. 이것은 학습 대상이 무엇인지 보여주는 프롬프트이고, 얼룩양이의 예라면 그것은 고양이이기 때문에 클래스 프롬프트는 'cat'이 됩니다.

왜 정칙화 이미지가 필요한가?

이상을 감안하면, 위에서부터 들고 있는 예로 들면 프롬프트 「svs cat」는 「얼룩양이풍의 고양이」를 가리키게 됩니다. 학습을 실시할 때는 이 프롬프트에 '얼룩양이풍의 고양이'를 관련짓는 것입니다.

하지만 불편하게도 그대로 학습시키면 'svs'와 'cat'이라는 프롬프트에 포함된 두 단어의 개념이 달라집니다.

일반적으로 말하면 cat의 개념은 바꾸고 싶지 않기 때문에, 정칙화 이미지를 사용해 「cat=고양이」이라고 재차 학습시킵니다. 이를 통해 'svs'에만 특정 무늬를 연관시킬 수 있다는 것입니다.

다만 예외도 있다

다만 예를 들면

  • cat의 개념이 바뀌어도 신경쓰지 않는다.
  • 얼룩양이만 낼 수 있으면 상관없다.

그런 경우도 있다고 생각합니다. 그럴 경우에는 정칙화 이미지의 필요성이 줄어들기 때문에 진지하게 정칙화 이미지를 많이 만들 필요도 없다고 생각합니다.  그 부분은 용도 등에 맞게 잘 생각해서 조정해주세요.

로라(LoRA)를 사용하기 위한 환경 구축 방법(sd-scripts 사용)

자, 서론이 매우 길어졌습니다만, 지금부터가 본론입니다. 우선 로라(LoRA)를 사용하기 위한 환경 구축 방법에 대해 자세히 알아보겠습니다.

덧붙여 여기에서는 Kohya_ss, bmaltais에 의한 「sd-scripts」의 GUI판을 사용하도록 하겠습니다. 

GitHub- bmaltais/kohya_ss 바로가기

알기 어려운 부분도 많기 때문에 이 기사에서도 하나하나 해설해 나가겠습니다.주요 작업 절차는 다음 세 단계입니다.

1. Python과 Git를 설치해 두다
2. PowerShell에서 스크립트를 실행할 수 있도록 정책을 변경하다
3. PowerShell로 명령어를 입력하여 환경을 구축하다

1단계: Python 및 Git 설치

우선 Python과 Git을 설치합니다.

Python

이번에 소개하는 방법으로는, 글을 쓴 시점에서는 버전 「3.10」이 권장되고 있습니다(※그 이외라면 잘 움직이지 않는 경우가 있는 것 같습니다). 다운로드 페이지에서 설치 프로그램을 선택하여 다운로드하고 설치합니다.

파이썬 다운로드

Git

아래 페이지에서 최신판 설치 프로그램을 다운로드하여 설치합니다.

git-scm.com 바로가기

2단계: PowerShell에서 명령어를 실행할 수 있도록 정책을 변경한다.

그런 다음 이후 단계 3에서 특정 명령을 실행할 수 있도록 PowerShell 설정을 변경합니다. 일단 적어두면 PowerShell은 옛날 그대로의 '명령 프롬프트'의 파워업 버전으로 시작 메뉴에서 검색하면 나옵니다.

【주의!】
아래 순서를 실행하는 것은 보안상의 리스크를 수반합니다. 


이 PowerShell을 우클릭→"관리자로서 실행"하고 아래의 명령어를 입력합니다.

Set-ExecutionPolicy Unrestricted

경고가 나오는데 Y를 입력하고 Enter를 누릅니다. 이것으로 순서 2는 완료되었습니다. 일단 PowerShell을 닫아주세요.

덧붙여 지금 진행하는것은 'PowerShell의 실행 정책을 변경'하고 있습니다. 자세한 것은 아래 페이지를 참조해 주세요.

PowerShell 실행정책에 대하여

순서 3: PowerShell로 명령어를 입력하여 환경을 구축한다.

그러면 이번에는 PowerShell을 정상적으로 열고 환경 구축 작업을 진행하겠습니다. 다음 11개의 명령어를 하나씩 차례로 입력해 주세요.덧붙여 아래는 sd-scripts의 README로부터의 인용입니다. 부착 실수 등이 있을지도 모르기 때문에 반드시 README도 확인해 주십시오.

git clone https://github.com/bmaltais/kohya_ss.git
cd kohya_ss
python -m venv venv
.\venv\Scripts\activate
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 –extra-index-url https://download.pytorch.org/whl/cu116
pip install –use-pep517 –upgrade -r requirements.txt
pip install -U -I –no-deps https://github.com/C43H66N12O12S2/stable-diffusion-webui/releases/download/f/xformers-0.0.14.dev0-- cp310-cp310-win_amd64.whl
cp .\bitsandbytes_windows*.dll .\venv\Lib\site-packages\bitsandbytes\
cp .\bitsandbytes_windows\cextension.py .\venv\Lib\site-packages\bitsandbytes\cextension.py
cp .\bitsandbytes_windows\main.py .\venv\Lib\site-packages\bitsandbytes\cuda_setup\main.py
accelerate config

※ 세 번째 명령어를 실행했을 때, 「Python」이라고 밖에 표시되지 않는 경우는 명령어의 「python」을 「py」로 대체하고 다시 실행합니다.

마지막 명령어를 실행하면 몇 가지 질문이 나오기 때문에 다음 순서로 응답합니다.

'This machine'
'No distributed training'
'NO'
'NO'
'NO'
'all'
'fp16(※숫자키의 "1"을 눌러 선택)'

Powershell에 질문이 표시되므로 답변하다


질문이 표시되므로 이 이미지와 같이 답변합니다.

마지막 7번째 만큼은 키보드 숫자키로 선택해야 하므로 1을 누른 후 Enter를 눌러줍니다(화살표키로 선택하면 강제 종료되는 버그가 있다고 합니다).

이것으로 환경 구축 작업은 완료되었습니다.

로라(LoRA)를 이용한 학습 방법

그럼 이번에는 드디어 로라(LoRA)를 사용해서 학습을 진행하겠습니다.학습에 필요한 절차는 다음과 같습니다.

1. 학습 데이터 등을 준비한다
2. 'gui.ps1'을 실행하여 설정한다.
3. 학습을 시작하다

순서 1 : 학습 데이터 등을 준비한다.

학습 데이터

우선 학습 데이터를 준비합니다. 앞에서 설명한 아래 요건을 충족하는 이미지를 가능한 한 많이, 가능하면 20장 이상은 모아 둡시다.

  • 학습시키고 싶은 피사체가 단독으로 찍혀 있다
  • 화상마다 피사체가 여러 가지 포즈를 취하고 있다
  • 이미지마다 여러 가지 배경이 찍혀 있다
    (※ AI가 피사체와 배경 그림을 구분할 수 없는 난잡한 그림과 너무 화려하거나 특이한 그림은 제외합니다.)

정칙화 이미지

다음으로 정칙화 이미지는 학습의 근원이 되는 모델을 사용하여 대량으로 생성한 이미지를 사용합니다. 예를 들면 아까의 얼룩양이의 예라면, Stable Diffusion v1.5를 사용해 「cat」이라고 하는 클래스 프롬프트만으로 생성한 이미지가 정칙화 이미지가 됩니다(※단 경우에 따라서는 클래스 프롬프트 뿐이라면 질이 상당히 낮은 이미지가 될 수도 있으므로, 그 경우는 별도로 준비하는 편이 좋은 경우도 있습니다).

이미지 수의 기준은 일단 「학습 데이터의 수×5장」정도가 좋다고 생각합니다. 뭐 더 많은 것이 좋다는 정보도 있습니다만, 시도해 보신다면 이 정도면 충분할 것입니다. 정칙화 이미지를 제대로 준비하고 싶다면 번거로우시겠지만 열심히 만들어주세요.

학습 데이터 등의 폴더 구성에 대해서

마지막으로 모은 이미지를 소정의 이름의 폴더에 넣습니다. 폴더 구성 및 명명 규칙은 다음과 같습니다.

· 학습 데이터 폴더: "train" 등 임의의 이름으로 한다.
· 학습 데이터가 되는 이미지를 넣는 폴더:
"(반복횟수)_(인스턴스 프롬프트)(프롬프트)'라는 이름으로 한다.
[예] 인스턴스 프롬프트가 "svs", 프롬프트가 "bear"이고 반복 수가 20회라면 폴더 이름은 "20_svs bear"
· 정칙화 화상 폴더: 「reg」등 임의의 이름으로 한다.
· 정칙화 이미지를 넣을 폴더:
"(반복횟수)_(프롬프트)라는 이름으로 한다.
【예】프롬프트가 「bear」, 반복수가 1회 뿐이라면 폴더명은 「1_bear」

이것으로 학습 준비는 완료되었습니다.

순서 2: 「gui.ps1」을 실행하여 설정을 실시한다.

필요한 데이터를 준비할 수 있으면, 다음은 sd-scripts 안에 있는 「gui.ps1」을 실행해 설정을 실시합니다(더블 클릭으로 실행할 수 없는 경우는 오른쪽 클릭→"PowerShell로 실행"을 선택. 혹은 배치 파일로 실행해도 됩니다).

실행하면 PowerShell이 실행되고 "Running on local URL:-"라고 뜨는데 URL 부분을 Ctrl 누르면서 클릭하시면 됩니다. 그러면 브라우저가 일어나서 아래와 같은 화면이 됩니다.

로라(LoRA)의 GUI 화면

여기서 'Dreambooth 로라(LoRA)' 을 선택하면 여러가지 설정 항목이 출현하므로, 다음 탭마다 필요한 설정을 실시합니다.

  • Source model 탭
  • Folders 탭
  • Training parameters 탭

Source model 탭

원래 모델 파일을 지정하는 탭입니다.「Pretrained model name or path」에 Stable Diffusion계 모델의 패스를 입력합시다(※모델이 수중에 없는 경우는 Hugging Face등의 사이트에서 미리 다운로드 해 두세요).

Folders 탭

입출력처의 폴더등을 지정하는 탭입니다.다음과 같이 설정해 주세요.

  • Image folder:
    방금 나온 '학습 데이터 폴더'에 해당하는 폴더 지정(자녀 폴더를 지정하는 것은 아니라는 점 주의)
  • Regularisation folder:
    방금 나온 「정칙화 이미지 폴더」에 해당하는 폴더를 지정(이쪽도 자식의 폴더를 지정하는 것은 아니라는 점에 주의)
  • Output folder: 출력할 폴더 지정
  • Model output name: 출력할 로라(LoRA) 모델의 이름 입력학습과 관련된 다양한 파라미터들이 즐비한 탭입니다.여러 항목이 있어서 압도당하지만 주로 다음 항목을 설정합니다.

Training parameters 탭

  • Train batch size:
    병렬해서 실시하는 학습의 매수. VRAM 용량이 10 GB 미만인 경우는 「1」로 해 주세요.
  • Epoch:
    에퍼크 수(=하나의 훈련 데이터를 몇 번 반복해서 학습시킬 것인가). 임의로도 좋고, 시험해보셨다면 일단 '10' 정도면 될 것 같습니다.
  • Network Rank (Dimension):
    학습의 차원수. 수치가 클수록 고정밀 학습이 된다고 합니다. 단순한 그림의 경우는 작은 값이라도 괜찮을 것입니다.
  • Network Alpha:
    알파 값. 기본적으로는 차원수와 같아서 OK.

이외에도 중요한 파라미터가 몇 가지 있기 때문에 꼭 직접 조사하거나 연구해 보시기 바랍니다.

순서 3: 학습을 하다

여기까지 설정이 끝나면 비로소 학습 처리를 실행할 수 있습니다. GUI 화면 맨 아래의 "Train model" 버튼을 눌러주세요. 버튼을 눌러도 GUI 상에는 아무것도 나오지 않지만 PowerShell 상에는 처리 내용이 나오니까 그쪽을 봅니다.

잠시 기다리면 학습이 완료되고 로라(LoRA) 모델이 출력됩니다.

페이징 파일이 너무 작아서~라는 오류가 날 경우

가상 메모리 크기가 부족할 때 이 오류가 납니다. 학습에는 상당한 양의 메모리가 필요하고, 일반 PC라면 먼저 물리 메모리가 부족하기 때문에 가상 메모리도 사용됩니다. 다만 그 가상 메모리의 크기도 작으면 메모리 부족이 되어 버립니다.

이 오류의 간단한 해결 방법으로는 시스템에서 관리하고 있는 가상 메모리의 크기를 스스로 변경하여 늘리는 방법이 있습니다. 자세한 내용은 구글링 해 주셨으면 합니다만, 제대로 된 절차만 적어 두겠습니다.

【주의!】
아래의 조작은 섣불리 실시하면 OS의 동작에 악영향을 줄 수 있습니다.
1. '시스템 상세 설정' 열기
2. 상세 설정 탭 → "가상 메모리" 변경 버튼 누르기
3. '모든 드라이브의 페이징 파일 크기 자동 관리하기' 체크 제거
4. 가상 메모리를 변경하고자 하는 드라이브를 선택하고 '사용자 정의 크기'를 선택한다.
5. 초기 크기 및 최대 크기에 할당하고자 하는 가상 메모리 크기를 입력한다.
6. 반드시 [설정]버튼을 누른다(※누르지 않으면 설정이 반영되지 않습니다)
7. OK 버튼을 눌러 PC를 재부팅하다

구체적으로 가상 메모리가 얼마나 있어야 하는가?라고 하는 점은 사용하시는 PC의 성능에 따라 다르기 때문에 일률적으로는 말할 수 없지만, 물리 메모리와 합쳐서 80GB 정도의 크기가 있으면 문제없이 학습할 수 있다고 합니다. 참고해주세요.

로라(LoRA) 모델을 사용하여 이미지를 생성하는 방법(Stable Diffusion web UI 필요)

마지막으로 로라(LoRA) 모델을 사용하여 이미지를 생성하는 방법에 대해 알아보겠습니다.

전제: Stable Diffusion web UI 도입

먼저 여기서 소개해드릴 방법으로는 AUTOMATIC1111의 'Stable Diffusion web UI'를 사용하겠습니다.「아직 인스톨 하지 않았어」라고 하는 분은 아래의 기사를 참고해 도입을 끝내 두세요.

2023.03.12 - [AI] - Stable Diffusion Web UI(SD) 초 간단 윈도우 설치방법 속도 높이는법 소개.

 

Stable Diffusion Web UI(SD) 초 간단 윈도우 설치방법 속도 높이는법 소개.

Stable Diffusion Web UI(SD) 초 간단 윈도우 설치방법 속도 높이는법 소개. 윈도우상에서 로컬로 설치하는 Stable Diffusion Web UI(이하 SD) 이미지 AI의 초 간단 인스톨 방법을 소개합니다. 이 글을 읽으시는

loodyrunning.tistory.com

로라(LoRA) 모델을 정해진 폴더로 이동시키다

그런 다음 로라(LoRA)에서 만든 모델을 웹 UI의 소정 폴더로 이동시킵니다. 이동폴더는 아래와 같습니다.

webui/models/로라(LoRA)

이동시키면 web UI를 기동시키죠.

로라(LoRA) 모델 사용법

로라(LoRA) 모델을 사용하려면 프롬프트에 로라(LoRA) 모델을 사용하는 것을 명심해야 합니다. 그냥 직접 입력하기 귀찮아서 쉽게 입력할 수 있는 방법을 소개해 드리겠습니다.

먼저 아래 이미지의 화투(?) 아이콘을 누릅니다.

Stable Diffusion webUI 화투 아이콘

그러면 아래와 같은 탭이 있는 항목이 나오므로 '로라(LoRA)' 탭을 누르고 나온 모델을 선택합니다.

로라(LoRA) 모델 선택

그러면 프롬프트란에

<lora:LoRA_TestModel:1>

와 같은 프롬프트가 입력됩니다. 모델명 뒤의 수치(위의 예에서는 1)는 로라(LoRA) 모델의 적용 강도입니다. 1 그대로라면 도안이 상당히 강하게 나오기 때문에 필요에 따라 값을 줄이는 등 잘 조정합니다.

이것으로 로라(LoRA) 모델이 적용되게 됩니다. 위쪽에서 결정한 인스턴스 프롬프트도 잊지 말고 작성한 후 이미지를 생성합니다.

로라(LoRA)를 사용한 사용법 개념 정리

로라(LoRA)를 이용한 학습 방법에 대해 대략적으로 설명드렸습니다.

많은 분들이 준비의 어려움을 겪을 수 있지만 로라(LoRA)는 그만한 노력을 할 가치가 있는 강력한 학습기법이니 꼭 해보시길 바랍니다.

이 글이 여러분에게 조금이나마 참고가 되었으면 합니다. 여기까지 Stable Diffusion의 로라 (LoRA) 사용법이었습니다.

교차형 무한