ComfyUI 왕초보 가이드 5 / 29장 · 기준: ComfyUI 0.34.0 / 프런트엔드 1.49.6 · Windows x64 / NVIDIA RTX Portable. 다른 버전에서는 메뉴와 노드 표시가 다를 수 있습니다.
이 장의 실습 자료 ZIP 내려받기 (2.5MB)
JSON·입력 PNG·본문 원본 이미지를 담았습니다. 압축을 푼 뒤 본문에 적힌 파일을 선택하세요. 모델과 프로그램은 포함하지 않습니다. 본문의 WebP는 가벼운 표시용 사본이며, PNG의 작업 정보·투명도와 원본 픽셀 비교에는 ZIP 안의 PNG를 사용하세요.
가상 성인 여성 인물의 1024×1024 PNG 한 장을 만들고 저장합니다.
1. 만들 결과
가상 성인 여성 인물의 1024×1024 PNG 한 장을 만들고 저장합니다.
워크플로는 노드·연결·설정으로 만든 작업 순서입니다. JSON은 그 작업 설정을 보관하는 파일, PNG는 그림 파일입니다. 프롬프트는 그림에 바라는 내용을 적는 문장입니다. 긍정에는 원하는 요소, 부정에는 피하고 싶은 요소를 적습니다. KSampler는 이 조건을 참고해 잠재 데이터를 단계적으로 그림에 가깝게 만드는 노드입니다. 아래 값은 우선 그대로 쓰고, 뜻은 생성 설정 용어표에서 확인하세요.
2. 준비물
ComfyUI를 실행한 상태에서 시작합니다. 아래 모델이 이미 같은 폴더에 있으면 다시 받을 필요가 없습니다.
| 모델 | 공식 파일·다운로드 위치 | 설치 폴더 안에 넣을 곳 | 선택할 노드 | 처음 사용 |
|---|---|---|---|---|
| SDXL Base 1.0 | sd_xl_base_1.0.safetensors | ComfyUI\models\checkpoints | 체크포인트 로드 | 4장 |
| 역할 | 파일 | 정확한 이름 |
|---|---|---|
| 실습 JSON | 실습 JSON 내려받기 (ZIP) | ch05-sdxl-first-portrait.json |
파일 링크는 이 장의 실습 자료 ZIP으로 연결됩니다. 한 번 내려받아 압축을 푼 뒤 표에 적힌 JSON·PNG 파일을 선택하세요. JSON은 Ctrl+O로 열고, 입력 PNG는 해당 LoadImage에서 업로드합니다.
이번 기본 JSON이 저장할 파일
설치 폴더의 ComfyUI/output 아래에 다음 접두사로 저장됩니다. 뒤에는 자동 번호와 .png가 붙습니다. 이미 같은 이름이 있으면 번호가 올라갑니다.
guide/ch05_first_portrait_v2_00001_.png
3. 따라 하기
- 준비물에서 실습 JSON 내려받기를 누릅니다. ComfyUI에서 위쪽 +로 새 작업을 만듭니다.
- Ctrl+O를 누르거나 Comfy 메뉴 → 파일 → 열기를 선택해 받은 JSON을 엽니다. 노드 7개와 연결선 9개가 나타납니다.
- 체크포인트 로드에서 준비한 SDXL Base 파일을 선택합니다. 아래 설정표의 크기·배치·KSampler 값을 확인합니다.
- 숫자를 바꾸려면 값 부분을 두 번 클릭하고 Ctrl+A → 값 입력 → 확인을 누릅니다. 문장을 바꾸려면 텍스트 입력칸 안을 클릭한 뒤 입력합니다.
- 이미지 저장의 파일명 접두사를 확인하고 그래프 → 다른 이름으로 저장으로 작업 이름을 붙입니다. 실행 버튼 옆 요청 수를 1로 두고 실행을 한 번 누릅니다.
- 처음에는 모델을 읽는 시간이 걸릴 수 있습니다. 실행이 끝나고 이미지 저장 노드에 그림이 나타나면 설치 폴더의
ComfyUI\output\guide에서 PNG를 찾습니다.
이번 실습의 설정
| 설정할 노드 | 입력값 |
|---|---|
| 체크포인트 로드 | 체크포인트 = sd_xl_base_1.0.safetensors |
| 빈 잠재 이미지 | 너비 = 1024 높이 = 1024 배치 크기 = 1 |
| KSampler | seed = 20260909 생성 후 제어 = fixed steps = 20 CFG = 7 sampler = euler scheduler = normal denoise = 1 |
| 이미지 저장 · ch05_first_portrait_v2 | 파일명 접두사 = guide/ch05_first_portrait_v2 |
입력할 프롬프트 전문
긍정 프롬프트
photographic beauty portrait of a beautiful 22-year-old adult woman, youthful face, delicate balanced facial features, bright expressive eyes, subtle closed-mouth smile, light natural makeup, one person, close-up head and shoulders, looking at the camera, shoulder-length dark hair, wearing a simple cream-colored knit sweater, soft diffused window light, plain light gray background, natural skin texture, realistic photography
부정 프롬프트
text, watermark, blurry, low quality, distorted face, duplicate person, mature-looking face, deep facial lines, heavy makeup, exaggerated smile, open mouth, visible teeth, hands in frame, plastic skin
직접 구성하기 · 노드 7개와 연결 9개
빈 작업판을 두 번 클릭해 아래 기술 이름으로 검색하고 노드를 추가합니다. 값 입력 뒤, 오른쪽 출력 점을 왼쪽 입력 점으로 끌어 연결하세요. 이름이 같은 노드는 역할·파일명으로 구별합니다.
| 노드 역할 | 검색할 기술 이름 |
|---|---|
| 체크포인트 로드 | CheckpointLoaderSimple |
| 빈 잠재 이미지 | EmptyLatentImage |
| KSampler | KSampler |
| VAE 디코드 | VAEDecode |
| 긍정 프롬프트 | CLIPTextEncode |
| 부정 프롬프트 | CLIPTextEncode |
| 이미지 저장 · ch05_first_portrait_v2 | SaveImage |
| 순서 | 출발 출력 | 도착 입력 |
|---|---|---|
| 1 | 체크포인트 로드 모델 → | KSampler 모델 |
| 2 | 체크포인트 로드 CLIP → | 긍정 프롬프트 clip |
| 3 | 체크포인트 로드 CLIP → | 부정 프롬프트 clip |
| 4 | 체크포인트 로드 VAE → | VAE 디코드 vae |
| 5 | 긍정 프롬프트 조건 → | KSampler 긍정 |
| 6 | 부정 프롬프트 조건 → | KSampler 부정 |
| 7 | 빈 잠재 이미지 잠재 데이터 → | KSampler 잠재 입력 |
| 8 | KSampler 잠재 데이터 → | VAE 디코드 잠재 데이터 |
| 9 | VAE 디코드 이미지 → | 이미지 저장 · ch05_first_portrait_v2 이미지 |



