지난번 포스팅에서는 Stable Diffusion으로 무엇을 할 수 있는지, 어떤 결과물이 나오는지 소개해드렸습니다. 아마 보시는 분들마다 다양한 생각을 하셨을거라 생각됩니다.

오늘 포스팅에서는 바로 Stable Diffusion을 내 PC에 설치해서 결과물이 어떻든 이미지를 하나 만들어보는데까지 진행해보도록 하겠습니다.

우리가 알고 있는 Stable Diffusion은 기본적으로 CLI (Command-Line Interface, 명령줄 인터페이스) 형태로, 흔히 알고있는 도스(DOS), Shell, 명령프롬프트 같은 곳에서 텍스트를 기반으로 실행시키는 형태입니다. 하지만 이는 사용하기 어렵기 때문에!! 우리는 GUI기반으로 사용할 수 있는 도구를 사용할 겁니다.

Stable Diffusion Web UI 라고도 알려져있는 Automatic1111 을 설치해서 사용해봅시다!

Github Page of stable-diffusion-webui @Automatic1111

내 작업환경 진단하기

자 우리는 설치하기에 앞서서 내 PC(혹은 노트북, 맥북)가 어떤 OS를 사용중인지, 그래픽카드가 무엇인지을 알아볼 필요가 있습니다. AUTOMATIC1111의 github 페이지에 들어가보면 다양한 환경에서 설치하는 방법에 대해서 설명하고 있습니다.

영어로 복잡하게 설명되어있지만, 요약해보자면 아래와 같습니다.

  1. 사용중인 GPU(그래픽카드)가 NVidia, AMD, Intel 인가? 혹은 Google Colab같은 온라인서비스를 이용할 것인가?
  2. 사용중인 운영체제가 Window10/11, Linux, MacOSX(Apple Silicon) 인가?

Intel Mac에서는 GPU대신 CPU를 사용해야함. GPU가 없는 일반 PC에서 돌리는 듯한 성능.

정신건강에 해롭습니다. M1,M2 등으로 업그레이드 추천드립니다.
Currently GPU acceleration on macOS uses a lot of memory. If performance is poor (if it takes more than a minute to generate a 512x512 image with 20 steps with any sampler) first try starting with the --opt-split-attention-v1 command line option (i.e. ./webui.sh --opt-split-attention-v1) and see if that helps. If that doesn't make much difference, then open the Activity Monitor application located in /Applications/Utilities and check the memory pressure graph under the Memory tab. If memory pressure is being displayed in red when an image is generated, close the web UI process and then add the --medvram command line option (i.e. ./webui.sh --opt-split-attention-v1 --medvram). If performance is still poor and memory pressure still red with that option, then instead try --lowvram (i.e. ./webui.sh --opt-split-attention-v1 --lowvram). If it still takes more than a few minutes to generate a 512x512 image with 20 steps with with any sampler, then you may need to turn off GPU acceleration. Open webui-user.sh in Xcode and change #export COMMANDLINE_ARGS="" to export COMMANDLINE_ARGS="--skip-torch-cuda-test --no-half --use-cpu all".

2022년 8월 일반에 공개된 Stable Diffusion은 NVidia의 GPU로 계산하도록 설계되어있고, 요구하는 스펙도 높아서 로컬에서 실행하기엔 조금 허들이 있습니다. 하지만 GPU대신 CPU를 사용해서 처리할 수 있도록 나온 버전들이 공개되면서 누구나 간단하게 사용할 수 있게 되었죠.

대표적으로는 AUTOMATIC1111과 함께 유명한 easydiffusion 이 있습니다.

Easy Diffusion – H/W Requirements

보통 하드웨어 부분은 Geforce RTX 2060 이상급을 추천하며, VRAM도 최소 4기가, RAM은 8기가 이상으로 권장하고 있습니다.

위에서 잠깐 언급한 Easy Diffusion을 사용해도 되지만, 우리는 오픈소스로 공식적으로 공개한 WebUI (AUTOMATIC1111)을 설치해서 사용하도록 하겠습니다.

추후에 Easy Diffusion을 설치해서 사용하는 방법도 다뤄보도록 하겠습니다. 현재 출시된 버전은 Easy Diffusion 3.0 이네요.

Step1. 파이썬 (Python) 설치하기

우선 Python 공식 사이트에서 3.12.0 버전을 설치해줍니다. (23년 10월 3일 기준)

노란색 버튼을 눌러서 다운로드 받고 나면, 파일명 뒤에 amd64라고 되어있는데, 인텔을 사용중이라고 다른걸 찾을 필요는 없습니다.

PATH 옵션값 꼭 체크해주기

python-3.12.0-amd64.exe 파일을 누르면 위와 같은 창이 뜨는데 “Add python.exe to PATH” 이걸 꼭 체크해주세요. 안그러면 실행할때마다 PATH설정이 안되어있어서 번거로운 설정을 해줘야될수 있습니다.

이걸 체크해두면 자동으로 시스템의 PATH설정까지 고쳐주니까 꼭 하자구요.

혹시 그럴리는 없지만 사용하는 CPU가 32비트다. 라고 하면 32용을 따로 설치해주셔야 되는데, 32비트를 사용중이시라면 스테이블디퓨전을 돌리기는 힘든 컴퓨터 사양일거라 생각되어 따로 설명은 안하겠습니다.

파이썬 설치 성공!

만약에 설치하다가 오류가 났다면 댓글로 알려주세요. 그 전에 Python이 다른 버전이 설치되었거나 할 수 있으니, 다 제거하고 다시 설치해보시길 바랍니다.

