D

Deep Research Archives

  • new
  • |
  • threads
  • |
  • comments
  • |
  • show
  • |
  • ask
  • |
  • jobs
  • |
  • submit
  • Guidelines
  • |
  • FAQ
  • |
  • Lists
  • |
  • API
  • |
  • Security
  • |
  • Legal
  • |
  • Contact
Search…
threads
submit
login
▲
Wan2.2 VAE 모델 채널 불일치 오류 해결 및 성능 최적화를 위한 심층 분석 보고서(docs.google.com)

1 point by slswlsek 4 weeks ago | flag | hide | 0 comments

Wan2.2 VAE 모델 채널 불일치 오류 해결 및 성능 최적화를 위한 심층 분석 보고서

Executive Summary

ComfyUI 워크플로우에서 Wan2.2 VAE 모델을 사용할 때 발생하는 RuntimeError 채널 불일치 오류는 모델과 VAE, 그리고 커스텀 노드 간의 버전 충돌로 인해 발생하는 일반적인 문제입니다. 이 오류의 핵심은 딥러닝 레이어가 요구하는 입력 채널 수(예: 48)와 실제 제공되는 채널 수(예: 16)가 달라 발생하는 호환성 문제입니다. Wan2.2 모델의 고압축 아키텍처는 특정 데이터 형식을 필요로 하며, 구버전의 ComfyUI나 비호환성 커스텀 노드, 또는 잘못된 VAE 파일이 사용될 경우 이러한 문제가 발생할 수 있습니다. 가장 확실한 해결책은 GitHub에서 최신 버전의 ComfyUI를 클린 설치하는 것입니다. 이 방법은 기존 설치에 남아있을 수 있는 불필요한 파일을 모두 제거하여 충돌 가능성을 원천 차단합니다. 또한, WanImageToVideo (Flow2)와 같은 특정 커스텀 노드를 수동으로 제거하는 것도 효과적인 해결책으로 보고되었습니다. 본 보고서는 이러한 오류의 기술적 원인을 심층적으로 분석하고, 문제 해결을 위한 단계별 지침뿐만 아니라 성능 최적화를 위한 실질적인 팁을 제공하여 사용자가 Wan2.2 모델을 안정적으로 활용할 수 있도록 돕는 데 목적이 있습니다.

  1. 문제 정의 및 배경

1.1. 사용자 질의 분석

사용자는 ComfyUI 환경에서 Wan2.2 VAE 모델을 사용할 때 RuntimeError: Given groups=1, weight of size [48, 48, 1, 1, 1], expected input[1, 2, 3, 4, 5] to have 48 channels, but got 16 channels instead라는 오류가 발생하는 문제에 대한 해결책을 요청했습니다. 이 오류 메시지는 VAE 내의 특정 합성곱(convolutional) 레이어가 [48, 48, 1, 1, 1] 크기의 가중치를 가지고 있으며, 이는 입력 텐서가 48개의 채널을 가져야 함을 의미합니다. 그러나 실제 입력된 텐서의 크기는 [1, 2, 3, 4, 5]으로, 채널 수가 16개에 불과하여 호환성 문제가 발생했음을 명확히 보여줍니다. 이 문제는 Wan2.2 모델과 관련된 커뮤니티 포럼에서 자주 보고되는 현상으로, 단순히 모델 파일이 손상된 문제가 아니라 워크플로우의 구성이나 모델 파일 간의 호환성 문제와 깊은 관련이 있습니다.6 따라서 이 보고서는 단순히 오류를 해결하는 방법을 제시하는 것을 넘어, 문제의 기술적 원인을 분석하고 장기적인 해결책을 제공하는 데 중점을 둡니다.

1.2. ComfyUI와 VAE의 역할 이해