4. 정상 결과 확인
1024×1024 PNG에 인물 한 명이 보이고 얼굴·의상이 구별되면 첫 이미지 실습을 마친 것입니다. 검은 화면·잡음만 있는 결과는 완료로 보지 않습니다. 예시와 같은 얼굴이 나와야 하는 것은 아닙니다.

5. 자주 생기는 문제
| 상황 | 확인할 곳 |
|---|---|
| 모델 누락 알림이 나와요 | 4장의 파일 위치와 체크포인트 선택을 확인합니다. |
| 노드가 너무 작아요 | 마우스 휠로 확대하고, 전체를 잃어버리면 보기 맞춤(.)을 사용합니다. |
| 메모리 부족 오류가 나요 | 추가 요청을 멈추고 배치 크기를 1로 맞춥니다. 동시에 실행 중인 다른 이미지 생성·GPU 프로그램이 있는지도 확인합니다. |
공통 오류와 용어는 용어·문제 해결에서 찾을 수 있습니다.
준비 단계에서 PC 정보가 헷갈린다면 GPU·메모리 등 내 컴퓨터 사양 확인 방법을 함께 참고하세요. 이 장의 결과와 작업 JSON을 보관한 뒤 다음 실습으로 넘어가면 다시 비교하기 쉽습니다.