설치가 다 되었다면 실행이 잘 되는지, 터미널창에서 테스트를 해볼께요. 윈도우키 누르고 cmd라고 입력하면 “명령 프롬프트” 라는 앱이 있습니다. 이걸 실행해주세요.

터미널창에서 Python 실행화면

위와 같이 되면 정상적으로 설치된 겁니다. (전 3.12.0 버전을 설치했는데 3.11.5 버전이 실행되네요…. )

테스트 됐으면 그냥 창을 닫으면 됩니다.

Step2. Git 설치하기

Git을 사용하는 방법은 CLI라는 명령어를 통한 방법과 GUI로 구성된 별도의 프로그램을 사용하는 방법이 있습니다. 둘 다 소개해드릴께요. Git을 처음 접하는 분들은 CLI는 건너띄고 GUI로 사용하시는 것도 좋을 것 같습니다.

Step2.1 Git For Windows 설치

Git for Windows 을 받아서 설치하시면 됩니다. 역시 64bit로 받으시면 됩니다. 현 시점 최신버전은 2.42.0.2 입니다.

https://gitforwindows.org/
Git for windows 설치화면

다운 받은 파일을 누르면 이런 설치창이 뜨는데 그냥 다음다음 누르면 끝입니다.

git이 잘 설치되었는지 확인하려면 아까 cmd 를 다시 실행해서 git 이라고 입력해보면 됩니다.

이렇게 나오면 성공!

Step2.2 Github Desktop 설치하기

조금 더 Git을 쉽게 사용하기 위해서 Github Desktop 이라는 GUI 툴을 같이 소개해드릴께요.

Github에서 제공하는 Client 입니다. 이걸 설치하면 사실 위에 Git for windows는 설치하지 않아도 됩니다.

Github Desktop 홈페이지 화면

가운데 보라색버튼 눌러서 설치해주시면 됩니다. 설치까지 되었으면 바로 다음 단계로 넘어갈께요.

Step3. WebUI 저장소 복사하기

우선 프로젝트를 복사해올 내 PC 안의 폴더를 미리 만들어둘께요.

내문서 아래에 만드셔도 되고, 저는 D드라이브에 SD라는 폴더를 만들어두겠습니다.

위에서 CLI 방식과 GUI 방식을 모두 설명드렸는데, CLI방식부터 해볼께요.

3.1 CLI 방식으로 프로젝트 복사해오기

먼저 CMD를 실행합니다. 그리고 만들어둔 폴더로 이동합니다.

C:\Users\webma> D:   (D드라이브로 이동)
d:\> cd SD (SD폴더로 이동)
d:\SD>

혹시 도스명령어를 모르겠다 하시는 분은, C드라이브에 SD폴더로 설정한다고 가정하고 아래를 따라해보세요. 그러고 내컴퓨터로 보시면 됩니다.

C:\Users\webma> cd \    (가장 상위 폴더로 이동)
C:\> md sd (sd폴더 생성, 이미 생성했으면 패스)
c:\> cd sd (sd폴더로 이동)
c:\sd>

이제 아래와 같은 명령어를 입력하면 해당 소스를 내 PC로 내려받게 됩니다. 내려받을 폴더까지 이동해서 명령어를 쳐줘야되요.

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
성공적으로 소스를 내려받은 화면

내 컴퓨터에서 보면 이렇게 폴더와 파일들이 생긴걸 볼 수 있습니다.

3.2 Github Desktop 에서 복사해오기

github desktop 프로그램을 실행하고, 상단 메뉴에 File > Clone Repository 를 눌러주세요.

누르면 이런 팝업이 뜰건데, URL탭을 선택하고 아래처럼 Git URL을 입력해줍니다. 다운받을 폴더는 Local Path 에서 선택해주면 됩니다. CMD에서 진행했다면 이 부분은 안하셔도 됩니다. 이거 또 하면 2번 다운받는거에요.

정상적으로 Clone 되었으면 아래같은 창으로 나올거에요.

Step4. Stable Diffusion WebUI 실행하기

Stable Diffusion을 설정할 것이 많이 있겠지만, 일단 실행까지 해보죠.

내 컴퓨터에 아까 코드를 내려받은 폴더로 가면 webui-user.bat 라는 실행파일이 있습니다. 그걸 더블클릭해줍니다.

처음 실행할때는 필요한 라이브러리 등을 자동으로 내려받느라고 시간이 오래걸리는데, 2번째 부터는 금방 실행될겁니다. (처음에 거의 30분 이상 걸린것 같네요.)

멈춘 것처럼 보여도 계속 기다리세요!

보이지 않는 작업들이 진행중입니다.

계속 기다리다보면 브라우저가 자동으로 켜지면서 기대하던 Stable Diffusion WebUI 화면을 볼수 있을 겁니다. 이때 중요한 점 하나! 절대 CMD창을 닫지 마세요. 여러분의 PC를 서버로 사용하는 것이라 CMD창이 닫히면 브라우저로 WebUI가 동작하지 않습니다.

Stable Diffusion 실행에 성공한 모습

실행까지 되었으니까 텍스트로 이미지를 하나 만들어볼까요?

txt2img 프롬프트 입력하는 곳에 “young boy in school”라고 적고 Generate 버튼을 눌러봅니다.

이렇게 연산하는 동안에 CMD 창에서는 뭔가 열심히 일을 하고 있네요.

자 이렇게 Stable Diffusion을 설치하고 실행해보았습니다.

다음 포스팅에서는 WebUI의 메뉴들을 설명하고 기본적인 개념에 대해서 알아보도록 하겠습니다.

감사합니다.

More on this topic

Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here