ComfyUI의 역할: ComfyUI는 노드 기반의 워크플로우 인터페이스로, 사용자가 복잡한 딥러닝 모델의 데이터 흐름을 시각적으로 구성하고 조작할 수 있도록 설계되었습니다. 각 노드는 모델 로딩, 이미지 처리, 텍스트 인코딩, VAE 압축/복원 등 특정 연산을 수행하며, 노드 간에 전달되는 모든 데이터는 텐서(tensor)라는 다차원 배열 형식으로 표현됩니다. 따라서 노드 간에 텐서의 형태(shape)나 채널(channel) 수가 일치하지 않으면 오류가 발생하게 됩니다. VAE의 중요성: VAE(Variational Autoencoder)는 Wan2.2와 같은 영상 확산 모델에서 핵심적인 구성 요소입니다.8 영상의 고차원 픽셀 데이터를 압축하여 [frames, channels, width, height] 형태의 저차원 잠재 공간(latent space) 표현으로 변환하는 역할을 합니다. 이 과정은 GPU 메모리 사용량을 획기적으로 줄여, 일반 소비자용 GPU에서도 고해상도 및 고프레임 영상을 생성할 수 있도록 해줍니다. VAE의 성능과 효율성은 생성되는 영상의 품질과 직결되며, 본 오류는 바로 이 VAE의 인코딩 또는 디코딩 단계에서 발생합니다.

  1. 오류의 근본 원인 분석

2.1. channel mismatch 오류의 기술적 의미

channel mismatch 오류는 딥러닝 모델에서 텐서의 구조적 불일치로 인해 발생합니다. 텐서의 채널은 이미지의 경우 RGB와 같은 색상 정보를, 중간 레이어에서는 학습된 특징 맵의 깊이를 의미합니다. Wan2.2 모델은 영상 데이터에 대한 시공간적 정보를 처리하기 때문에 텐서는 일반적으로 [batch, channels, frames, width, height]와 같은 5D 구조를 가집니다. 오류 메시지 expected input to have 48 channels, but got 16 channels instead는 워크플로우의 한 노드가 16개의 채널을 가진 텐서를 출력했는데, 다음 노드인 VAE의 합성곱 레이어가 48개의 채널을 가진 입력 텐서를 기대하고 있었음을 의미합니다. 이러한 불일치는 두 가지 주요 원인으로 발생할 수 있습니다. 첫째, ComfyUI의 버전이 오래되었거나 커스텀 노드가 Wan2.2 모델의 최신 아키텍처를 정확하게 지원하지 못하는 경우입니다. 둘째, Wan2.2 모델(5B 또는 14B)과 호환되지 않는 VAE 모델 파일(wan2.1_vae 또는 wan2.2_vae)을 잘못 연결했을 때 발생할 수 있습니다. 커뮤니티에서 보고된 다른 오류 메시지(...have 36 channels, but got 32 channels instead)는 Wan2.2 모델의 다양한 변형에 따라 요구되는 채널 수가 다르며, 이 문제가 Wan2.2 모델의 특수성 때문에 발생하는 광범위한 현상임을 나타냅니다.6

2.2. Wan2.2 VAE 아키텍처와의 연관성

Wan2.2 VAE는 기존 VAE와 차별화되는 혁신적인 아키텍처를 채택하여 높은 압축률과 효율성을 달성했습니다. 고압축률 설계: Wan2.2 모델은 16x16x4라는 높은 시공간 압축률을 지원하는 Wan2.2-VAE를 사용합니다. 이 압축률은 영상의 픽셀 정보를 16배, 프레임 정보를 4배 압축하여 전체 데이터 크기를 크게 줄여줍니다.9 이러한 압축 기술은 VAE의 내부 레이어 구조와 텐서 채널의 수를 기존 Wan2.1 VAE 모델과 다르게 만들었을 가능성이 높습니다. 3D 그룹 인과적 합성곱(Group Causal Convolution): Wan2.2 VAE의 최신 버전은 3D 인과적 합성곱(causal convolution)과 Group Causal Convolution(GCConv) 모듈을 사용하여 시공간 압축을 최적화합니다.8 이 모듈은 프레임 그룹 내에서 표준 컨볼루션을 적용하여 프레임 간의 동등성을 확보하고, 그룹 간에는 인과적 패딩(causal padding)을 적용하여 가변 프레임 영상에 유연하게 대응합니다. 이러한 복잡한 구조는 텐서의 채널 처리에 고유한 로직을 적용하므로, 만약 ComfyUI가 Wan2.2 모델의 새로운 아키텍처를 인식하지 못하거나, 잘못된 버전의 VAE가 연결되면 채널 수의 불일치가 발생하게 됩니다. 근본 원인 분석: 사용자 질의의 48 채널과 16 채널 불일치 오류는 wan2.2 모델의 특정 버전이 16 채널을 출력하는 구형 VAE나 비호환성 노드와 함께 사용되었음을 시사합니다. 새로운 Wan2.2 VAE는 Wan2.2 모델의 새로운 아키텍처에 맞춰 48 채널과 같은 더 큰 채널 깊이를 요구하도록 설계되었을 가능성이 있습니다. 이 연결 관계는 단순히 VAE 파일을 바꾸는 것 이상의 근본적인 호환성 문제임을 보여주며, 모델의 버전과 워크플로우의 구성 요소를 정확하게 맞춰야만 오류를 해결할 수 있습니다.

  1. 해결책 및 워크플로우 최적화 방안

