본문 바로가기
AI · 인공지능/이미지 생성 AI

「스테이블 디퓨전(Stable Diffusion)」속도 개선(구글 코랩으로 돌려서 대기시간 줄이기)

by 두우우부 2022. 9. 20.
반응형

Google이 제공하는 Python 실행 환경 Colaboratory를 이용하면 NVIDIA제 GPU가 없어도 Stable Diffusion을 대기 시간 없이 실행할 수 있으므로, 실제로 환경을 구축하는 순서를 자세히 정리해 보았습니다.

 

Stable Diffusion에서 이미지를 생성하는 예제는 아래에서 확인할 수 있습니다.

 

문장으로 이미지를 생성하는 AI「스테이블 디퓨전(Stable Diffusion)」을 사용해 보았다

런던과 캘리포니아를 거점으로 하는 스타트업 Stability AI가, 마치 아티스트가 그린 것 같은 고품질 이미지를 생성하는 이미지 생성 AI 「Stable Diffusion」을 일반에 공개했습니다. 모델은 Creative ML

doooob.tistory.com

 


그러나 위의 공식 데모에서 이미지를 생성하면 대기 시간이 너무 길어서 좀 답답합니다. 그래서 Google의 Python 실행환경인 Colaboratory에 Stable Diffusion을 설치하여 대기시간을 줄여서 이미지 생성을 실현해 보도록 하겠습니다.

 



◆목차
· 1 : Hugging Face 토큰 발행
· 2 : Colaboratory에서 Stable Diffusion 사용 준비
· 3 : Stable Diffusion에서 이미지를 생성하는 방법



◆1 : Hugging Face 토큰 발행
Stable Diffusion 코드 및 문서는 AI 관련 커뮤니티 사이트 「Hugging Face」에 공개되어 있으며, 자신이 구축한 환경에서 Stable Diffusion을 사용하려면 Hugging Face 계정을 만들어 토큰을 발급해야 합니다.

먼저 다음 링크를 클릭하여 Hugging Face에 게시된 Stable Diffusion 페이지로 이동합니다.

CompVis/stable-diffusion-v1-4 · Hugging Face
https://huggingface.co/CompVis/stable-diffusion-v1-4

 

CompVis/stable-diffusion-v1-4 · Hugging Face

This repository is publicly accessible, but you have to register to access its content — don't worry, it's just one click! By clicking on “Access repository” below, you accept that your contact information (email address and username) can be shared w

huggingface.co


Stable Diffusion의 라이선스에 관한 확인 사항이 표시되면, 잘 읽고 나서 「Access repository」를 클릭합니다.


그러면 Hugging Face 로그인 화면이 표시됩니다. 이번에는 새로운 계정을 만들고 싶으므로 "Sign UP"을 클릭했습니다.


계정 작성 화면이 표시되면 등록하고 싶은 메일 주소와 패스워드를 입력하고 「Next」를 클릭.


그런 다음 사용자 이름과 전체 이름을 입력한 다음 서비스 약관을 확인을 선택한 다음 Create Account를 클릭합니다.


그러면 등록한 메일 주소로 확인 메일이 도착하므로 본문의 URL을 클릭합니다.

네이버 메일의 경우 스팸메일함에 들어 있네요.

스팸메일함의 경우 링크 클릭이 불가하니, 링크를 복사해서 직접 새 창에서 실행하셔야 합니다.

 

 

아래와 같이 "Your email address has been verified successfully"라고 표시되면 Hugging Face 계정 생성이 완료됩니다.


계정 생성이 완료되면 Stable Diffusion 페이지를 다시 방문하여 라이선스에 동의하는 확인란을 선택한 다음 Access repository를 클릭합니다.


그런 다음 화면 오른쪽 상단의 원형 아이콘을 클릭 한 다음 "설정"을 클릭하십시오.


계정 설정 화면이 열리면 Access Tokens를 선택하고 New token을 클릭합니다.


토큰 발행 화면이 나타나면 기억하기 쉬운 이름을 입력하고 Generate a token을 클릭합니다.


다음과 같이 액세스 토큰이 발행되면 Hugging Face에서 작업이 완료됩니다.

일단, 이 토큰을 잃어버리지 마시고 메모장을 열어서 저장해 두세요~

 



◆ 2 : Colaboratory에서 Stable Diffusion을 사용할 준비
다음으로 Google의 Python 실행 환경인 Colaboratory에서 Stable Diffusion을 사용할 준비를 진행합니다. 먼저 아래 링크를 클릭합니다.

Colaboratory에 오신 것을 환영합니다 - Colaboratory
https://colab.research.google.com/?hl=ko

 

Google Colaboratory

 

colab.research.google.com

 


Colaboratory로 이동하면 화면 오른쪽 상단의 '로그인'을 클릭하십시오.



참고글 : 구글 코랩 시작하기

https://doooob.tistory.com/188?category=878050

 

[딥러닝 입문 - 1] 딥러닝 시작하기

