stable diffusion webui 사용해 보기
stable diffusion 소개
whisper를 사용해 본 김에 ai 관련 오픈소스를 찾아보니 stable diffusion이 있었다.
stable diffusion은 2022년에 공개된 오픈소스로 text to image 인공지능 모델이라고 한다.
이미지에 대한 여러 단어들과 각종 설정들을 통해 이미지를 생성하거나 생성된 이미지를 기반으로 다시 재생성을 하기 위한 다양한 기능을 제공하여 생성된 이미지를 다듬어나갈 수 있다.
https://github.com/Stability-AI/stablediffusion
stable diffusion은 whisper와 동일하게 python으로 제공된다.
다만 whisper처럼 단순하게 음성을 텍스트로 변환하는 게 아닌 이미지 생성과 관련한 다양한 설정을 편하게 하기 위해 직접 사용하는 것보다 web ui가 제공되는 stable diffusion webui를 사용하는 것이 편하다.
https://github.com/AUTOMATIC1111/stable-diffusion-webui
stable diffusion webui 설치해 보기
설치는 간단하다.
python이 설치된 상태에서 v1.0.0-pre의 `sd.webui.zip`을 다운로드하여 압축을 푼 후
https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases/tag/v1.0.0-pre
압축을 푼 폴더에서
update.bat를 실행하고 run.bat를 실행하면 웹서버가 실행된다.
(처음 실행 시 10Gb에 달하는 관련 파일들을 다운로드하는데 상당한 시간이 소요된다.)
C:\Users\bluesky>cd C:\Users\bluesky\Downloads
C:\Users\bluesky\Downloads>cd sd.webui
C:\Users\bluesky\Downloads\sd.webui>update
Updating 48a15821..20ae71fa
// ...업데이트 로그 생략
C:\Users\bluesky\Downloads\sd.webui>run.bat
Python 3.10.6 (tags/v3.10.6:9c7b4bd, Aug 1 2022, 21:53:49) [MSC v.1932 64 bit (AMD64)]
Version: v1.3.0
// ...중간 생략
Calculating sha256 for C:\Users\bluesky\Downloads\sd.webui\webui\models\Stable-diffusion\v1-5-pruned-emaonly.safetensors: Running on local URL: http://127.0.0.1:7860
To create a public link, set `share=True` in `launch()`.
Startup time: 89.4s (import torch: 2.8s, import gradio: 2.5s, import ldm: 0.9s, other imports: 2.7s, setup codeformer: 0.1s, list SD models: 78.3s, load scripts: 1.4s, create ui: 0.3s, gradio launch: 0.3s).
stable diffusion webui 사용해 보기
run.bat를 실행한 상태에서 브라우저에서 localhost:7860 (혹은 127.0.0.1:7860)으로 접근하면 다음과 같은 webui를 확인할 수 있다.
prompt에 원하는 이미지에 관련된 키워드들을 넣고 negative prompt에는 제외되길 원하는 키워드들을 쉼표로 구분하여 넣는다.
예를 들어 다음처럼 입력을 하고 generate를 실행하면
이미지가 generate 버튼 아래 위치에 만들어진다.
generate 버튼을 누를 때마다 다양하게 바뀌어서 생성이 된다.
사람도 키워드로 열거해서 이미지를 생성해 보았는데 뭔가 얼굴이 기괴하거나 손가락이 이상하거나 하였다.
확장프로그램을 잘 사용하고 생성된 이미지 기반으로 계속 다듬어 나가면 퀄리티 높은 이미지를 만들 수 있는 것 같은데 그 정도까지 익히려면 많은 시간이 소요될 것 같다.
stable diffusion webui는 설치가 매우 간단한데 생성된 이미지를 어떻게 다듬어나가는지가 활용도에 큰 비중을 차지할 것 같다.
코드를 작성하지도, command line 명령어를 사용하지도 않고 사용이 가능하다 보니 뭔가 python 공부라기보단 재미있는 장난감을 하나 발견한 듯하다.