3.1. 권장 해결책: 클린 설치 및 업데이트 절차

ComfyUI의 업데이트 스크립트(update_comfyui.bat)만으로는 모든 문제를 해결하지 못하는 경우가 많습니다.6 이 스크립트는 모든 커스텀 노드의 복잡한 의존성 관계나 모델 파일 간의 충돌을 자동으로 해결하지 못할 수 있기 때문입니다. 따라서 가장 확실한 해결책은 다음과 같은 클린 설치 절차를 따르는 것입니다. 기존 설치 백업: 오류가 발생한 ComfyUI 설치 폴더에서 custom_nodes, models, output, input 등 중요한 데이터를 다른 안전한 위치에 복사합니다. 클린 설치: 기존 ComfyUI 폴더를 완전히 삭제합니다. 그 후, ComfyUI 공식 GitHub 저장소에서 최신 버전을 git clone 명령어를 사용하여 새로 다운로드합니다. 릴리스 버전 파일을 다운로드하는 것보다 git clone을 사용하는 것이 가장 확실한 방법입니다.6 최신 업데이트 실행: 새 ComfyUI 폴더에서 update_comfyui_and_python_dependencies.bat 스크립트를 실행하여 필수 Python 패키지 및 종속성을 최신 상태로 설치합니다. 모델 및 노드 재설치: 백업한 models 폴더에서 필요한 모델 파일들(VAE 포함)을 새 설치의 models 폴더로 옮깁니다. 커스텀 노드는 ComfyUI Manager를 통해 하나씩, 필요한 것만 재설치하는 것이 좋습니다.

3.2. 특정 커스텀 노드 제거를 통한 문제 해결

일부 커뮤니티 사용자들은 WanImageToVideo (Flow2)라는 특정 커스텀 노드가 Wan2.2 VAE와 충돌을 일으킨다고 보고했습니다.6 이 노드가 워크플로우에 직접 사용되지 않더라도, 폴더에 존재만으로도 오류를 유발할 수 있습니다. 해결 방법: ComfyUI 설치 폴더의 custom_nodes 디렉터리로 이동하여 WanImageToVideo (Flow2) 또는 flow2-wan-video라는 이름의 폴더를 찾아서 삭제하거나 다른 곳으로 이동시킵니다. 이후 ComfyUI를 재시작하여 오류가 해결되었는지 확인합니다.

3.3. VAE 버전 및 모델 파일 관리

Wan2.2 모델은 여러 변형이 존재하며, 각 모델은 호환되는 VAE가 다릅니다. 이 호환성 문제는 채널 불일치 오류의 직접적인 원인이 될 수 있습니다. 모델-VAE 호환성: Wan2.2 모델의 주요 변형은 5B와 14B입니다. 튜토리얼 및 커뮤니티 자료에 따르면, 14B 모델은 wan_2.1_vae.safetensors를 사용하는 반면, 5B 모델은 wan2.2_vae를 사용해야 합니다.11 데이터 타입 문제: fp8 또는 fp16과 같은 다른 모델 데이터 타입을 사용할 경우, 모델 로드 시 weight_dtype을 fp8_e4m3fn_fast와 같이 정확하게 지정해야 잠재적인 오류를 방지할 수 있습니다.12 아래 표는 Wan2.2 모델과 VAE 파일의 올바른 호환성 관계를 요약한 것입니다. Table 1: Wan2.2 모델-VAE 호환성 매트릭스

