하나씩 켜고, 한 값씩 바꾸세요
LoRA 네 칸 · 전체 변형 · 부분 수정 · 좌우 확장 · 윤곽·포즈 · 확대 · 얼굴 · 용어
모든 기능을 켜야 좋은 그림이 되는 것은 아닙니다. 기본 그림을 저장하고, 목적이 있을 때만 다음 기능을 켭니다. 아래 숫자는 초록색 00 여기서 시작 그룹의 value입니다.
랜덤 일반용과 고정 비교용 구분하기
일반 사용: -random.json 다운로드 → 모델 선택 → 실행을 이어갑니다. 일반 올인원은 아래 여섯 생성 단계 모두 randomize, 입문은 07 한 곳이 randomize입니다. seed 숫자가 보이는 것은 정상입니다. 자동 변경 여부는 숫자 아래의 control_after_generate(생성 후 제어) 값으로 구별합니다. 환경 설정에 따라 생성 전 제어로 표시되기도 합니다.
| 노드 제목 | 시드를 사용하는 작업 |
|---|---|
| 07 새 그림 생성 | A=1 새 그림 / ControlNet 새 그림 |
| 09 전체 변형 | A=2 img2img |
| 10 인페인트 | A=3 부분 수정 |
| 12 아웃페인트 | A=4 좌우 확장 |
| 19 하이레스 재생성 | D=3 확대 후 다시 그리기 |
| 23 얼굴 디테일러 | E=2 검출한 얼굴 다시 그리기 |
비교 실습: 고정 예제 JSON을 열고 입력·문장·seed를 유지한 채 LoRA 강도나 denoise 중 한 값만 바꿔 실행합니다. 예제는 여섯 곳을 모두 fixed로 두었습니다. 인페인트+디테일러 비교라면 10과 23을 모두 고정해야 합니다. 일반용에서 직접 비교하려면 실행할 생성 단계들의 제어 칸을 fixed로 바꾸고 seed를 기록하세요. 비교를 마친 뒤 새로운 결과를 탐색하려면 같은 칸들을 randomize로 돌립니다.
새 그림을 만들 때마다 파일을 다시 열 필요는 없습니다. 열린 작업에서 실행을 이어가세요. 모델 2배 확대만 하는 A=5·D=2·E=1 경로는 새 노이즈를 사용하지 않으므로, 랜덤 일반용이어도 같은 입력은 같은 확대 결과가 나올 수 있습니다. 얼굴을 검출하지 못한 경우도 새 얼굴 생성이 생기지 않습니다.
첫 장이 같거나 화면의 seed가 저장한 그림과 다를 때
확인한 프런트엔드에서는 파일을 새로 연 첫 실행에 저장된 숫자를 사용하고 이후 실행에 자동 변경을 적용합니다. 생성 전·후 제어 설정에 따라 화면 숫자가 바뀌는 시점은 다릅니다. JSON을 매번 다시 열면 첫 장이 반복될 수 있습니다. 일반용의 초기 숫자가 정해져 있어도 계속 고정된다는 뜻은 아닙니다.
마음에 든 결과를 다시 쓰려면 ComfyUI/output/anime-aio의 원본 결과 PNG를 보관하세요. 현재 작업을 저장한 뒤 해당 PNG를 ComfyUI로 끌어 열어 그 결과의 작업을 불러오고, 사용할 생성 단계들을 fixed로 바꿔 일반 JSON으로 내보냅니다. 생성 후 제어에서는 화면에 이미 다음 seed가 표시될 수 있어 숫자를 눈으로 옮겨 적는 것보다 결과 파일에서 불러오는 편이 확실합니다. 블로그가 다시 압축한 그림에는 작업 정보가 없어질 수 있습니다.
같은 seed라도 모델·프롬프트·입력·설정이 달라지면 결과가 달라집니다. 고정 번호가 인물의 신원을 저장하는 것은 아니며, 모든 환경에서 픽셀까지 일치함을 보장하지 않습니다.
다섯 개 선택값
| 선택 | 값의 뜻 | 기억할 점 |
|---|---|---|
| A 작업 | 1 새 그림 / 2 전체 변형 / 3 부분 수정 / 4 좌우 확장 / 5 입력 그대로 | 한 번에 한 경로 선택. A=5는 이미 있는 그림에 확대·얼굴 보정만 할 때 |
| B LoRA | 1 끔 / 2 앞 1개 / 3 앞 2개 / 4 앞 3개 / 5 전체 4개 | 02 → 03 → 03a → 03b 순서. 모델·CLIP을 같이 전환 |
| C 제어 | 1 끔 / 2 윤곽 / 3 포즈 / 4 둘 다 | A=1 새 그림에서만 적용. A=2~5에서는 C=1로 두기 |
| D 확대 | 1 끔 / 2 모델 2배 / 3 재생성 1.5배 | 얼굴 디테일러보다 먼저 실행 |
| E 얼굴 | 1 끔 / 2 FaceDetailer | A/D 결과에 얼굴 보정. 얼굴 문장은 21·22에서 별도 입력 |
각 노드 이름 앞의 01·02 같은 번호는 이 가이드에서 찾기 위한 제목입니다. 제목을 바꾸는 대신 노드 안의 숫자 칸·파일 선택 칸을 바꾸세요. 정해진 범위 안의 숫자만 넣습니다. A=6처럼 연결되지 않은 번호를 쓰면 출력이 없습니다. 자동 노드의 select_on_prompt는 그대로 둡니다. 실행 전에 사용하지 않는 가지를 제외하는 설정입니다.
아래 일반 기능 순서는 SDXL 예제를 기준으로 합니다. IL·Animagine은 IL 예제 또는 Animagine 예제에서 목적에 맞는 JSON을 먼저 열고 파일에 저장된 값을 사용하세요. 예를 들어 IL·Animagine 배경 수정은 denoise 0.85, SDXL 배경 수정 예제는 1.00입니다. 각 결과 아래 “필요한 파일과 실제 실행값”을 펼치면 준비물과 샘플링 값을 볼 수 있습니다.
LoRA 한 개부터 네 개까지
- 체크포인트 계열과 맞는 LoRA를
models/loras에 넣고 목록을 새로고침합니다. 02 LoRA 1의lora_name에서 파일을 선택합니다. - 제작자가 지정한 트리거가 있으면 04 원하는 그림에 적습니다. ComfyUI의 기본 CLIP Text Encode에서
<lora:파일명:0.8>이라는 글자만 써서는 로더가 연결되지 않습니다. 파일 선택 + 연결된 LoRA 노드로 적용합니다. - B=2로 바꾸고 실행합니다. 첫 번째 Pixel Art 예제는
strength_model=0.6,strength_clip=1.0입니다. 두 번째 Offset 예제는 model 0.3 / CLIP 1.0입니다. 다른 LoRA는 제작자 권장값이 우선입니다. - 효과가 너무 강하면 model 강도를 0.1 정도씩 내려 봅니다. 고정 비교용 JSON을 열어 seed·문장을 유지하고 LoRA 강도만 바꿔야 비교하기 쉽습니다. 일반 랜덤용에서 그대로 비교하면 seed 차이도 섞입니다. 강도 0.6은 효과가 정확히 60%라는 뜻은 아닙니다.
- 두 번째는 03 LoRA 2 / B=3, 세 번째는 03a LoRA 3 / B=4, 네 번째는 03b LoRA 4 / B=5입니다. 체크포인트 → 1 → 2 → 3 → 4 순서로 누적 적용합니다. B=4는 네 개가 아니라 앞의 세 개입니다. 세 번째·네 번째 칸의 기본 두 강도는 0이므로 파일을 고른 뒤 필요한 강도로 올려야 효과가 생깁니다.
- 전부 끄려면 B=1. 특정 한 파일만 쓰려면 02로 옮겨 B=2로 쓰는 편이 쉽습니다. 칸을 유지하려면 B=5로 두고 쓰지 않을 칸의 strength_model과 strength_clip을 모두 0으로 만드세요. 선택 범위 안의 칸은 강도가 0이어도 설치된 파일명을 골라 두어야 파일명 검사 오류를 피할 수 있습니다. B가 고르지 않은 뒤쪽 칸은 실행에서 제외됩니다.
| 설정 | 뜻 |
|---|---|
| strength_model | 그림을 만드는 모델에 LoRA를 얼마나 반영할지 정하는 값 |
| strength_clip | 문장을 해석하는 부분에 LoRA를 얼마나 반영할지 정하는 값. LoRA에 CLIP 학습 가중치가 없으면 이 값은 효과를 바꾸지 못합니다. |
| 트리거 | 학습한 특징을 부르는 단어. 강도 값과 역할이 다릅니다. |
| 얼굴 프롬프트 | 인물·눈 색 등 LoRA의 특징이 얼굴 보정에도 필요하면 21 얼굴 묘사에도 트리거·특징을 넣습니다. |
애니 화풍이나 의상 LoRA로 네 칸의 파일을 바꿔도 같은 연결을 사용합니다. 서로 다른 파일 네 개를 반드시 받을 필요는 없습니다. 처음에는 한 개씩 효과를 확인하고, 여러 개를 쓸 때는 인물·의상·화풍 요구가 충돌하는지 보세요. 기본 예제의 Pixel Art XL은 화풍 변화 실습용이며, 특정 그림이 반드시 정교한 픽셀 아트가 된다는 보장은 아닙니다. 원래 프롬프트와 강도에 따라 선·색 변화가 달라집니다. ComfyUI 공식 LoRA 설명.
IL 전용 캐릭터 LoRA 따라 하기
만들 결과: 같은 문장·seed로 기본 실습은 LoRA 끔과 model 0.4를 비교하고, 선택 실험에서 0.6·0.8로 높여 인물의 눈·머리·옷 표현이 어떻게 바뀌는지 봅니다. 이름만 적어도 기본 모델이 인물을 아는 경우가 있으므로 “끔=완전히 다른 인물”을 기대하지 않습니다.
- 모델 표의
Illustrious-XL-v1.0.safetensors와kaguya_shinomiya-000005.safetensors를 각각models/checkpoints,models/loras에 넣습니다. 이미 있으면 다시 받지 않습니다. - 먼저 LoRA 끔 JSON을 열고 01 체크포인트를 선택합니다. 832×1216, seed 2026101519, 28 steps, CFG 4.5, euler_ancestral / normal, denoise 1.0입니다. A=1, B=1, C·D·E=1로 실행합니다.
- 02에서 정확한 E5 파일을 고르고 model 0.4 / CLIP 1.0, B=2로 바꿔 다시 실행합니다. 또는 기본 0.4 설정 JSON을 엽니다. 04의
kaguya_shinomiya는 인물 트리거,kaguya_school_uniform은 의상 트리거입니다. 두 비교 파일에 모두 들어 있습니다. - 빨간 눈·검정 머리·빨간 리본과 전체 선을 비교합니다. 이번 결과는 흰 깃·검정 의상 특징을 참고하지만, 작품의 교복 모양을 정확히 복제한 예제로 보지 않습니다. 차이를 더 보고 싶을 때만 model 0.6·0.8 비교를 펼칩니다. 이 설정에서는 의상 변화가 커졌으므로 기본 성공 경로로 권하지 않습니다. 이 E5 파일에는 CLIP 학습 가중치도 들어 있습니다. 이번 비교는 CLIP을 1.0으로 고정하고 model 강도에 집중합니다.
- 만족한 강도와 문장을 일반 JSON으로 저장합니다. 다른 IL LoRA로 바꾸면 파일·트리거·권장 강도를 함께 바꿉니다. 얼굴 보정도 켜려면 21 얼굴 문장의 머리·눈 색과 트리거까지 새 캐릭터에 맞춰야 합니다. 이 캐릭터 비교는 E=1입니다.
정상 결과: 비교 파일의 크기·문장·seed 설정은 같고 LoRA 적용과 model 강도만 비교합니다. 픽셀이 달라진다는 사실 외에 인물 표현을 직접 살펴보세요. 기본 결과와 주의 비교 JSON.
제작자 권장 환경과 이번 실습의 차이
LoRA 제작자 설명은 waiIllustriousSDXL v17에서 학습한 IL/NoobAI 계열용 파일입니다. 이번에는 기존 Illustrious XL v1.0에서 실제 생성해 확인했습니다. 모든 IL 파생 체크포인트에서 같은 모습이 된다는 뜻은 아닙니다. E5 제작자 권장은 0.8이지만 이 기반 모델에서 기본 실습은 0.4로 낮췄습니다. Euler a를 참고했으며 ComfyUI 이름은 euler_ancestral입니다. 제작자가 적은 CLIP skip 2와 관련해 설치된 ComfyUI의 일반 SDXL 로더가 끝에서 두 번째 CLIP 출력을 사용하는 것을 확인해 별도 CLIP skip 노드를 추가하지 않았습니다. 다른 모델에 이 설명을 일괄 적용하지 마세요.
팬 제작 캐릭터 LoRA이며 작품의 공식 배포 모델이라는 뜻은 아닙니다. 모델의 이용 조건과 캐릭터 권리는 별개입니다. 가이드에는 모델 가중치를 넣지 않고 제작자 링크만 제공합니다.

