ComfyUI StudioComfyUI Studio
← 가이드 목록워크플로우

ComfyUI 워크플로우 완벽 가이드

노드 구성부터 고급 기법까지, ComfyUI 워크플로우의 모든 것을 알아봅니다.

2026-03-15

워크플로우를 읽는 법

남이 만든 워크플로우를 열었을 때 노드가 수십 개 있으면 압도됩니다. 그런데 어떤 워크플로우든 뼈대는 같습니다. 그 뼈대를 먼저 찾으면 나머지는 곁가지로 보입니다. 뼈대는 이 순서입니다. 모델 로드 → 프롬프트 인코딩 → 잠재 이미지 준비 → 샘플링 → 디코딩 → 저장 노드 이름으로 바꾸면 Load Checkpoint → CLIP Text Encode → Empty Latent Image → KSampler → VAE Decode → Save Image입니다. 복잡해 보이는 워크플로우도 이 여섯 지점은 반드시 있습니다. 처음 열었을 때는 KSampler를 먼저 찾으세요. 거의 항상 화면 중앙 근처에 있고, 여기서 거꾸로 선을 따라가면 전체 구조가 보입니다. KSampler에 들어오는 선은 넷입니다. 모델, 긍정 조건, 부정 조건, 잠재 이미지. 이 네 갈래가 각각 어디서 오는지만 확인하면 그 워크플로우를 이해한 것입니다. ■ 선의 색이 곧 타입입니다 ComfyUI는 연결선의 색으로 데이터 종류를 구분합니다. 같은 색끼리만 연결됩니다. 연결이 안 된다면 타입이 다른 것이므로, 중간에 변환 노드가 필요하다는 뜻입니다. ■ 노드를 접어두기 자주 건드리지 않는 노드는 제목 왼쪽의 점을 눌러 접을 수 있습니다. 큰 워크플로우를 정리할 때 유용합니다.

Text-to-Image: 가장 기본

문장만으로 이미지를 만드는 형태입니다. 모든 워크플로우의 출발점입니다. 구성은 앞서 말한 뼈대 그대로입니다. Empty Latent Image에서 크기를 정하고, 두 개의 CLIP Text Encode에 각각 원하는 것과 피하고 싶은 것을 적고, KSampler가 그걸 받아 이미지를 만듭니다. ■ 해상도를 정할 때 모델의 기준 해상도를 벗어나지 마세요. SD1.5는 512 근처, SDXL은 1024 근처입니다. 세로로 긴 인물 사진을 원한다면 SDXL에서 832×1216, 가로로 넓은 풍경이라면 1216×832처럼 총 픽셀 수를 비슷하게 유지하면서 비율만 바꿉니다. 폭과 높이는 8의 배수여야 합니다. 대부분의 UI가 알아서 맞춰주지만, 직접 입력할 때는 주의하세요. ■ batch_size와 여러 장 만들기 Empty Latent Image의 batch_size를 올리면 한 번에 여러 장이 나옵니다. 단 VRAM을 그만큼 더 씁니다. 메모리가 빠듯하다면 batch_size는 1로 두고 Queue를 여러 번 누르는 편이 안전합니다. 시드가 randomize로 되어 있으면 누를 때마다 다른 결과가 나옵니다. ■ 좋은 결과를 골라내는 요령 처음에는 steps를 낮춰(15 정도) 여러 장을 빠르게 뽑아 구도만 봅니다. 마음에 드는 시드를 찾으면 그 시드를 고정하고 steps를 30으로 올려 다시 만듭니다. 처음부터 고품질로 뽑으면 시간만 오래 걸립니다.

Image-to-Image: 기존 이미지를 바꾸기

