DeepFaceLab(딥페이스랩, 얼굴 합성용 오픈소스 도구)을 만져본 분이라면 한 번쯤 검은 콘솔 창에 빨간 에러가 줄줄이 뜬 경험이 있을 겁니다. 메시지는 영어로만 나오고, 검색해봐도 깃허브 이슈의 영문 답변뿐이라 비전공자라면 어디서부터 손대야 할지 막막합니다.

이 글은 제가 지난 몇 달간 DeepFaceLab을 돌리면서 실제로 만났던 deepfacelab 에러 7가지를 한국어로 정리한 것입니다. 원인이 뭐고 어떤 순서로 확인하면 되는지를, 비전공자도 따라올 수 있게 풀어 썼습니다.
본격적인 사용법보다는 "이미 깔았는데 안 돌아가요" 단계의 트러블슈팅에 초점을 맞췄습니다. 코드를 짜본 적이 없어도 됩니다.
DeepFaceLab 에러를 만나기 전에 알아둘 것
DeepFaceLab은 NVIDIA 그래픽카드(GPU)를 쓰는 윈도우 환경에 강하게 의존하는 도구입니다. 그래서 에러의 70~80%는 사실 프로그램 자체보다 GPU·드라이버·메모리 문제입니다.
본격적인 에러 분석에 들어가기 전에 자기 환경을 한 번 점검해두면 시간을 많이 아낄 수 있습니다.
| 확인 항목 | 권장 사양 (글 작성 시점 기준) |
|---|---|
| GPU | NVIDIA RTX 시리즈, VRAM 8GB 이상 권장 |
| 드라이버 | 최신 NVIDIA Studio 또는 Game Ready |
| OS | 윈도우 10/11 64비트 |
| 디스크 여유 | 최소 50GB (작업물 누적 시 더 필요) |
| 빌드 종류 | DirectX12 빌드 vs CUDA 빌드 구분 필요 |
특히 마지막 줄이 중요합니다. DeepFaceLab은 빌드가 두 종류라서, 자기 GPU에 안 맞는 빌드를 받으면 처음부터 실행이 안 됩니다. AMD·인텔 내장 그래픽이라면 DirectX12 빌드, NVIDIA RTX라면 CUDA 빌드를 받아야 합니다.
💡 저는 처음에 빌드를 헷갈려서 두 시간을 날렸습니다. 다운로드 페이지의 _build_ 표기를 꼭 확인하세요.
에러 1. CUDA 관련 메시지가 뜨면서 실행이 안 됩니다
Could not load library cudnn_cnn_infer64_8.dll 또는 CUDA error: no kernel image is available 같은 메시지가 대표적입니다.
이 에러는 GPU 드라이버와 DeepFaceLab이 기대하는 CUDA 버전이 어긋날 때 발생합니다. CUDA(쿠다)는 NVIDIA가 만든 GPU 연산 라이브러리인데, 버전이 조금만 안 맞아도 곧장 멈춥니다.
해결 순서는 이렇습니다.
- NVIDIA 공식 사이트에서 최신 Studio 드라이버를 받아 재설치
- DirectX12 빌드를 잘못 받지 않았는지 확인 (RTX 사용자라면 CUDA 빌드여야 함)
- 그래도 안 되면 한 단계 낮은 빌드(예: 이전 릴리스)로 다운그레이드
저는 RTX 40 시리즈에서 1번만으로 해결됐지만, 30 시리즈에서는 3번까지 가야 하는 경우도 있다고 합니다(공식 깃허브 이슈 기준).
에러 2. OOM, 메모리 부족으로 학습이 죽습니다
학습(train) 단계에서 가장 흔한 에러입니다. 콘솔에 OOM when allocating tensor 같은 줄이 뜨면 GPU 메모리(VRAM)가 부족해서 모델이 못 들어간 것입니다.
VRAM은 그래픽카드가 가진 전용 메모리입니다. 일반 RAM과는 별개라, 8GB짜리 카드면 모델·이미지·중간 계산 결과를 모두 8GB 안에 욱여넣어야 합니다.
해결책은 모델을 작게 만드는 것입니다.
batch_size: 8 → 4 → 2 (단계적으로 낮춤)
resolution: 256 → 224 → 192
dims (ae_dims, e_dims, d_dims): 기본값에서 -32씩 낮춤
위 값들은 학습 시작 시 콘솔이 물어보는 항목들입니다. 한 번에 다 줄이지 말고 batch_size부터 절반씩 줄여보는 게 가장 빠릅니다.
💡 학습 도중 다른 무거운 프로그램(브라우저에 탭 50개, 게임 등)을 닫기만 해도 1~2GB가 확보되어 살아나는 경우도 있습니다.
에러 3. 얼굴 추출이 0장으로 끝납니다
Extracted 0 faces 메시지가 뜨거나, data_dst/aligned 폴더가 텅 빈 채 작업이 끝나는 경우입니다.
원인은 보통 셋 중 하나입니다.
- 영상에서 프레임 추출이 먼저 안 됨 (data_dst 폴더 자체가 비어있음)
- 얼굴 검출기(S3FD, 기본 옵션)가 얼굴을 인식할 만큼 선명하지 않음
- 영상 코덱 문제로 OpenCV가 프레임을 못 읽음
순서대로 점검합니다. 먼저 workspace/data_dst 폴더에 PNG 이미지가 잔뜩 들어있는지 확인하세요. 비어있다면 2) extract images from video data_dst 단계를 다시 돌립니다.
이미지가 있는데도 추출이 0장이면 영상 자체가 너무 어둡거나 얼굴이 작은 경우입니다. 풀샷 위주 뮤직비디오를 그대로 넣으면 얼굴이 너무 작아 검출기가 무시해버리는 식이죠. 이때는 영상을 미리 잘라 클로즈업 위주로 만든 뒤 다시 시도합니다.
에러 4. 학습 중에 미리보기 창이 검게 나옵니다
학습은 도는 것 같은데 Preview 창이 새카맣고 loss 값만 깜빡이는 경우입니다.
이건 에러라기보다 초기 학습 단계의 정상 동작입니다. 모델이 무작위 가중치에서 시작하기 때문에 처음 수천 iteration(반복) 동안은 까만 화면이 정상입니다.
다만 30분~1시간이 지나도 계속 까맣다면 다음을 확인합니다.
- loss 값이 정말 줄어들고 있는지 (예: 1.5 → 1.3 → 1.1 식으로 감소)
- src/dst 데이터가 실제로 폴더에 있는지
- 학습률(learning rate) 옵션을 너무 낮게 설정하지 않았는지
저는 처음에 "왜 영원히 까맣지?" 하다가 loss가 0.0001씩 줄고 있는 걸 발견하고 그냥 두 시간 더 기다렸습니다. 결과는 정상이었습니다.
에러 5. ffmpeg 또는 동영상 합치기가 실패합니다
마지막 단계인 merger 또는 8) merged to mp4에서 죽는 경우입니다. ffmpeg returned non-zero exit code 같은 메시지가 흔합니다.
ffmpeg(에프에프엠펙)는 동영상을 자르고 합치는 오픈소스 프로그램으로, DeepFaceLab 안에 함께 들어있습니다. 이게 실패하는 이유는 대개 출력 경로 문제나 원본 영상 코덱 문제입니다.
확인 체크리스트입니다.
- ☐workspace 경로에 한글이나 공백이 들어있지 않은가
- ☐원본 영상 파일명이 'data_src.mp4' / 'data_dst.mp4' 인가
- ☐merged 폴더에 PNG 결과물이 실제로 쌓여있는가
- ☐디스크 여유 공간이 5GB 이상인가
특히 첫 번째가 함정입니다. D:\내 작업\딥페이크\workspace 처럼 한글·공백 경로면 ffmpeg가 자주 막힙니다. D:\dfl\workspace처럼 영문 단순 경로로 옮기면 해결되는 경우가 많습니다.
에러 6. xseg 마스크가 적용 안 되고 그대로 출력됩니다
XSeg(엑스세그)는 얼굴 가장자리를 정교하게 잘라내는 마스크 도구입니다. 이걸 학습시켰는데 결과물에 반영이 안 되는 경우가 있습니다.
원인은 단계 순서 누락입니다. XSeg는 다음 3단계를 모두 거쳐야 효과가 나옵니다.
| 단계 | 하는 일 | 자주 빼먹는 부분 |
|---|---|---|
| 1. 라벨링 | 몇 장에 마스크를 직접 그림 | 최소 50장 권장 |
| 2. XSeg 모델 학습 | 그린 마스크로 모델 훈련 | loss가 0.1 아래로 떨어질 때까지 |
| 3. apply | 학습된 모델을 전체 이미지에 적용 | 이 단계를 빼먹는 경우가 가장 많음 |
merger에서 learned-prd*learned-dst 모드로 설정해야 학습된 마스크가 실제로 쓰입니다. 기본값이 다른 모드라 그냥 돌리면 적용이 안 된 것처럼 보입니다.
에러 7. 결과물 얼굴이 흐릿하거나 깜빡입니다
엄밀히 말해 에러는 아니지만 가장 많이 받는 질문이라 같이 다룹니다. iter(반복 횟수)는 충분한데 결과가 뿌옇거나 프레임마다 얼굴이 떨리는 현상입니다.
원인은 보통 데이터셋 품질입니다. 모델이 아무리 좋아도 학습 재료가 부실하면 결과가 흐려집니다.
- src(소스) 얼굴이 1,000장 미만 → 최소 2,000~5,000장 권장
- 표정·각도 다양성 부족 (정면 사진만 있음)
- 조명 차이가 src와 dst 사이에 너무 큼
- iter을 너무 적게 돌림 (보통 RTX 4070 기준 100,000 iter 이상)
해상도를 올리고 싶다면 처음부터 res 256 이상으로 학습해야 합니다. 낮은 해상도 모델을 나중에 키울 수는 없습니다(공식 위키 기준).
에러 분석 흐름도
위 7가지를 만났을 때 어디부터 봐야 할지 헷갈리실 텐데, 단순한 흐름도로 정리하면 이렇습니다.
[에러 발생]
│
├─ 실행 자체가 안 됨? ─→ 빌드/드라이버 (에러 1)
│
├─ 학습 도중 멈춤? ─→ VRAM 부족 (에러 2)
│
├─ 추출이 0장? ─→ 데이터/검출기 (에러 3)
│
├─ 미리보기 검정? ─→ 그냥 더 기다림 (에러 4)
│
├─ 마지막 합치기 실패? ─→ 경로/ffmpeg (에러 5)
│
└─ 결과 품질 문제? ─→ 마스크/데이터셋 (에러 6, 7)
이 순서대로 체크하면 대부분의 막힘은 30분 안에 풀립니다.
마무리
DeepFaceLab은 무료 오픈소스인 만큼 친절한 한국어 안내가 거의 없습니다. 그래서 에러 메시지 한 줄 앞에서 막막해지는 일이 잦습니다.
오늘 다룬 7가지는 제가 직접 부딪혔거나, 깃허브·레딧 이슈에서 반복적으로 올라오는 단골 질문들입니다. 새로운 에러를 만났을 때도 GPU·메모리·경로·단계 누락 네 가지 카테고리를 떠올리면 80%는 자가 진단이 됩니다.
다음 작업에서는 메시지 전체를 그대로 검색창에 붙여넣어 보세요. DeepFaceLab 깃허브 issues 탭이 가장 정확한 1차 출처입니다. 영문이라도 번역기를 거치면 충분히 따라갈 수 있고, 그게 어렵다면 위 흐름도부터 다시 짚어보는 게 빠릅니다.
'AI & LLM > AI 도구 리뷰' 카테고리의 다른 글
| DeepFaceLab 학습이 느릴 때 — GPU·배치 최적화 7단계 (0) | 2026.07.06 |
|---|---|
| Gemini 3 컴퓨터 제어 사용법 — Claude와 뭐가 다른가 (0) | 2026.06.26 |
| Suno vs Udio 비교 — AI 음악 생성 입문자용 가이드 (0) | 2026.06.15 |
| 무료 AI 이미지 생성 도구 7선 가성비 비교 2026 (0) | 2026.06.14 |
| Notion AI vs ChatGPT, 문서 작업엔 뭐가 더 좋을까 (0) | 2026.06.08 |