티스토리 뷰
ComfyUI란
ComfyUI는 stable diffusion을 위한 노드 기반의 GUI(그래픽 유저 인터페이스)인데요. 여기서 노드(node)는 한글로 '옹이'입니다. 아래 그림을 보시면 나무에 생긴 '옹이'를 볼 수 있는데요. 이처럼 생긴 것을 옹이라고 하고 영어로는 node(노드)라고 합니다.
그렇다면 왜 노드 기반이라고 했을까요? 노드와 노드를 연결하는 것을 링크라고 합니다. 아래 그림을 보면 노드와 노드를 연결한 링크를 볼 수 있습니다.
일단 모습이 아래의 사진과 많이 비슷하죠?
그래서 ComfyUI는 노드 기반의 GUI로 서로 다른 노드를 연결하여 이미지 생성 워크플로를 구성할 수 있습니다. '워크플로'란 작업 흐름이라고 이해하시면 됩니다.
ComfyUI 설치방법
comfyUI github 저장소 Windows 항목에 들어가서 Diriect link to download라고 된 곳에서 파일을 다운 받고 아무폴더나 원하는 곳에 압축을 풀면 됩니다. 용량은 약 1.4기가 정도 됩니다.
다운로드가 완료되면 ComfyUI_windows_portable_nvidia_cu121_or_cpu를 눌러서 실행하여 압축을 풀고 원하는 폴더에 옮깁니다.
저는 하드용량에 여유가 있는 쪽인 D드라이브의 루트로 옮겼습니다. 폴더를 열고 run_cpu 또는 run_nvidia_gpu를 눌러서 실행합니다. 엔비디아 계열의 그래픽카드가 있는 경우 run_nvidia_gpu를 실행합니다.
위 그림에서 보이는 '매우 중요하니 꼭 읽으세요' 파일 안에는 실행하다가 오류가 발생하면 체크포인트 파일을 미리 복사해 뒀는지 확인하라는 것과, 일반적인 업데이트는 update폴더 안에 있는 update_comfyui.bat 을 실행시키면 된다는 내용이 들어 있습니다.
해당 파일을 실행하면 아래처럼 커맨드창(도스창)이 열리면서 아래쪽에 많이 익숙한 url이 나오는데요. 이는 자동으로 실행이 되서 웹브라우저에 바로 열리게 됩니다.
브라우저에서 실행된 아래 모습은 마우스 스크롤 휠로 확대, 축소가 되며 노드를 마우스로 잡아서 위치를 이동할 수도 있습니다.
또한 화면의 빈 공간에서 우측 마우스를 클릭하면 더욱 다양한 노드를 보이게 할 수 있습니다.
워크플로(작업흐름)상의 기본적인 노드
기본 화면 상 가장 좌측에는 체크포인트(모델)를 고르는 노드입니다. 체크포인트 이름을 누르면 가지고 있는 체크포인트(모델)이 나열되며 원하는 체크포인트를 고를 수 있습니다.
이 체크포인트 노드는 CLIP(언어모델)로 연결되며, 긍정 프롬프트 노드와 부정 프롬프트 노드로 연결됩니다.
프롬프트 노드 아래쪽에는 Empty Latent Image 노드가 있는데요. Empty Latent Image는 한글로 해석하자면 '빈 종이'라는 뜻입니다. 준비된 '빈 종이의 사이즈가 512x512라는 것을 알려주는 것입니다. 배치사이즈는 2로 하면 2장이 나오게 됩니다.
빈종이에 연결된 노드는 KSsmpler 입니다. 시드번호, 스텝수, cfg 등 일반적으로 스테이블 디퓨전을 사용할 때 많이 보던 것이 나옵니다.
다음으로 VAE 디코드를 보겠는데요. VAE는 KSampler의 출력을 받아서 디코드한 후 최종 이미지가 생성되게 됩니다.
모든 설정이 끝난 후 가장 우측에 위치한 네모박스에서 Queue Prompt를 누릅니다. Queue는 한글로 '줄세우다'라는 뜻인데요. 프롬프트 명령을 줄세운다고 생각하면 되겠습니다.
프롬프트에 원하는 이미지에 대한 내용을 입력하고 Queue Prompt를 누르면 아래처럼 이미지가 생성이 됩니다.
만들어진 이미지는 ComfyUI 밑에 output 폴더에 저장됩니다.
이상으로 ComfyUI란 무엇인가와 설치방법에 대해서 알아보았습니다.