가지고 있는 이미지를 출발점으로 삼아 변형합니다. 사진을 일러스트로 바꾸거나, 스케치를 완성하거나, 구도는 유지한 채 화풍만 바꿀 때 씁니다. Text-to-Image와 다른 점은 두 곳뿐입니다. Empty Latent Image 대신 Load Image → VAE Encode가 들어가고, KSampler의 denoise 값을 1.0보다 낮춥니다. ■ denoise가 전부입니다 이 값이 원본을 얼마나 지울지 정합니다. • 0.2~0.4 — 원본이 거의 그대로 남습니다. 질감 보정이나 미세한 정리에 씁니다. • 0.5~0.65 — 구도와 색은 유지하면서 화풍이 바뀝니다. 가장 많이 쓰는 구간입니다. • 0.7~0.85 — 원본은 구도 참고 수준이 되고 내용이 크게 달라집니다. • 0.9 이상 — 사실상 새로 만드는 것과 같습니다. 원하는 만큼 안 바뀐다면 프롬프트를 고치기 전에 denoise부터 올려보세요. 반대로 원본이 너무 사라진다면 denoise를 내립니다. ■ 크기 주의 입력 이미지의 크기가 그대로 결과 크기가 됩니다. 3000×4000 사진을 그대로 넣으면 VRAM이 감당하지 못합니다. Load Image 뒤에 Upscale Image 노드를 넣어 모델 기준 해상도로 줄인 뒤 처리하세요. ■ 인페인팅 이미지의 일부만 고쳐 그리는 방식입니다. 마스크를 만들어 SetLatentNoiseMask로 지정하면 그 영역만 다시 그립니다. 얼굴만 고치거나 배경의 불필요한 물체를 지울 때 씁니다. denoise는 0.8 안팎을 씁니다. 너무 낮으면 원래 있던 것이 흐릿하게 남습니다.

업스케일: 작게 만들고 크게 키우기

처음부터 큰 해상도로 만들면 VRAM도 부족하고 구도도 무너집니다. 실무에서는 거의 항상 기준 해상도로 만든 뒤 키웁니다. ■ 방법 1: 업스케일 모델만 쓰기 UpscaleModelLoader → ImageUpscaleWithModel을 VAE Decode 뒤에 붙입니다. 빠르고 VRAM을 적게 쓰지만, 없던 디테일이 생기지는 않습니다. 이미 만족스러운 이미지를 단순히 크게 만들 때 적합합니다. ■ 방법 2: 두 번 샘플링 (Hires fix) 1차로 기준 해상도에서 만들고, 그 결과를 키운 뒤 낮은 denoise로 한 번 더 샘플링합니다. 두 번째 샘플링에서 디테일이 새로 그려지므로 결과가 확실히 좋아집니다. denoise는 0.4~0.5가 무난합니다. 더 높이면 1차 결과의 구도가 흐트러집니다. 시간과 VRAM은 더 들지만 품질 차이가 큽니다. 최종 결과물에는 이 방식을 권합니다. ■ 얼마나 키울까 한 번에 4배를 키우기보다 2배씩 두 번이 안정적입니다. 그리고 최종 용도를 먼저 정하세요. 웹에 올릴 것이라면 1920px 남짓이면 충분하고, 그 이상은 파일만 무거워집니다.

ControlNet: 구도를 지정하기

프롬프트만으로는 "이 포즈로" 같은 요구를 정확히 전달할 수 없습니다. ControlNet은 참조 이미지에서 구조 정보를 뽑아 결과를 강제합니다. 연결은 이렇습니다. 두 개의 CLIP Text Encode 출력을 ControlNetApplyAdvanced에 넣고, 여기에 ControlNetLoader와 참조 이미지를 함께 연결한 뒤, 나온 결과를 KSampler로 보냅니다. 즉 조건(conditioning)이 KSampler로 가는 길목에 끼어드는 구조입니다. ■ 자주 쓰는 유형 • Canny — 윤곽선을 따라갑니다. 형태를 정확히 유지할 때. • Depth — 깊이 정보를 씁니다. 공간감과 배치를 유지할 때. • OpenPose — 사람의 관절 위치를 따라갑니다. 포즈 지정에 씁니다. • Lineart — 선화를 채색할 때. • Tile — 업스케일 시 디테일을 보강할 때. ■ 강도와 적용 구간 strength는 얼마나 강하게 따를지입니다. 1.0은 매우 엄격하고, 0.5~0.7이면 참고 수준이 됩니다. 결과가 뻣뻣하면 낮추세요. start_percent와 end_percent는 전체 샘플링 중 어느 구간에서 적용할지입니다. 0.0~0.7처럼 후반을 비워두면 큰 구조는 따르되 세부는 모델이 자유롭게 그립니다. 결과가 부자연스러울 때 이 값을 조정하면 개선되는 경우가 많습니다. ■ 계열 일치 ControlNet 모델도 SD1.5용과 SDXL용이 따로입니다. 체크포인트와 맞춰야 합니다. ■ 여러 개 겹치기 ControlNetApplyAdvanced를 이어 붙이면 됩니다. 예를 들어 OpenPose로 포즈를, Depth로 공간을 동시에 지정할 수 있습니다. 다만 서로 충돌하면 결과가 무너지므로 각각의 strength를 낮춰야 합니다.

