본문 바로가기
스터디

ComfyUI 메뉴얼 1 기본 사용법과 설정

by na-star 2024. 11. 26.
반응형

 

 

ComfyUI를 실행하면 맨 처음 기본으로 뜨는 화면이다. 화면의 기본 구성에는 Load Checkpoint, CLIP Text Encode(Prompt) 2개(하나는 긍정, 하나는 부정), KSampler, EmPty Latent image, VAE /decide, save image, Queue Prompt컨트롤 박스가 있다.

 

A. 빈 화면에서 노드 추가하기

1. Load Checkpoint

오늘은 노드를 직접 추가하고 연결하는 방법을 배우기 위해 일단 화살표로 표시된 Clear버튼을 눌러 빈 화면을 만들고 시작하겠다. 기본 워크플로우의 시작은 Load Checkpoint 이므로 먼저 빈 화면을 더블클릭하면 나오는 대화상자에서 Load Checkpoint를 선택해 노드를 생성한다. 항목이 많아서 찾기 힘들때에는 대화상자 상단에 있는 Search 란에 노드 이름을 적어서 검색할 수도 있다.

Load Checkpoint

 

2. CLIP Text Encode(Prompt)-긍정

그 다음엔 어떤 노드를 추가해야할지 고민될 수도 있다. 그럴 땐 노드 오른쪽에 있는 아웃풋 포인트 중 하나를 클릭한채 바닥에 놓으면 연결할 수 있는 노드 리스트만 열려서 더 쉽게 생성하고 연결할 수 있다. 우린 두번째로 CLIP Text Encode(Prompt)를 추가한다. WebUI에서 프롬프트를 적는 곳과 동일한 역할을 하는 노드이다.

CLIP Text Encode(Prompt)

 

3. KSampler

CLIP Text Encode(Prompt) 오른쪽 옆에는 하나의 아웃풋 포인트인 CONDITIONING이 있다. 2번과 동일하게 포인트를 클릭한체 빈 화면에 놓으면 뜨는 리스트 중 KSampler를 선택 해 생성해준다.

KSampler

 

4. CLIP Text Encode(Prompt)-부정  

프롬프트는 긍정과 부정이 필요하므로 CLIP Text Encode(Prompt)를 하나 더 추가해보자. 복사해서 추가하려면 Alt버튼을 누른체로 CLIP Text Encode(Prompt)노드를 드래그한다. 또 다른 방법은 Ctrl+C, Ctrl+V가 있다. 그리고 또 다른 방법은 Ctrl+C, Ctrl+Shift V를 해서 붙이는 방법이다. 마지막 방법은 입력라인이 자동 연결된 상태로 복사되므로 가장 효율적인 방법일 수도 있겠다. 오른쪽  아웃풋 CONDITIONING은 KSampler의 negative에 수동으로 연결해준다.

왼쪽은 Ctrl+C,  Ctrl+V / 오른쪽은 Ctrl+C, Ctrl+Shift V

 

 

 

그런데 동일한 형태와 동일한 제목의 프롬프트창이 두 개이다 보니 헷갈릴 수가 있다. 혼선을 방지하기 위해선 이름을 바꾸거나 노드 컬러를 변경해주는 방법을 추천한다.

첫번째는 노드 제목부분 우클릭 메뉴를 보면 Title을 변경하는 바가 있다. 이름을 입력하고 OK버튼을 클릭해서 구분하는 방법이다. 

이름을 바꾸는 방법

두번째는 우클릭 메뉴의 colors를 클릭해서 성격에 맞게 노드의 컬러를 바꾸는 방법이다.

컬러를 바꾸는 방법

5. MODEL연결

KSampler 상단에 model 인풋포인트는 맨 처음 생성했던 Load Checkpoint의 아웃풋과 연결하면 된다. 자세히 보면 연결 가능한 인풋과 아웃풋 포인트는 컬러가 같고 서로 연결이 불가능한 컬러는 색이 흐릿해지면서 비활성화 되도록 사용자의 편의성을 고려해놓은걸 알 수 있다.

 

6. LATENT (Empty Latent Image)  생성

이제 KSampler 노드에서 인풋인 Latent image 노드와 아웃풋 LATENT를 연결하면 된다. 먼저 인풋 연결점을 클릭한 체 빈 화면에 놓으면 생기는 리스트에서 Empty Latent Image를 생성해준다. 오른쪽 아웃풋 연결점을 클릭하여 같은 방법으로 VAE Decode 노드도 생성해준다. 그리고 Load Checkpoint의 남은 아웃풋 vae와 VAE Decode의 인풋 vae를 연결해준다.

Empty Latent Image
VAE Decode
Load Checkpoint와 VAE Decode 연결

 

6. 최종 출력 노드

마지막으로 출력을 위한 노드를 생성해주면 기본 워플로워가 완성된다. 출력 노드는 SaveImage 노드와 PreviewImage가 있는데 단어뜻 그대로 자동으로 저장하면서 이미지를 보여주기와 이미지만 보여주는 형태이다. 보통 기본으로 SaveImage 노드를 연결한다. 

SaveImage 노드

 

 

 

B. 생성하고 저장하기

1. 생성하기

 

모델은 SDXL dreamshaper_8로 선택하고 사이즈는 512X768, steps는 30, sampler_name은 dpmpp_sde, scheduler은 karras로 입력하고 seed값은 0으로  입력한 뒤 Queue Prompt를 눌러본다. 생성이 문제 없이 되었다면 우리는 기본적인 워크플로우를 직접 만드는데 성공한것이다.

 

2. save, lode

이제 오른쪽에 있는 메뉴패널의 save 버튼을 눌러서 파일을 잘 저장해두었다가 lode 버튼을 눌러 오픈해 사용해도 되고 나중에 저장된 json 파일을 화면에 드래그해서 놓아도 사용 가능하다. 설정값과 프롬프트 등 모든 속성을 그대로 가져온다. 스테이블디퓨전에서  생성한 이미지를 화면에 드래그해 놓아도 생성할때 사용했던 노드와 옵션을 그대로 불러올 수 있어서 처음 시작하는 사람들은 파일을 드래그해놓고 시작하는 방법도 나쁘지 않다. 다만 커스텀노드를 활용한 난이도 높은 워크플로우일 가능성이 커서 겁에 질릴수도 있다는 단점이. ㅎㅎㅎ

save로 저장
lode로 오픈, 빈 화면에 파일 드래그

 

이미지를 드래그해서 생성한 워크플로우에는 아직 설치되지 않는 노드들이 많아서 제대로 실행되지 않을 수도 있다. 그런 커스텀 노드들을 자동으로 파악하고 업데이트나 인스톨을 도와주는 것이 바로 ComfyUI manager이다. 이전 글에서 ComfyUI manager 설치하는 법을 다루었으니 참고해보면 좋을듯 하다. 

다음엔 좀 더 디테일한 작업을 위해 주로 사용하는 Custom node노드들을 공부하여 소개해 보려고 한다. 

 

 

반응형