입력 그림을 참고해 변형하기 · A=2
- 08 편집 입력의 업로드 버튼으로 입력 PNG를 고릅니다. 제공 예제는
aio-anime-input.png입니다. - A=2, B·C·D·E=1. 04에는 원하는 전체 그림을 적습니다. 이 경로는 원본 전체를 다시 그리므로 얼굴이나 배경도 바뀔 수 있습니다.
- 09 전체 변형의 denoise를 조절합니다. 기본은 0.35, 비교 예제는 0.55입니다. 낮으면 원본에 가깝고 높으면 더 크게 달라질 수 있습니다.
- 실행 후 선, 눈·표정, 옷 형태를 원본과 비교합니다. 원본과 똑같은 얼굴을 유지하는 기능은 아닙니다.
원하는 범위만 바꾸려면 다음 인페인트를 사용합니다. 이 경로의 출력 크기는 입력 이미지에 따릅니다. 편집 입력은 가로·세로가 8의 배수인 PNG를 권장합니다. 다른 크기는 VAE 인코딩에서 가장자리가 잘릴 수 있으므로 결과 크기를 확인하세요.
일부만 고치기 · A=3
인페인트는 마스크로 지정한 부분을 다시 그리는 작업입니다. 이 배포의 기본 예제는 인물·옷을 두고 배경을 민트색으로 바꾸는 실습입니다.
- example-inpaint.json을 열고 08 편집 입력에서
aio-anime-mask.png를 고릅니다. 제공 PNG에는 이미 배경 마스크가 있습니다. 별도의 흑백 마스크 그림만 넣는 방식과 다릅니다. - 자신의 그림이라면 08에서 그림을 업로드하고 노드를 오른쪽 클릭 → 마스크 편집기에서 열기 / Open in Mask Editor를 선택합니다. 마스크 펜으로 바꿀 곳을 칠하고 저장 / Save을 누릅니다. 얼굴을 보존하려면 얼굴은 칠하지 않습니다.
- A=3, B·C·D·E=1. 04에는 바꿀 부분을 설명합니다. 예제는 민트색 빈 배경이며, 05에는 분홍 배경·물체 등을 피하도록 적었습니다.
- 10 인페인트의 denoise가 부분 수정 강도입니다. 올인원 기본은 0.85, 배경 교체 예제는 1.00입니다. 작은 질감 수정은 더 낮은 값부터 시도합니다.
- 실행하면 마스크 안을 생성한 후 원본에 수정 부분만 붙이기에서 원본과 합칩니다. 얼굴·옷·마스크 경계를 확대해서 확인하세요.
MASK 데이터는 흰색=수정, 검정=보호입니다. Load Image는 PNG 투명도에서 MASK를 읽어 투명한 곳을 수정 영역으로 사용합니다. 제공 PNG가 일부 비어 보이는 것은 정상입니다. 불투명한 흑백 PNG를 올리기만 하면 같은 마스크가 되지 않습니다.
이 작업은 마스크를 8픽셀 넓히고 경계를 부드럽게 합니다. 원본 보존은 처리 후 최종 마스크가 0인 곳을 기준으로 합니다. 처음 칠한 경계 주변까지 전부 원본 픽셀이라고 말하지 않습니다. 공식 마스크 편집기 안내.
좌우로 캔버스 넓히기 · A=4
- example-outpaint.json을 열고 08에서
aio-anime-input.png를 선택합니다. - A=4, 나머지 선택=1. 11 좌우 확장 폭이 256이므로 1024×1024 원본은 1536×1024가 됩니다. 좌우를 같은 폭으로 늘리는 구성입니다.
- 04에 원래 인물 묘사와 이어질 배경을 적습니다. 예제에는 같은 복숭아색 배경이 이어지도록 적었고, 05에는 테두리·세로 줄·창틀을 피하도록 적었습니다.
- 12 아웃페인트는 예제에서 denoise 0.60, 30 steps, CFG 5, euler / normal을 사용합니다. 제공 SDXL 확장 예제의 값입니다. 모델이나 원본을 바꾸면 다시 조절해야 하며 경계가 항상 사라지는 값은 아닙니다.
- 생성 후 원래 그림의 양 끝과 새 배경을 봅니다. 배경에 줄·밝기 차이·추가 얼굴이 생겼다면 완성본으로 쓰기 전에 문장·강도를 조절합니다.
자동 그룹 06a는 원본 양 끝 32픽셀의 색을 먼저 늘려 채우고, 그 위를 다시 그립니다. 연결 이음새를 완화하기 위한 초기 채우기이며, 기존에 없던 정확한 장면을 복원하는 기능은 아닙니다. 원본 안쪽의 경계 128픽셀은 생성 영역과 섞이고 중앙은 보존합니다.
ImagePadForOutpaint의 top·bottom은 0으로 유지합니다. 자동 색 채우기와 합성 좌표가 묶여 있으므로 상하 확장까지 숫자만 바꿔 지원한다고 안내하지 않습니다. 복잡한 벽·책장·반복 무늬에는 추가 수정이 필요할 수 있습니다.윤곽·포즈로 새 그림 제어하기 · C=2~4
ControlNet은 문장에 더해 윤곽이나 자세 같은 구조를 알려 주는 모델입니다. 그림체를 고르는 체크포인트, 특징을 보태는 LoRA와 역할이 다릅니다.
- 먼저 A=1로 새 그림을 고릅니다. 이 구성은 ControlNet을 새 그림 경로에만 연결했습니다.
- 윤곽 C=2: 13 윤곽 기준 이미지에서 PNG를 고르고 14에서 SDXL Canny 파일을 선택합니다. Canny가 경계선을 자동 추출합니다. 기본 strength 0.65, start 0, end 0.70입니다.
- 포즈 C=3: 15 포즈 지도에
aio-pose-map.png, 16에 SDXL OpenPose 모델을 선택합니다. 이 입력은 사람 사진이 아니라 색 선으로 그린 자세 지도입니다. 기본 strength 0.85, start 0, end 1.00입니다. - 둘 다 C=4: 13에
aio-pose-reference.png, 15에 같은 자세의aio-pose-map.png를 넣습니다. 제공 SDXL 예제는 포즈 0.85 다음 윤곽 0.25(end 0.50), CFG 4를 사용합니다. IL·Animagine 비교 예제의 윤곽은 0.45(end 0.65)입니다. 같은 숫자로 일괄 덮어쓰지 말고 선택한 JSON의 값을 먼저 사용하세요. 서로 다른 자세의 자료를 섞지 않습니다. - 04에 자세와 어울리는 인물·복장·장면을 적고 실행합니다. 두 제어가 싸우면 두 개를 모두 높이기보다 먼저 C=3으로 포즈만 확인하고 윤곽을 약하게 더합니다.
strength는 제어 세기입니다. start_percent / end_percent는 생성 과정 중 제어하는 구간이며 이미지의 위치 비율이 아닙니다. end 0.70은 생성 과정의 앞 70% 구간까지 적용한다는 뜻입니다.
제공 포즈 지도에는 손가락·얼굴의 정밀 선이 없습니다. 팔·몸통·다리의 자세 확인용이며 손가락 완성도까지 보장하지 않습니다. 이 배포에는 사진→포즈 자동 추출기가 없습니다. 새 포즈 지도를 만들 때는 별도 추출 작업을 사용한 뒤 그 결과 PNG를 15에 넣습니다. 제공 IL 예제에서는 윤곽·포즈·두 제어를 각각 실행했습니다. 사용한 설정과 결과는 IL 기능 예제를 보세요. 다른 IL 파생 모델이나 모든 강도 조합까지 검증한 것은 아닙니다.
더 크게 저장하기 · D=2 또는 3
| 선택 | 실행 방법 | 변하는 것 |
|---|---|---|
| D=2 모델 2배 | 17에서 RealESRGAN_x2plus.pth 선택. 1024 입력 → 2048 출력. | 확대 모델이 선과 픽셀을 추정합니다. 프롬프트로 다시 샘플링하지 않지만 픽셀이 단순히 복제되는 것은 아닙니다. |
| D=3 재생성 1.5배 | 18에서 1.5배, 19에서 denoise 0.20. 1024 → 1536. | 확대한 그림을 선택 체크포인트로 다시 그립니다. 선·얼굴·의상이 달라질 수 있습니다. 별도 확대 모델은 필요 없습니다. |
이미 저장한 그림만 확대하려면 A=5로 놓고 08에서 그림을 고릅니다. 새 그림을 바로 확대하려면 A=1입니다. 재생성 확대 19의 문장은 04·05를 사용하므로 인페인트에서 “빈 배경”만 적었다면 먼저 전체 인물·장면 문장으로 바꾸거나 D=2를 선택하세요.
이 워크플로의 재생성 확대는 타일로 나눠 처리하지 않습니다. 메모리가 부족하면 D=1로 돌아가 기본 생성부터 확인하고, 원본 크기·확대 배율을 낮춥니다. 확대가 항상 디테일을 정확히 복원하거나 품질을 높여 주는 것은 아닙니다.
얼굴만 추가로 그리기 · E=2
- A=5로 기존 그림을 고르거나, A=1~4의 결과를 사용합니다. 20 얼굴 검출에서
bbox/face_yolov8m.pt를 선택합니다. - 21 얼굴 묘사에 애니 스타일, 머리·눈 색, 표정을 적습니다. 사진·실사 표현을 넣지 않습니다. 22에는 피할 얼굴 표현을 적습니다.
- E=2. 23 FaceDetailer의 denoise=0.30에서 시작합니다. 더 보존하고 싶으면 0.20처럼 낮추고, 바꾸고 싶으면 0.40처럼 조금씩 높여 봅니다.
- 생성 후 눈 모양·표정·머리카락 경계가 원하는 방향인지 원본과 비교합니다. 이미 마음에 드는 얼굴이면 E=1로 끕니다.
| 값 | 쉬운 설명 |
|---|---|
| denoise | 찾은 얼굴을 얼마나 다시 그릴지. 인페인트 10의 denoise와 별개입니다. |
| bbox_threshold 0.50 | 얼굴 후보를 받아들일 점수 기준. 보정 강도 50%가 아닙니다. 애니 옆얼굴·작은 얼굴은 놓칠 수 있습니다. |
| bbox_crop_factor 3.0 | 얼굴 주위 배경을 어느 정도 같이 잘라 참고할지 |
| guide_size 512 / max_size 1024 | 얼굴 부분 작업 크기를 정하는 기준·상한. 최종 전체 캔버스 크기 설정과 다릅니다. |
| feather / noise_mask_feather | 원본과 보정한 얼굴이 붙는 경계를 부드럽게 하는 값 |
검출 모델은 얼굴의 위치를 찾고, 실제 보정은 현재 선택한 체크포인트와 LoRA로 진행합니다. 얼굴을 못 찾으면 그림이 그대로 나올 수 있습니다. 실행이 끝났다는 사실만으로 얼굴 개선에 성공했다고 판단하지 않습니다.
인페인트 + 디테일러 · 두 강도 분리
example-inpaint-detailer.json은 A=3, E=2이며 B·C·D=1입니다. 08은 마스크 PNG, 04·05는 배경 수정 문장, 21·22는 얼굴 문장을 사용합니다.
- E=1로 배경 수정만 실행해 마스크 밖의 인물이 보존되는지 봅니다.
- 그다음 E=2, 얼굴 denoise 0.30으로 실행합니다. 배경 수정 강도는 10에서, 얼굴 강도는 23에서 바꿉니다.
- 배경이 마음에 들지 않으면 10을, 얼굴이 너무 달라졌다면 23을 조절합니다. 두 값을 동시에 바꾸면 어느 단계 때문인지 찾기 어렵습니다.
전체 순서는 인페인트 → 선택 확대 → 얼굴 보정입니다. FaceDetailer까지 켰을 때는 얼굴이 다시 그려지므로 인페인트 단계의 “얼굴 픽셀 보존”을 최종 결과 전체에 그대로 적용하지 않습니다.
처음 보는 용어
| 용어 | 뜻 / 이 파일에서의 예 |
|---|---|
| 체크포인트·LoRA | 체크포인트는 기본 그림 모델, LoRA는 그 위에 인물·화풍·의상 특징을 보태는 추가 학습 파일입니다. 예: 애니 체크포인트에 의상 LoRA 한 개를 더합니다. LoRA만으로는 기본 그림 모델을 대신하지 못합니다. |
| 트리거 | LoRA가 학습한 특징을 부르는 단어입니다. 파일을 고르는 동작과 별개이며, 제작자 안내에 없으면 임의의 주문처럼 추가할 필요가 없습니다. |
| 노드·연결·포트 | 노드는 작업 상자, 연결은 데이터가 가는 선, 포트는 선을 꽂는 입출력 구멍입니다. MODEL은 그림 모델, IMAGE는 픽셀 이미지입니다. |
| 그룹 | 관련 노드를 감싼 제목 있는 색 상자. 보기 쉽게 정리하는 표시이며 생성 품질·속도를 높이지 않습니다. |
| 프롬프트·태그 | 원하는 그림을 적는 문장 또는 키워드. positive는 원하는 것, negative는 피할 것. 원하는 사항이 모두 정확히 지켜지는 명령서는 아닙니다. |
| CLIP·conditioning | CLIP은 문장을 숫자 정보로 바꾸는 부분, conditioning은 그렇게 준비한 생성 조건입니다. |
| VAE·latent | VAE는 픽셀 그림과 압축된 잠재 이미지(latent)를 서로 바꿉니다. KSampler는 주로 이 잠재 공간에서 그림을 만듭니다. |
| seed | 시작 노이즈를 고르는 정수. 일반용 randomize는 실행을 이어갈 때 번호를 자동 변경하고, 비교용 fixed는 유지합니다. 다른 모델에서 같은 인물을 저장하는 번호는 아닙니다. |
| steps | 생성 계산을 몇 단계 진행할지. 무조건 높이면 좋아지지 않습니다. |
| CFG | 문장 조건을 얼마나 강하게 따를지 정하는 값. 지나치면 색·윤곽이 과해질 수 있습니다. |
| sampler·scheduler | 노이즈를 정리하는 계산 방식과 단계별 노이즈 배분 방식. 제공 예제 값을 출발점으로 씁니다. |
| denoise | 기존 그림을 얼마나 다시 그릴지 정하는 강도. 새 그림은 1.00, 편집·확대·얼굴에서는 목적에 맞게 낮춥니다. 서로 다른 단계의 같은 숫자가 같은 변화량을 뜻하지 않습니다. |
| batch_size | 한 번에 만드는 그림 장수. 처음에는 1로 두면 메모리 사용과 비교가 쉽습니다. |
| 인페인트·아웃페인트 | 인페인트는 지정 부분 수정, 아웃페인트는 캔버스 바깥 확장입니다. |
| 프리셋 | 특정 목적에 맞는 설정을 미리 넣어 둔 파일. example-으로 시작하는 JSON은 같은 올인원 구성의 설정 변형이고, anime-starter-는 기본 노드 7개 입문 파일입니다. |
| JSON·PNG 메타데이터 | JSON은 노드와 연결을 저장하는 작업 파일입니다. PNG에도 작업 구성이 추가 정보로 들어갈 수 있지만 모델 가중치가 포함되지는 않습니다. 이 ZIP의 결과 PNG에는 공개용 워크플로만 담았습니다. |
자주 생기는 문제
| 증상 | 해결 |
|---|---|
| 노드가 없다는 빨간 오류 | ImpactInt·ImpactSwitch·FaceDetailer → Impact Pack, UltralyticsDetectorProvider → Impact Subpack. 설치 후 실행 프로그램을 재시작합니다. |
| 모델명이 목록에 없음 | 종류별 models 하위 폴더를 확인하고 모델 목록 새로고침. 선택 노드에서 실제 파일명을 다시 고릅니다. 폴더 안의 ZIP은 압축을 풀어야 합니다. |
| 선택 기능을 껐는데 모델 오류 | A~E가 모두 1인지, 자동 Switch의 sel_mode가 select_on_prompt인지 확인합니다. 별도의 Preview/Save 노드를 선택 가지에 추가하면 그 가지도 실행 대상이 될 수 있습니다. |
| 입력 누락 경고 | 예제 PNG를 ComfyUI/input에 넣고 F5로 새로고침합니다. 또는 08·13·15의 업로드 버튼에서 각각 맞는 파일을 지정합니다. 새 그림의 비활성 입력 가지에 대한 화면 경고와 실행 오류를 구별합니다. |
| 실행이 너무 많음 | 실행 버튼 옆 반복 수와 batch_size를 1로 둡니다. 한 번 누르고 진행을 기다립니다. |
| 기능을 켰는데 결과가 같음 | A=2~5에서는 ControlNet이 적용되지 않습니다. B=1·D=1·E=1은 끔입니다. FaceDetailer는 얼굴을 못 찾으면 그대로일 수 있습니다. |
| LoRA가 과하거나 엉뚱한 인물 | 기반 모델·버전·트리거 확인 → B=1 기본 그림 확인 → 첫 LoRA 하나를 낮은 강도로 적용합니다. |
| 인페인트가 그림 전체를 바꿈 | 마스크 반전·알파를 확인합니다. 원본 Load Image의 MASK를 사용해야 합니다. E=2나 D=3은 추가 영역을 다시 그릴 수 있으므로 먼저 둘 다 끕니다. |
| 마스크가 전부 검정 | 불투명한 일반 PNG는 마스크가 없을 수 있습니다. 마스크 편집기에서 칠해 저장하거나 제공 마스크 PNG를 사용합니다. |
| 확장 그림에 밝기 차이·줄 | 단순한 배경부터 시험하고 문장에 이어질 배경을 적습니다. 선·테두리를 피할 표현에 추가합니다. 이 구성은 복잡한 무늬의 완전한 연속성을 보장하지 않습니다. |
| 애니 얼굴이 실사처럼 됨 | 체크포인트·얼굴 프롬프트 확인. 21에도 anime·lineart 등 원래 표현을 적고 얼굴 denoise를 낮춥니다. |
| 메모리 부족 / CUDA out of memory | 우선 D=1·E=1, batch_size=1로 기본 경로를 실행합니다. 해상도와 확장 폭을 낮춥니다. 무조건 여러 후처리를 함께 켜지 않습니다. |
| JSON만 보내니 다른 PC에서 안 됨 | JSON은 모델·노드 코드·입력 PNG를 포함하지 않습니다. 파일과 설치 안내를 같이 전달하고, 받는 사람이 자신의 모델 목록에서 선택해야 합니다. |
| 새 모델이 v-pred / Turbo / Lightning | 해당 제작자의 전용 샘플링 설정이 필요할 수 있습니다. 일반 SDXL/IL용 이 JSON을 모든 파생 모델에 무조건 호환된다고 보지 않습니다. |