Wan2.2 모델 버전 권장 VAE 파일 데이터 타입 비고 wan2.2_i2v_high_noise_14B wan_2.1_vae.safetensors fp8 또는 fp16 튜토리얼에서 명시적으로 언급 11 wan2.2_i2v_low_noise_14B wan_2.1_vae.safetensors fp8 또는 fp16 튜토리얼에서 명시적으로 언급 11 wan2.2_ti2v_5B wan_2.2_vae.safetensors fp16 커뮤니티 가이드 및 공식 문서 참조 11

이 표는 사용자가 겪는 VAE 선택의 혼란을 해소하고, channel mismatch 오류를 해결하는 가장 중요한 첫 단계를 명확하게 안내하는 실질적인 가이드 역할을 수행합니다.

  1. 성능 향상을 위한 심화 팁

4.1. 메모리 부족(OOM) 오류 대응

Wan2.2 모델은 고해상도 영상 생성 시 24GB VRAM을 가진 RTX 3090과 같은 고성능 GPU에서도 Out-of-Memory (OOM) 오류나 속도 저하를 일으킬 수 있습니다.6 특히 VAE Decode 단계에서 메모리 사용량이 급증하여 문제가 발생한다는 보고가 있습니다.13 해결책: 해상도 및 프레임 조정: VRAM이 부족하다면 생성 해상도나 프레임 수를 줄이는 것이 가장 기본적인 해결책입니다.13 VAE Decode (Tiled) 노드 사용: ComfyUI의 VAE Decode (Tiled) 노드를 사용하면 영상을 여러 작은 타일로 나누어 순차적으로 처리하고 병합함으로써 VRAM 사용량을 크게 줄일 수 있습니다.15 모델 오프로딩: Force/Set VAE Device 노드를 사용해 VAE를 GPU 대신 CPU 메모리에서 처리하도록 설정할 수 있습니다. 이는 성능 저하가 발생하지만 OOM 오류를 효과적으로 방지할 수 있는 방법입니다.16

4.2. 속도 최적화 방안

Wan2.2 모델은 생성 시간이 매우 느리다는 사용자 보고가 있었습니다(예: 116프레임 영상 생성에 3시간 소요).6 이는 모델의 복잡성과 최적화되지 않은 기본 설정 때문일 수 있습니다. 가속화 기술: Triton 및 Sage attention과 같은 성능 가속화 기술을 활용하면 생성 시간을 극적으로 단축할 수 있습니다. 일부 사용자는 이 기술을 적용한 후 생성 시간이 40분에서 3분으로 줄었다고 보고했습니다.14 안정성과의 균형: 그러나 이러한 가속화 기술은 워크플로우의 안정성을 해칠 수 있으며, channel mismatch와 같은 새로운 오류를 유발할 가능성도 있습니다.6 따라서 사용자는 자신의 시스템과 워크플로우에 맞는 최적의 균형을 찾아야 합니다. 아래 표는 Wan2.2 모델 사용 중 발생할 수 있는 주요 문제와 그에 대한 해결책을 정리한 것입니다. Table 2: Wan2.2 오류 해결 및 최적화 요약

문제 유형 발생 원인 주요 증상 해결책 및 방안 채널 불일치

  • ComfyUI 코어, 모델, 노드 간 버전 불일치 - 특정 커스텀 노드(WanImageToVideo (Flow2))와의 충돌 RuntimeError:... expected input to have 48 channels, but got 16 channels instead
  1. ComfyUI 클린 설치 (가장 확실함) 6

  2. 충돌 노드 폴더 삭제 또는 이동 6

  3. 모델 버전에 맞는 VAE(wan2.1 또는 wan2.2) 사용 11 메모리 부족 (OOM)

  • 고해상도 또는 긴 프레임 생성 시 VRAM 초과 RuntimeError: CUDA out of memory
  1. 해상도 및 프레임 수 축소 14

  2. VAE Decode (Tiled) 노드 사용 15

  3. VAE를 CPU로 오프로드 16 느린 성능

  • 복잡한 모델 아키텍처 및 비효율적인 연산 생성 시간이 매우 길어짐 6
  1. Triton 및 Sage attention 설치를 통한 가속화 6

  2. 14B 모델보다 효율적인 5B 모델 사용 고려 10

  3. 결론 및 최종 권고

