어두운 배경이 싫으시다면 페이지 우측 하단에 보이는 초승달 모양의 아이콘을 클릭하면 화이트모드로 변경됩니다. 초승달 모양 버튼 : `화이트/다크 모드` 전환 |
AI 이미지를 생성하고 편집할 수 있는 스테이블 디퓨전 WebUI 툴에 관해서 설명 포스팅입니다. 1번 내용은 TMI라서 빠르게 설치하고 싶으신 분들은 2번부터 보시면 됩니다. ^^;;
1. 설명
🟦 Stable Diffusion (스테이블 디퓨전) 이란?
Stable Diffusion(이하 스테이블 디퓨전)은 독일 뮌헨 대학교의 한 연구실에서 Stability AI와 Runway ML 등의 지원을 받아서 개발된 딥러닝 인공지능 모델입니다.
해당 인공지능 모델은 Stability AI에서 오픈소스 라이선스로 배포한 Text-to-Image 모델로 2022년 8월 22일에 출시하였습니다. 즉, 이때 나온 모델은 버전 1.0입니다. 현시점(2024년 10월 기준) 버전은 3.5까지 나왔습니다. 불과 2년 만에 엄청난 발전을 이뤄낸 모습을 보니 AI 발전 속도가 엄청나다고 새삼 느껴지네요.
스테이블 디퓨전과 유사한 모델은 굉장히 많습니다. 하지만 대다수는 온라인에서 본인 들만의 서버를 통해서 외부의 웹사이트에서 서비스를 제공하는 반면, 스테이블 디퓨전은 개인의 로컬 환경(PC)에서 실행할 수 있어, 개개인이 쉽게 인공지능을 경험할 수 있는 것이 큰 차이점입니다. 물론 '코랩'과 같은 웹서버 기반으로 실행하는 스테이블 디퓨전도 있습니다. (본인의 PC사양이 제한된다면 웹서버를 이용하셔도 됩니다.)
지금부터 설명하는 내용은 스테이블 디퓨전 1.5 버전입니다. 1.5 버전은 정확히는 1.0 버전의 확장 버전이라고 보시면 됩니다. 이때 기능이 대폭 향상되었고, 무엇보다 SDXL이라는 확장형 버전으로 전환해서 보다 높은 퀄리티의 이미지를 생성할 수도 있습니다.
그래서 스테이블 디퓨전을 검색할 때 버전을 1.0, 2.0, 3.0 등으로 검색하지 않고, `SD 1.5`, `SD 2.0`, `SD 3`, `SD 3.5`, `SDXL` 등으로 검색합니다. 버전이 많아서 헷갈릴 수 있는데, 가장 기본이 되는 1.5를 우선 경험을 하고 여기서 확장하면서 버전을 올리는 것이 좀 더 적응하기 편할 겁니다.
아래 예시 이미지는 1.5와 SDXL이 등장했을 당시의 이미지 예시여서 차이가 많이 나지만, 지금은 워낙 학습이 잘 된 SD 1.5 버전 모델들이 많기 때문에 훨씬 좋은 이미지도 SDXL보다 잘 생성할 수 있습니다.
대부분 높은 버전을 설명하는 사람들은 이미 이전 버전을 어느 정도 경험을 한 상태에서 설명하기 때문에 대체로 기능들을 설명 없이 진행할 수 있으므로, 초보자가 이해하기에는 어려울 수 있습니다.
그리고 무엇보다 SD 1.5 기반의 설명글과 모델, 각종 데이터들이 엄청 많고, 생성 속도나 하드웨어 요구사항 등이 높은 버전에 비하면 훨씬 사용하기 좋기 때문에 입문하기가 더 편합니다.
🟦 WebUI (AUTOMATIC1111) 툴
자 이제 개인 로컬 PC에서 사용할 WebUI 툴에 대해서 설명해보겠습니다. WebUI란, 'AUTOMATIC1111' 이라는 유저가 github에 배포한 오픈소스 웹 기반 UI 툴입니다. 즉, 스테이블 디퓨전 모델을 일반인들이 사용하기 쉽도록 웹 UI 기반으로 제작한 툴로, 이를 이용하여 쉽게 이미지를 생성해 볼 수 있습니다.
※ 참고로 스테이블 디퓨전은 NVIDIA의 GPU로 이미지를 생성할 수 있도록 최적화되어 있습니다. 물론 AMD 그래픽도 가능하나 최적화 방식을 따로 수행해야 하므로 여기서는 NVIDIA GPU (최소 RTX급의 VRAM 6GB, 권장은 8GB 이상을 요구)를 기반으로 설명합니다.
아래 이미지가 WebUI를 실행한 모습입니다. WebUI이기 때문에 웹브라우저를 통해서 실행됩니다. 맨 아래 보면 버전명이 나오는데, 현재 2024년 10월 기준 `version: v1.10.1`입니다. 즉, 1.5에서도 계속 업데이트가 진행되고 있습니다. 그만큼 사용하는 사람들이 꾸준히 있으니 업데이트가 되고 있는 거겠죠?
2. 설치하기
WebUI를 설치하여 사용하기 위해서는 Python과 Git을 설치해야 합니다. 두 프로그램은 설치만 하면 됩니다.
🟦 Python 설치
파이썬은 3.10.7 (64bit) 버전을 설치하면 됩니다. 아래 링크를 통해 다운로드 페이지로 이동하면 맨 아래 'Files'에서 본인의 OS 환경에 맞는 설치파일을 받으시면 됩니다. 저는 윈도우 11을 사용 중이므로 'Windows Installer (64bit)'로 설치하였습니다.
파이썬 설치파일을 다운로드하여 실행하면 아래 이미지처럼 나타납니다. 여기서 맨 아래 'Add Python 3.10 to PATH'를 꼭 체크하셔야 합니다. 체크 안 하고 설치하시면 WebUI 설치가 안 됩니다. 체크 안 하시고 설치하셨다면 다시 설치파일을 실행해서 체크하고 설치하시면 될 겁니다.
🟦 Git 설치
파이썬 설치가 완료되었다면 이제 Git을 설치하겠습니다. Git 설치 파일은 아래 링크로 이동하여 정면에 보이는 'Click here to download'를 클릭하면 설치파일을 다운로드할 수 있습니다.
설치할 때 체크하는 게 많고 과정이 길어 보일 수 있는데 그냥 다 Next 하시면 됩니다.
git 설치가 완료되면 명령 프롬프트를 실행하여 아래와 같이 `git`이라는 명령어를 입력하면 명령어 사용법이 쭉 아래 출력됩니다. 이러면 정상적으로 잘 설치된 것입니다.
🟦 WebUI 설치
자 이제 마지막 단계인 WebUI를 설치해 보겠습니다. 먼저 WebUI를 설치할 위치(드라이브)로 이동하여 폴더 하나를 만들겠습니다. 폴더명은 영어로 원하는 이름으로 지어주시면 됩니다. 저는 'WebUI'라는 폴더를 만들었습니다. 폴더 경로에는 한글이 들어가면 안 됩니다.
가급적이면 용량이 넉넉하고 SSD의 빠른 하드드라이브 위치에 설치하는 것을 추천합니다. WebUI에서 학습 모델을 받아서 이미지를 생성하는데 이 모델이 작게는 2GB에서 많게는 8GB까지 꽤 큰 편입니다. 이런 거 몇 개만 받아도 수십 GB이고, 여기에 다양한 기능을 추가하고, 별도의 도구들을 받고, 이미지를 생성하면 용량이 꽤 많이 필요합니다.
폴더를 만든 위치 경로를 복사합니다. 저의 경우 Q 드라이브에 WebUI라는 폴더를 만들어서 'Q:\WebUI'가 전체 경로입니다. 그리고 '명령 프롬프트(CMD)'를 실행합니다. `cd /d 경로명` 이런 식으로 명령어를 입력하여 폴더 경로로 이동합니다.
그리고 아래 명령어를 복사하여 붙여 넣기 하고, Enter를 눌러 실행합니다. 그러면 github에서 WebUI 설치 및 구동 파일들을 다운로드합니다. 다운로드 과정은 금방 끝납니다.
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
다운로드가 끝나면 WebUI를 설치한 폴더로 이동합니다. 그러면 만들었던 폴더 안에 'stable-diffusion-webui'라는 폴더가 생긴 것을 볼 수 있습니다. 폴더로 들어가서 'webui-user.bat'파일을 찾습니다. 그리고 메모장 같은 텍스트 편집기로 이 파일을 열어서 아래처럼 내용을 수정합니다.
`set COMMANDLINE_ARGS` 부분과 그 아래 `git pull` 명령어를 추가하는 것입니다. `--xformers`는 일종의 연산 속도를 높여주는 가속기라고 보면 되고, `--theme dark`는 WebUI가 실행되면 배경을 다크모드로 바꿔주는 옵션입니다. 본인이 다크모드가 싫다면 해당 부분을 제거하시면 됩니다.
그리고 `--no-half-vae`는 처음 사용하시는 분은 vae가 뭔지 모를 수 있으니 간단하게 이미지를 생성할 때 특정 오류가 발생합니다. 그것을 제거해 주는 옵션이라고 보시면 됩니다.
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--xformers --theme dark --no-half-vae
git pull
call webui.bat
내용을 수정하였으면 저장하고 'webui-user.bat' 파일을 실행합니다. 그러면 쭉 설치과정이 진행됩니다. 설치과정은 꽤 긴 편입니다. 제 PC에서는 대략 10분 정도? 걸렸던 것 같습니다. 느긋하게 기다리시면 됩니다. 중간에 잠깐 멈칫할 수 있는데, 제대로 진행 중인 것이니 기다리시면 됩니다. 설치가 완료되면 웹브라우저가 실행되며 WebUI가 나타납니다.
※ WebUI가 실행될 때 반드시 명령 프롬프트 창이 실행되고 있어야 합니다. 이걸 끄면 웹브라우저가 동작하지 않습니다. 즉, 명령 프롬프트가 서버를 구동시켜 주는 역할을 하고, 웹브라우저는 사용자가 WebUI를 통해서 이미지를 생성할 수 있게 편의를 제공해 주는 것입니다.
실행 중인 웹브라우저를 끄더라도, 명령 프롬프트가 실행 중이면 웹브라우저의 주소창에`http://127.0.0.1:7860/`을 입력하면 다시 WebUI에 접속할 수 있습니다.
🔸설치 및 실행 시 나타나는 fatal 에러 문구 없애는 방법
WebUI를 실행할 때 명령 프롬프트에 `fatal : detected dubious ownership in repository` 이런 식으로 에러 문구처럼 보이는 것들이 매번 나타날 때가 있습니다. 이는 드라이브가 exFAT SSD라서 설치 또는 실행 시 뜨는 에러문구인데, 윈도우 검색바에서 'git bash'를 찾아서 실행하고 아래 명령어를 입력하고 실행하면 다음부터는 해당 문구가 나타나지 않습니다.
※ git bash에서는 붙여 넣기가 `Ctrl + V`가 아닙니다. `Shift + insert`가 붙여 넣기 단축키입니다. `Ctrl + V`해서 이상한 문자가 나타났다면 그냥 지우시면 됩니다.
git config --global --add safe.directory "*"
여기까지 WebUI를 설치하는 과정이었고 다음 포스팅에서는 WebUI를 사용하기 위한 설정과정과 함께 학습 모델을 받아서 이미지를 생성해 보도록 하겠습니다.
🔸다음글 : 스테이블 디퓨전 설정 및 모델 다운로드 받기
구독 및 좋아요는 컨텐츠를 생산하는데 많은 도움이 됩니다. 😊
감사합니다.