워크플로우 최적화와 정리

■ 실행이 느릴 때 ComfyUI는 바뀐 노드부터 다시 계산합니다. 즉 프롬프트만 바꾸면 모델 로드는 건너뜁니다. 그래서 여러 장을 실험할 때는 앞쪽(모델 로드) 설정을 건드리지 않는 편이 훨씬 빠릅니다. 반대로 매번 모델을 바꾸며 실험하면 매번 처음부터 다시 시작합니다. 실험할 때는 모델을 고정하세요. ■ VRAM이 부족할 때 해상도를 낮추는 것이 가장 효과가 큽니다. 그다음이 batch_size 축소, 그다음이 실행 옵션(--lowvram)입니다. VAE 디코딩 단계에서 터진다면 VAEDecodeTiled 노드로 바꾸면 해결되는 경우가 많습니다. ■ 워크플로우 저장과 공유 Save 버튼으로 JSON을 저장할 수 있고, ComfyUI가 만든 PNG에는 워크플로우가 들어 있어 그 이미지를 화면에 끌어다 놓으면 그대로 복원됩니다. 팀에 공유할 때는 PNG 한 장이 곧 문서가 됩니다. ■ 남의 워크플로우를 열었을 때 체크리스트 1. 빨간 노드가 있는가 — 커스텀 노드 미설치. Manager로 설치. 2. Load Checkpoint의 모델이 내가 가진 것인가 — 아니면 목록에서 다시 선택. 3. 해상도가 그 모델에 맞는가. 4. LoRA가 있다면 그 파일도 가지고 있는가. 이 네 가지만 맞추면 대부분 그대로 돌아갑니다. ■ 노드가 늘어날 때 Reroute 노드로 선을 정리하고, 관련 노드를 묶어 그룹으로 만들어두면 나중에 자신이 만든 워크플로우를 다시 열었을 때 훨씬 읽기 쉽습니다.

관련 가이드

ComfyUI 초보자 가이드: 설치부터 첫 이미지 생성까지

ComfyUI를 처음 시작하는 분들을 위한 완벽 가이드. 설치, 기본 개념, 첫 이미지 생성, 자주 만나는 오류 해결까지 단계별로 안내합니다.

ComfyUI 모델 설치 및 추천 가이드

체크포인트, LoRA, ControlNet 등 다양한 모델의 설치 방법과 추천 모델을 안내합니다.

ComfyUI vs Automatic1111 WebUI: 완벽 비교 가이드

두 가지 대표적인 Stable Diffusion UI의 장단점과 사용 시나리오를 비교합니다.

ControlNet 완벽 가이드: 유형별 활용법

Canny, Depth, OpenPose, Scribble 등 ControlNet의 모든 유형과 활용 방법을 상세히 안내합니다.

LoRA 사용법과 추천: 스타일을 자유롭게 적용하기

LoRA의 개념부터 설치, 추천 모델, 고급 활용법까지 상세히 안내합니다.

VRAM 최적화 가이드: 저사양 GPU에서 최대 성능 끄어내기

4~8GB VRAM 환경에서 ComfyUI를 최적화하는 방법을 상세히 안내합니다.

Flux 모델 사용법: 차세대 AI 이미지 생성

Black Forest Labs의 Flux 모델의 특징, 설치 방법, 최적 설정을 안내합니다.

ComfyUI 비디오 생성 가이드: Text-to-Video & Image-to-Video

Wan 2.2, HunyuanVideo, LTX-Video 모델로 AI 비디오를 생성하는 방법을 안내합니다.

ComfyUI 커스텀 노드 추천: 필수 설치 목록

작업 효율을 높여주는 필수 커스텀 노드 팩을 소개하고 설치 방법을 안내합니다.

프롬프트 엔지니어링 가이드: AI 이미지 품질을 높이는 방법

Stable Diffusion/Flux에서 효과적인 프롬프트 작성법과 팁을 상세히 안내합니다.

ComfyUI Studio로 바로 시작하세요

복잡한 설정 없이 AI가 워크플로우를 자동으로 생성해줍니다.

ComfyUI Studio 열기 →