Wan2.2 VAE 모델 사용 시 발생하는 채널 불일치 오류는 ComfyUI의 오픈 소스 생태계가 가진 복잡성을 잘 보여주는 사례입니다. 끊임없이 발전하는 모델 아키텍처와 다양한 커스텀 노드, 그리고 ComfyUI 코어 간의 호환성을 유지하는 것은 사용자의 몫이며, 때로는 단순한 업데이트만으로는 해결되지 않는 문제가 발생할 수 있습니다. 본 분석을 통해 얻은 결론은 다음과 같습니다. 클린 설치 우선: Wan2.2 모델 관련 오류가 발생했을 때 가장 확실하고 안정적인 해결책은 기존 ComfyUI 설치를 백업한 후, 공식 GitHub에서 최신 버전을 새로 설치하는 것입니다. 이 과정에서 오래된 캐시나 호환되지 않는 파일이 완전히 제거되어 문제를 해결할 가능성이 가장 높습니다. 정확한 모델 조합: 사용 중인 Wan2.2 모델의 변형(5B 또는 14B)에 따라 호환되는 VAE(wan2.2_vae 또는 wan2.1_vae)를 정확하게 선택하는 것이 필수적입니다. 이 호환성 규칙을 따르지 않으면 채널 불일치 오류가 재발할 수 있습니다. 성능과 안정성의 균형: Triton이나 Sage attention과 같은 성능 가속화 기술은 생성 시간을 크게 단축할 수 있는 강력한 도구입니다. 그러나 이러한 기술은 워크플로우의 안정성을 해칠 수 있으므로, 사용자는 자신의 목적에 따라 성능과 안정성 사이에서 현명하게 선택해야 합니다. 이러한 지침을 따르면, 사용자는 Wan2.2 모델의 강력한 영상 생성 기능을 안정적으로 활용하고, 복잡한 ComfyUI 환경을 효과적으로 관리할 수 있을 것입니다. 참고 자료 Comfy-Org/Wan_2.2_ComfyUI_Repackaged · T2V works fine. I2V throws error:, 8월 17, 2025에 액세스, https://huggingface.co/Comfy-Org/Wan_2.2_ComfyUI_Repackaged/discussions/3 Default ComfyUI workflow for wan2.2 throws error - Reddit, 8월 17, 2025에 액세스, https://www.reddit.com/r/comfyui/comments/1mf18bt/default_comfyui_workflow_for_wan22_throws_error/ Improved Video VAE for Latent Video Diffusion Model - arXiv, 8월 17, 2025에 액세스, https://arxiv.org/html/2411.06449v1 Wan AI | Wan 2.2: Leading AI Video Generation Model, 8월 17, 2025에 액세스, https://wan.video/ Wan-AI/Wan2.2-TI2V-5B - Hugging Face, 8월 17, 2025에 액세스, https://huggingface.co/Wan-AI/Wan2.2-TI2V-5B Analyzing the Differences in Wan2.2 vs Wan 2.1 & Key aspects of the Update! - YouTube, 8월 17, 2025에 액세스, https://www.youtube.com/watch?v=Fs-gKrpm9nc NEW Wan 2.2 Video Generation Model in ComfyUI (I2V 14B FP8 ..., 8월 17, 2025에 액세스, https://www.nextdiffusion.ai/tutorials/exploring-the-new-wan22-image-to-video-generation-model-in-comfyui Wan2.2 Released : r/comfyui - Reddit, 8월 17, 2025에 액세스, https://www.reddit.com/r/comfyui/comments/1mbebol/wan22_released/ Wan2.2 Out of memory error using GGUF models : r/comfyui - Reddit, 8월 17, 2025에 액세스, https://www.reddit.com/r/comfyui/comments/1mdfz2q/wan22_out_of_memory_error_using_gguf_models/ new to comfy and to wan2.2, why does my output look so off : r/comfyui - Reddit, 8월 17, 2025에 액세스, https://www.reddit.com/r/comfyui/comments/1mctc6y/new_to_comfy_and_to_wan22_why_does_my_output_look/ New ComfyUI has native support for WAN2.2 FLF2V : r/StableDiffusion - Reddit, 8월 17, 2025에 액세스, https://www.reddit.com/r/StableDiffusion/comments/1mg7qun/new_comfyui_has_native_support_for_wan22_flf2v/

No comments to show