박온순 강사님
Stable Diffusion Web UI는 AI 이미지 생성 도구로, Azure에서 우리는 Azure Machine Learning을 사용해서 설치했다.
일반적인 가상 머신 대신 Azure Machine Learning의 Compute Instance를 사용하여 미리 구성된 환경에서 모델을 쉽게 실행할 수 있었다. AI 모델 학습 및 실행에 필요한 도구들이 미리 설치되어 있어 시간을 절약할 수 있었으나, 실행? 배포? 하는데 오래 걸렸던 것으로 기억. (이것은 어제의 기억)
Azure Machine Learning Studio에서 Compute Instance를 생성한 후, SSH로 접속.
ssh -i <프라이빗키>.pem azureuser@<IP주소> -p 50000
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui/models/stable-diffusion
Git Repository를 클론해서 Stable Diffusion Web UI를 설치했다. 최근에 Git을 공부하고 있었는데 이렇게 만나니까 괜히 반갑.
curl -H "Authorization: Bearer <허깅페이스 토큰>" https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt --location --output v1-5-pruned-emaonly.ckpt
Hugging Face에서 Stable Diffusion 모델을 다운로드 한다.
conda create -n a1111-sdwebui python=3.10 -y
conda activate a1111-sdwebui
Compute Instance에서 가상 환경을 설정하고 필요한 라이브러리를 설치한다.
pip install -r requirements_versions.txt
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia
모델 실행에 필요한 PyTorch 및 기타 라이브러리를 설치한다.
accelerate launch --mixed_precision=bf16 --num_cpu_threads_per_process=6 launch.py --share --enable-insecure-extension-access --xformers --no-half-vae --gradio-auth <아이디:비밀번호>
WEb UI를 실행하고 Gradio로 브라우저에서 사용할 수 있다.
💡 Gradio!
사용자가 브라우저에서 직접 AI 모델과 상호작용할 수 있도록 해주는 도구. Stable Diffusion Web UI는 이 Gradio 인터페이스를 통해 모델을 쉽게 실행하고 이미지를 생성하는 웹 기반 인터페이스를 제공한다. 이를 통해 사용자들은 복잡한 코딩 없이도 간단한 텍스트 입력만으로 이미지 생성이 가능해진다. (출처: ChatGPT)
Azure Machine Learning Studio에서 Compute Instance를 관리하면서 필요에 따라 시작 및 중지할 수 있다. 특히 GPU 사용 시 비용이 발생하므로, 작업이 끝난 후에는 자동 종료 설정을 해두는 것이 좋다.
MS AI School의 장점, 이 프로그램을 통해서 느끼고 있는 값진 경험이라면, Azure 머신 러닝과 같은 고가의 클라우드 리소스를 지원해 주는 덕분에, 내 생애 경험하지 못할 대규모 AI 인프라를 마음껏 활용해 볼 수 있다는 점이다. GPU를 사용하는 작업에 드는 비용을 보니 어마어마하던데.. 이렇게 비용 지원을 받으면서, (심지어 출석만 잘해도 용돈(?)까지 받으면서), 고성능의 리소스를 경험할 수 있다는 건 MS AI School이 가진 정말 큰 장점이라고 느낀다. 혼자 공부하면서 AWS 등을 이용했을 때는 과금에 대한 부담 때문에 해보고 싶은 것들에 상당 부분 접근해보지 못했기 때문에, (혹은 사비를 들였기 때문에) 어디서도 얻기 힘든 기회라고 분명히 말할 수 있다. 로컬에서는 시도 못할 작업들도 MS Azure를 통해 시도해보면서, 클라우드의 위력도 동시에 느끼고 있다.
오늘은 세번째 워드프레스 복습이었다. 처음에 알 수 없는 이유로 Key 생성이 안돼서 애먹었지만, 영역을 바꿔서 진행하니 금방 해결이 되었다. 진행 과정 중에 작은 에러가 발생했는데, 사실 바로 질문을 해서 해결할 수도 있었겠지만, 왠지 스스로 해결해보고픈 오기가 생겼다. 한 시간 동안 그 문제를 해결하려고 아주 끙끙 앓았다.
원인은 아주 사소한 거였는데, 내가 설정한 데이터 베이스 이름과 내가 권한을 부여한 사용자의 이름이 달랐던 것. 이 때문에 코드를 다 작성하고도 워드프레스가 계속 데이터 베이스에 접근할 수 없다는 오류를 띄웠다. 여러 시도들을 해보다 wp-config.php 파일을 열어봤는데 여기서 오류를 발견한 것.
수정하자마자 모든 게 정상적으로 돌아갔을 때의 희열감은 말로 표현할 수 없다. 간단한 문제였는데도 발견하지 못한 한시간이 아쉬울 수 있겠지만, 한시간이라는 시간을 들여 스스로 찾아서 해결했다는 사실이 더 기뻤다. 덕분에 오류가 주는 스트레스보다 그 해결 과정에서 오는 성취감이 얼마나 큰지 다시 한 번 느끼게 됐고, 나 이 길 꽤나 잘 선택했다는 섣부른 만족감도 슬쩍 얻었다.
어린 아이가 수십 번, 수백 번, 수만 번을 넘어야 걸을 수 있게 되는 것처럼, 기술은 결국 문제를 해결하는 과정에서 성장한다. ChatGPT가 일상에 스며들면서 어느 순간 내가 사고하기보다는 GPT에 물어보는 게 사실 많이 편해졌는데, 나 스스로 오류의 원인을 찾고 해결하는 과정에서 얻는 성취감을 오랜만에 느껴본 것 같아서, 기술의 발전이 나에게 주고 있는 영향에 대해서 다시 한번 생각하게 되었다.
하루하루가 참 값지다. 내가 값지다고 생각하는 만큼 하루는 가치있어진다. 매일매일 더 가치있는 하루를 살아가기를. 😊
와 전부 기록하고 계시네요. 우리 5기 화이팅!