SDXL Modular Workflow
세부 정보
파일 다운로드
모델 설명
!일본어 설명은 하단에 있습니다!
모듈식 형식으로 쉽게 사용자 정의할 수 있는 워크플로우.
특징
StableDiffusion WebUI와 유사한 워크플로우(HiresFix, UpScale, ADetailer, PingInfo 저장)
워크플로우 구성 요소를 확장하거나 교체하기 쉬운 모듈 구조
PingInfo에 프롬프트를 저장할 수 있음
커스텀 노드는 네 가지로 엄선됨(rgthree, ImpactPack + Subpack, PromptReaderNode)
개념
용어
모듈: 자체 완결된 기능을 제공하는 노드 그룹
입력 컨텍스트: 이전 모듈에서 매개변수를 수신하고 모듈 내 노드에 전달하는 노드
출력 컨텍스트: 모듈 내 최종 출력을 받아 다음 모듈에 전달하는 노드
컨텍스트: 여러 매개변수를 하나로 모아 흐름 관리를 쉽게 하는 노드. 다른 커스텀 노드의 “파이프”와 동일한 역할
이 워크플로우는 명확성과 확장성을 고려하여 설계되었습니다. 각 기능은 수직으로 배열된 모듈로 구성되며, 모듈 입력 및 출력을 rgthree의 컨텍스트 노드로 제한함으로써 모듈 간 연결이 단일 링크로 정리됩니다.
컨텍스트 노드의 특성인 입력 슬롯이 비어 있으면 기존 값을 재사용하고, 연결되면 연결된 값으로 덮어쓰는 방식을 활용합니다. 이때 이전 모듈의 출력을 인지하고 각 모듈 입력 매개변수에 무엇이 전달되는지 이해해야 합니다.
각 섹션 설명
아래는 워크플로우 내 각 섹션의 설명입니다. 숫자 키 1~4를 눌러 각 섹션으로 빠르게 이동할 수 있습니다.
⚙️ 설정 섹션
이 섹션은 이미지 생성을 위한 다양한 설정을 포함합니다. 왼쪽에는 각 모듈의 ON/OFF를 전환하는 Fast Groups Bypasser 노드가 배치되어 있습니다.
프롬프트 입력 섹션에서, ImpactWildcardEncode 노드의 하부 UI에서 와일드카드 및 Lora를 추가할 수 있습니다. 자세한 사용법은 공식 저장소를 참조하세요.
KSampler Config의
refiner_step은 HiresFix의 스텝 수로 처리됩니다.Model & Clip Modifier 그룹 내에서 두 가지를 조정할 수 있습니다. 기본적으로 V-Prediction 및 Kohya Deep Shrink 노드가 연결되어 있습니다.
더 큰 잠재 공간 크기를 사용하려면 Custom Empty Latent 노드를 활성화하세요. Empty Latent Selector를 통해 쉽게 전환할 수 있습니다.
🖼️ 주요 섹션
이 섹션은 이미지 생성의 핵심 영역입니다. ControlNet, HiresFix 및 Hires 후 업스케일을 지원합니다.
HiresFix는 두 가지 방법을 제공합니다. 잠재 공간에서 직접 업스케일하는 방법(WebUI와 유사)과 업스케일러 모델을 사용하는 방법입니다. 선호하는 방식으로 전환하세요.
UPS_KSamplerUpscale에서 VRAM이 초과되면 VAE Decode를 VAE Decode (Tiled)로 변경해 보세요. 수동 전환 없이도 디코딩 실패 시 자동으로 타일 모드로 재시도합니다.
Apply ControlNet 노드에 대해:
- ControlNet 모듈이 비활성화된 상태에서 이 노드를 실행하면 오류가 발생하므로 기본적으로 연결되어 있지 않습니다. ControlNet을 적용하려면 출력 슬롯을 KSampler에 연결하세요.
ControlNet을 최대한 활용하려면, 필요한 모델과 함께 comfyui_controlnet_aux를 준비하세요.
💎 디테일러 섹션
이 섹션은 생성된 이미지에 디테일을 추가합니다. 전용 샘플러 구성 및 체크포인트를 지정할 수 있습니다.
얼굴 디테일 향상에는 FaceDetailer 노드를 사용합니다.
기타 영역에는 검출된 영역을 필터링하고 재정렬할 수 있는 Detailer (SEGS)를 사용합니다.
추가 영역에 디테일 처리를 추가하려면 기존 모듈을 복사하여 옆에 배치하면 됩니다.
기본적으로 다음 감지 모델을 사용합니다:
💾 출력 섹션
이 섹션은 이미지 저장을 처리합니다. 기본적으로 이미지는 날짜별 폴더에 png 형식으로 저장됩니다.
현재 모델 및 VAE 이름은 저장되지 않습니다. 자세한 내용은 “제한 사항” 섹션을 참조하세요.
워크플로우 확장 방법
새 모듈을 추가하려면 다음 단계를 따르세요. 워크플로우 편집 중 연결 관계를 더 잘 시각화하려면 링크 그리기 모드를 “스플라인”으로 설정하는 것을 권장합니다.
모듈을 추가할 위치를 식별하고, 이후 모듈을 이동시켜 공간을 확보하세요.
입력 및 출력 컨텍스트 노드를 생성하세요.
필요한 노드를 추가하고 수직으로 배열한 후 연결하세요.
마지막 노드의 출력을 출력 컨텍스트 노드에 연결하세요.
새 모듈의 그룹 이름에는 세 글자 접두사(예: CTL_, EXT_)를 붙이는 것을 권장합니다. 기존 그룹들은 이 접두사를 사용하여 어떤 ON/OFF 전환 노드에 표시할지를 결정합니다.
팁
숫자 키 1~4를 눌러 각 섹션의 시작점으로 빠르게 이동할 수 있습니다(rgthree의 북마크 노드 사용).
- 북마크 단축키가 작동하지 않으면 잠시 다른 브라우저 탭으로 전환하면 해결됩니다.
이동 후 화면이 적절히 조정되지 않는 경우, 전환 후 왼쪽 상단의 북마크 노드를 열고 줌 값을 조정하세요.
그룹 이름 영역을 드래그하면 그룹 내 모든 노드가 함께 이동합니다. 약간 이동한 후 Ctrl 키를 누르면 그룹만 이동됩니다.
중첩 그룹을 생성할 때는 항상 부모 그룹을 먼저 생성하세요. 그룹의 전후 순서를 조절할 수 없기 때문에 역순으로 생성하면 자식 그룹을 선택할 수 없게 됩니다.
제한 사항
PingInfo에 모델 이름 저장
현재 워크플로우는 PingInfo에 모델 이름을 저장하지 않습니다. 임시 해결책으로, prompt-reader-node의 SD Parameter Generater 노드를 삽입하고 MODEL_NAME을 연결하면 저장이 가능합니다. 그러나 다음과 같은 세 가지 이유로 이 노드를 채택하지 않았습니다:
매개변수가 고정되어 있더라도 SD Parameter Generater 노드는 매번 워크플로우 시작부터 실행됩니다.
ImpactWildcardEncode의 시드 입력을 지원하지 않아 시드 값이 변경되어도 동일한 프롬프트가 생성됩니다(ImpactPack 측이 아직 업데이트되지 않음).
파일 시스템의 체크포인트(safetensors)가 증가하거나 감소하면 이미지 저장 시 오류가 발생하여 저장이 불가능해집니다. 이 문제는 ComfyUI를 재시작해야만 해결됩니다(ComfyUI 설계 결함 때문일 가능성이 높음).
마찬가지로 VAE 이름도 저장되지 않습니다. 이는 컨텍스트 노드에 해당 슬롯이 없고, SDXL은 일반적으로 통합 모델이나 표준 VAE를 사용한다고 가정하기 때문입니다. 자주 사용하는 고정 VAE가 있다면 추가 매개변수에 직접 입력하여 저장할 수 있습니다.
컨텍스트 노드의 제약
컨텍스트 노드는 이미지 생성에 필요한 대부분의 매개변수를 처리하지만, 비디오 생성이나 커스텀 노드 고유의 매개변수는 처리할 수 없습니다. 예를 들어, sd-ppp에서 사용하는 Document 유형에 대한 슬롯이 없어 연결할 수 없습니다.
현재 커스텀 매개변수를 후속 모듈에 전달하려면 단일 모듈로 구성하거나 Reroute 노드를 사용하여 전달해야 합니다.
포함된 워크플로우 변형
sdxl_moduler_txt2img.json
- 프롬프트에서 이미지를 생성하는 기본 워크플로우
sdxl_moduler_mask_detailer.json
- 마스크된 영역에 Detailer를 적용하는 워크플로우
sdxl_moduler_sd-ppp_inpaint.json
- sd-ppp 커스텀 노드를 사용하는 Detailer 워크플로우
⚠ 실행하려면 최신 버전의 Photoshop이 필요합니다
- sd-ppp 커스텀 노드를 사용하는 Detailer 워크플로우
사용된 커스텀 노드 링크
모듈 형식으로 쉽게 사용자 정의할 수 있는 워크플로우
특징
StableDiffusion WebUI와 유사한 워크플로우(HiresFix, UpScale, ADetailer, PingInfo 저장)
모듈 구조로 워크플로우 확장 및 교체가 용이
PingInfo에 프롬프트 저장 가능
커스텀 노드는 네 가지로 엄선(rgthree, ImpactPack+Subpack, prompt-reader-node)
개념
용어
모듈: 자체 완결된 기능을 수행하는 그룹화된 노드
입력 컨텍스트: 이전 모듈에서 매개변수를 받아 모듈 내 노드에 전달하는 노드
출력 컨텍스트: 모듈 내 최종 출력을 받아 다음 모듈에 전달하는 노드
컨텍스트: 여러 매개변수를 통합하여 흐름 관리를 쉽게 하는 노드. 다른 커스텀 노드에서 “파이프”라고 불리는 것과 동일한 기능
명확성과 확장성을 중시하여 설계된 워크플로우입니다.
모든 기능을 수직으로 배치된 모듈로 구성하고, 모듈의 입력과 출력을 rgthree의 컨텍스트 노드로 제한함으로써 모듈 간 연결을 단일 링크로 정리했습니다.
컨텍스트 노드의 특성인 입력 슬롯이 비어 있으면 기존 값을 재사용하고, 연결되면 그 값을 덮어쓰는 방식을 활용합니다.
주의할 점은 이전 모듈의 출력을 파악하고, 각 모듈의 입력 매개변수에 어떤 값이 전달되는지 인식해야 한다는 것입니다.
각 섹션 설명
아래는 워크플로우 내 각 섹션의 설명입니다.
1~4 숫자 키를 누르면 각 섹션으로 빠르게 이동할 수 있습니다.
⚙️ 설정 섹션
이미지 생성을 위한 다양한 설정을 포함하는 영역입니다. 좌측에는 각 모듈의 ON/OFF를 전환하는 Fast Groups Bypasser 노드가 배치되어 있습니다.
프롬프트 입력 섹션에서, ImpactWildcardEncode 노드의 하부 UI를 통해 와일드카드 및 Lora를 추가할 수 있습니다. 자세한 사용법은 공식 저장소를 참조하세요.
KSampler Config의
refiner_step은 HiresFix의 스텝 수로 처리됩니다.Model & Clip Modifier 그룹 내에서 clip과 model을 조정할 수 있습니다. 기본적으로 V-Prediction 및 Kohya Deep Shrink 노드가 연결되어 있습니다.
더 큰 잠재 공간 크기를 사용하려면 Custom Empty Latent 노드를 활성화하세요. Empty Latent Selector를 통해 쉽게 전환할 수 있습니다.
🖼️ 주요 섹션
이미지 생성의 핵심 영역입니다. ControlNet, HiresFix, Hires 이후의 업스케일을 지원합니다.
WebUI와 유사하게 잠재 공간에서 직접 업스케일하는 모듈과, Upscaler 모델을 사용하는 모듈을 제공합니다. 원하는 방식으로 전환하세요.
UPS_KSamplerUpscale에서 VRAM이 초과되면 VAE Decode를 VAE Decode (Tiled)로 변경해 보세요.
- 수동 전환 없이도 디코딩 실패 시 자동으로 타일 모드로 재시도합니다.
Apply ControlNet 노드에 대해:
- ControlNet 모듈이 비활성화된 상태에서 이 노드를 실행하면 오류가 발생하므로 기본적으로 연결되어 있지 않습니다. ControlNet을 적용하려면 출력 슬롯을 KSampler에 연결하세요.
ControlNet을 최대한 활용하려면 comfyui_controlnet_aux와 필요한 모델을 준비하세요.
💎 디테일러 섹션
생성된 이미지에 디테일을 추가하는 영역입니다. 전용 샘플러 구성과 체크포인트를 지정할 수 있습니다.
얼굴 디테일 향상에는 FaceDetailer 노드를 사용합니다.
그 외 영역에는 검출된 영역을 필터링하고 재정렬할 수 있는 Detailer (SEGS)를 사용합니다.
추가 영역에 디테일 처리를 적용하려면 기존 모듈을 복사하여 옆에 배치하면 됩니다.
기본적으로 다음 검출 모델을 사용합니다:
💾 출력 섹션
이미지를 저장하는 영역입니다. 기본적으로 날짜별 폴더에 png 형식으로 저장됩니다.
현재 모델 및 VAE 이름은 저장되지 않습니다. 자세한 내용은 “제한 사항” 섹션을 참조하세요.
워크플로우 확장 방법
새 모듈을 추가하려면 다음 단계를 따르세요. 워크플로우 편집 중 연결 관계를 더 잘 시각화하려면 링크 그리기 모드를 “스플라인”으로 설정하는 것이 좋습니다.
모듈을 추가할 위치를 결정하고, 그 뒤의 모듈을 이동시켜 공간을 확보하세요.
입력 및 출력 컨텍스트 노드를 생성하세요.
필요한 노드를 추가하고 수직으로 배열한 후 연결하세요.
마지막 노드의 출력을 출력 컨텍스트 노드에 연결하세요.
새 모듈의 그룹 이름에는 세 글자 접두사(CTL_, EXT_ 등)를 붙이는 것을 권장합니다.
기존 그룹들은 이 접두사를 사용하여 어떤 ON/OFF 전환 노드에 표시할지 결정합니다.
팁
숫자 키 1~4를 눌러 각 섹션의 시작점으로 빠르게 이동할 수 있습니다(rgthree의 북마크 노드 사용).
- 북마크 단축키가 작동하지 않으면 잠시 다른 브라우저 탭으로 전환하면 해결됩니다.
이동 후 화면이 제대로 조정되지 않으면, 이동 후 왼쪽 상단의 북마크 노드를 열고 줌 값을 조정하세요.
그룹 이름 영역을 드래그하면 그룹 내 모든 노드가 함께 이동합니다. 약간 이동한 후 Ctrl 키를 누르면 그룹만 이동됩니다.
중첩 그룹을 생성할 때는 항상 부모 그룹을 먼저 생성하세요. 그룹의 전후 순서를 조절할 수 없기 때문에 역순으로 생성하면 자식 그룹을 선택할 수 없게 됩니다.
제한 사항
PingInfo에 모델 이름 저장
현재 워크플로우는 PingInfo에 모델 이름을 저장하지 않습니다. 임시 해결책으로 prompt-reader-node의 SD Parameter Generater 노드를 배치하고 MODEL_NAME을 연결하면 저장이 가능합니다.
다만, 다음 세 가지 이유로 이 노드의 사용을 거부했습니다.
매개변수가 고정되어 있어도 SD Parameter Generater 노드는 매번 워크플로우 시작부터 실행됩니다.
ImpactWildcardEncode의 시드 입력을 지원하지 않아 시드 값이 변경되어도 동일한 프롬프트가 생성됩니다(ImpactPack 측이 아직 업데이트되지 않음).
파일 시스템의 체크포인트(safetensors)가 증가하거나 감소하면 이미지 저장 중 오류가 발생하여 저장이 불가능해집니다. 이 문제는 ComfyUI를 재시작해야만 해결됩니다(ComfyUI 설계 결함 때문일 가능성이 높음).
VAE 이름도 같은 이유로 저장하지 않습니다. 컨텍스트 노드에 해당 슬롯이 없고, SDXL은 일반적으로 통합 모델이나 표준 VAE를 사용한다고 가정하기 때문입니다.
자주 사용하는 고정 VAE가 있다면 추가 매개변수에 직접 입력하여 저장할 수 있습니다.
컨텍스트 노드의 제약
컨텍스트 노드는 이미지 생성에 필요한 거의 모든 매개변수를 처리하지만, 비디오 생성이나 커스텀 노드의 고유 매개변수는 처리할 수 없습니다. 예를 들어, sd-ppp에서 사용하는 Document 유형의 슬롯은 존재하지 않아 연결할 수 없습니다.
현재 커스텀 매개변수를 후속 모듈에 전달하려면 단일 모듈로 구성하거나 Reroute 노드를 사용해 전달해야 합니다.
포함된 워크플로우 변형
sdxl_moduler_txt2img.json
- 프롬프트에서 이미지를 생성하는 기본 워크플로우
sdxl_moduler_mask_detailer.json
- 마스크 영역에 Detailer를 적용하는 워크플로우
sdxl_moduler_sd-ppp_inpaint.json
- sd-ppp 커스텀 노드를 사용하는 Detailer 워크플로우
⚠ 실행하려면 최신 버전의 Photoshop이 필요합니다
- sd-ppp 커스텀 노드를 사용하는 Detailer 워크플로우