이 튜토리얼은 기계 학습과 딥러닝의 구조 및 사용법을 이해하고자 하는 대학 학부생 이상을 대상으로 작성되었습니다. 기계 학습을 배우고 시작하려고 한다면 어느 정도 선형 대수학과 확률

doooob.tistory.com

 



Colaboratory에 로그인하시면 「노트」라고, Python 실행 환경에서 다양한 작업을 수행할 수 있습니다. 이번에는 새롭게 Stable Diffusion용의 노트를 작성하고 싶으므로, 「새 노트」를 클릭합니다.



새 노트가 생성되면 화면 상단의 '수정'을 클릭한 다음 '노트 설정'을 클릭합니다.



설정 화면이 표시되면, 하드웨어 가속기의 란에서 「GPU」를 선택하시고 저장합니다.



이제 Colaboratory에서 GPU를 이용한 계산 처리가 가능해졌습니다.

 

Colaboratory에서는 명령어를 입력하여 작업을 진행할 수 있습니다.

 

먼저 아래 명령을 복사하여 붙여 넣고 실행 버튼을 클릭하여 노트에 Stable Diffusion을 설치합니다.

pip install diffusers==0.2.4 transformers scipy ftfy

 

 



그런 다음 아래 명령을 실행해야 합니다.

YOUR_TOKEN="Hugging Face에서 방금 발행한 토큰"

 


우선 새로운 코드를 입력하기 위해서 아래 버튼을 누릅니다.



아까 메모장에 저장해 뒀던 토큰을 아래와 같이 입력합니다.



그런 다음, 아래 명령을 실행합니다.

from diffusers import StableDiffusionPipeline

pipe = StableDiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4", use_auth_token=YOUR_TOKEN)



「+코드」를 클릭하여 표시된 입력 영역에 상기의 커멘드를 복사해서 붙여 넣고 실행…

그러면 각종 파일의 다운로드가 시작됩니다. 이 처리는 몇 분이 걸리기 때문에 잠시 기다립니다.

 

 



다양한 파일의 다운로드가 완료되면 다음 명령을 실행합니다.

pipe.to("cuda")

 

 

위와 같이 녹색 체크가 나타나면 Stable Diffusion을 사용할 준비가 완료됩니다.

 




◆ 3: Stable Diffusion으로 이미지를 생성하는 방법
Stable Diffusion으로 이미지를 생성하려면 다음 명령을 실행하세요.

prompt = "지시"

image = pipe(prompt)["sample"][0]

image.save(f"파일명.png")

 

「지시」 부분에는 생성하고 싶은 이미지의 설명을 영어로 입력하고, 「파일명」 부분에는 생성할 이미지의 이름을 입력합니다.

 

예를 들어, "공으로 놀고 있는 귀여운 고양이의 이미지"를 생성하고 "cat.png"라는 파일명으로 저장하고 싶다면 아래와 같이 입력하고 실행합니다.

prompt = "cute cat paly with ball"

image = pipe(prompt)["sample"][0]

image.save(f"cat.png")

 

 



이미지 생성이 완료되면 화면 왼쪽의 폴더 아이콘을 클릭합니다.



폴더에는 지정된 파일 이름의 이미지가 출력됩니다. 파일을 더블 클릭하면…

 



생성된 이미지가 화면 오른쪽에 표시됩니다.



생성된 이미지는 우측 상단의 「…」를 클릭하고 「다운로드」를 선택하여 다운로드 가능합니다.(또한 이미지 우클릭 메뉴도 가능)

 



새로운 이미지를 생성하고 싶은 경우는, 앞서 입력한 명령줄의 「지시」나 「파일명」 부분을 변경하여 실행하시면 됩니다.

 



주로 30초면 이미지 생성이 완료되네요. 같은 명령어로 데모 창에서 실행했을 때는 평균 8배 정도의 시간이 걸립니다.

 



만약 생성된 이미지가 파일 목록에 표시되지 않으면 폴더 그림의 업데이트 마크를 클릭하면 표시됩니다.

 



덧붙여 Colaboratory의 노트는 자유롭게 이름을 변경 가능합니다. 알기 쉬운 이름으로 변경해 두면…



다시 Colaboratory에 액세스 하여 노트를 더 쉽게 찾을 수 있습니다. 앞으로는 이번에 만든 노트를 열어서 즉시 이미지 생성이 가능합니다. 또한, 2번째 이후 재기동시 에러가 발생하는 경우 노트의 최상단부터 순서대로 실행 버튼을 쭉 누르면서 내려오시면 재설정이 완료됩니다. 그 후에 다시 실행해 보시면 됩니다.



또한 구글 코랩에서는, 이번에 소개한 범위의 기능들을 모두 무료로 이용할 수 있습니다. 만약 유료 플랜에 가입한다면 더 고성능의 GPU를 이용하여 빠른 처리가 가능합니다.

 

 

관련글

AI로 생성한 Netflix판「젤다의 전설」포스터의 완성도가 너무 높다

 

AI로 생성한 Netflix판「젤다의 전설」포스터의 완성도가 너무 높다

AI 이미지 생성 도구를 사용하여 닌텐도의 인기 게임 시리즈인 '젤다의 전설'을 마치 Netflix가 실사화한 것 같은 비주얼을 생성한 용자가 나타났습니다.(Fake) Fake Netflix Zelda Posters With Tom Holland Fooled

doooob.tistory.com

 
스테이블 디퓨전 결정판「Google Colab + Stable Diffusion Web UI AUTOMATIC1111판」설치 정리(GPU 불필요)
 

스테이블 디퓨전 결정판「Google Colab + Stable Diffusion Web UI AUTOMATIC1111판」설치 정리(GPU 불필요)

이미지 생성 AI 「Stable Diffusion」을 간단하게 이용하기 위한 환경 중 하나인 「Stable Diffusion web UI」의 개발 기여자 중 한 명인 AUTOMATIC1111씨가 「기능 총집판 Stable Diffusion web UI」를 배포했습..

doooob.tistory.com

 

「Stable Diffusion web UI(스테이블 디퓨전 웹환경)」Windows 설치 정리

 

「Stable Diffusion web UI(스테이블 디퓨전 웹환경)」Windows 설치 정리

Stable Diffusion web UI로 화상을 생성하려면 NVIDIA제 GPU를 탑재한 머신이 필요합니다. 본인의 PC에 NVIDIA제 GPU가 있는지 확인하시기 바랍니다. 만일 없다면, 아래 가이드를 따라하셔도 결국 오류가 발

doooob.tistory.com

 

「스테이블 디퓨전(Stable Diffusion)」으로 만들고 싶은 이미지의「영문장」후보를 검색하는「clip-retrieval」

 

「스테이블 디퓨전(Stable Diffusion)」으로 만들고 싶은 이미지의「영문장」후보를 검색하는「clip-r

문장을 입력하는 것만으로 좋아하는 이미지를 생성해 주는 AI「Stable Diffusion」은, 2022년 8월에 공개되어 이후 큰 주목을 받고 있어, PC에 간단하게 인스톨할 수 있는 GUI어플리케이션도 이전 글에

doooob.tistory.com

 

「스테이블 디퓨전(Stable Diffusion)」으로 그림을 그리는 절차를 설명

 

「스테이블 디퓨전(Stable Diffusion)」으로 그림을 그리는 절차를 설명

이미지 생성 AI 「Stable Diffusion」은 문장을 입력하는 것만으로 이미지를 출력해 주는 AI입니다. 그런 Stable Diffusion에는 문장과 함께 「베이스가 되는 이미지」를 입력하는 것으로 출력 이미지의

doooob.tistory.com

 

「스테이블 디퓨전(Stable Diffusion)」에서 이미지의 일부만 바꿔주는「Inpainter」

 

 

「스테이블 디퓨전(Stable Diffusion)」에서 이미지의 일부만 바꿔주는「Inpainter」

이미지 생성 AI Stable Diffusion을 사용하면 문자열을 입력하는 것만으로 그림을 생성하거나 일러스트를 추가하여 보다 상상에 가까운 그림을 생성할 수 있습니다. Stable Diffusion을 응용한 서비스는

doooob.tistory.com

 

「스테이블 디퓨전(Stable Diffusion)」을 이용한 자동 GIF생성 모델「stable-diffusion-animation」이 등장

 

「스테이블 디퓨전(Stable Diffusion)」을 이용한 자동 GIF생성 모델「stable-diffusion-animation」이 등장

이미지 생성 AI "Stable Diffusion"을 이용한 GIF 애니메이션을 자동 생성해주는 모델 「stable-diffusion-animation」이 GitHub에 공개되었습니다. andreasjansson/stable-diffusion-animation – Run with an AP..

doooob.tistory.com

 

무료 이미지 생성 AI「스테이블 디퓨전 - NMKD Stable Diffusion GUI」사용법 정리

 

 

무료 이미지 생성 AI「스테이블 디퓨전 - NMKD Stable Diffusion GUI」사용법 정리

이미지 생성 AI 「Stable Diffusion」은, 지시에 따라 이미지를 생성해 주는 AI로서 큰 주목을 받고 있습니다. 우선 NMKD Stable Diffusion GUI 윈도우 설치부터 합시다 무료 이미지 생성 AI「스테이블 디퓨전

doooob.tistory.com

 

무료 이미지 생성 AI「스테이블 디퓨전」Windows 설치 가이드(NMKD Stable Diffusion GUI)

 

무료 이미지 생성 AI「스테이블 디퓨전」Windows 설치 가이드(NMKD Stable Diffusion GUI)

입력한 문자열로부터 고정밀도의 화상을 생성할 수 있는 AI Stable Diffusion 은 2022년 8월에 무료로 일반에 공개되어, "기본적으로 생성한 이미지는 상용/비상용 불문하고, 자유롭게 이용할 수 있다

doooob.tistory.com

 

반응형