> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comfy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# ComfyUI Wan2.1 Fun Control 동영상 예시

> 이 가이드에서는 ComfyUI에서 Wan2.1 Fun Control을 사용해 제어 동영상을 생성하는 방법을 보여줍니다.

## Wan2.1-Fun-Control 소개

**Wan2.1-Fun-Control**은 알리바바 팀이 개발한 오픈소스 영상 생성 및 제어 프로젝트입니다. 이 프로젝트는 혁신적인 제어 코드 메커니즘과 딥러닝, 다중 모달 조건 입력을 결합해 미리 설정된 제어 조건에 부합하는 고품질 영상을 생성합니다. 특히, 다중 모달 제어 조건을 통해 생성된 영상 콘텐츠를 정밀하게 유도하는 데 중점을 두고 있습니다.

현재 Fun Control 모델은 다양한 제어 조건을 지원하며, 여기에는 **Canny(선화), Depth, OpenPose(인간 자세), MLSD(기하학적 경계), 궤적 제어**가 포함됩니다. 또한 이 모델은 512, 768, 1024 해상도를 지원하며 초당 16프레임으로 최대 81프레임(약 5초) 길이의 영상을 생성할 수 있습니다.

모델 버전:

* **1.3B** 경량형: 로컬 배포와 빠른 추론에 적합하며 **낮은 VRAM 요구 사항**
* **14B** 고성능형: 모델 크기가 32GB 이상으로 더 나은 결과를 제공하지만 **높은 VRAM 요구 사항**

관련 코드 저장소는 다음과 같습니다:

* [Wan2.1-Fun-1.3B-Control](https://huggingface.co/alibaba-pai/Wan2.1-Fun-1.3B-Control)
* [Wan2.1-Fun-14B-Control](https://huggingface.co/alibaba-pai/Wan2.1-Fun-14B-Control)
* 코드 저장소: [VideoX-Fun](https://github.com/aigc-apps/VideoX-Fun)

ComfyUI는 현재 Wan2.1 Fun Control 모델을 **네이티브로 지원**합니다. 이 튜토리얼을 시작하기 전에 ComfyUI를 업데이트하여 [이 커밋](https://github.com/Comfy-Org/ComfyUI/commit/3661c833bcc41b788a7c9f0e7bc48524f8ee5f82) 이후 버전을 사용하고 있는지 확인하세요.

이 가이드에서는 두 가지 워크플로우를 제공합니다:

1. 네이티브 Comfy Core 노드만을 사용하는 워크플로우
2. 커스텀 노드를 사용하는 워크플로우

<Tip>
  현재 영상 지원을 위한 네이티브 노드의 한계로 인해, 네이티브 전용 워크플로우는 사용자가 커스텀 노드 설치 없이도 작업을 완료할 수 있도록 보장합니다. 하지만 커스텀 노드 없이는 영상 생성 시 좋은 사용자 경험을 제공하기 어렵다는 점을 발견했으므로, 이 가이드에서는 두 가지 버전의 워크플로우를 모두 제공합니다.
</Tip>

<Tip>
  <Tabs>
    <Tab title="휴대용 또는 자체 배포 사용자">
      ComfyUI가 최신 버전으로 업데이트되었는지 확인하세요.

      * [ComfyUI 다운로드](https://www.comfy.org/download)
      * [업데이트 가이드](/ko/installation/update_comfyui)

      이 가이드의 워크플로우는 [워크플로우 템플릿](/ko/interface/features/template)에서 확인할 수 있습니다.
      템플릿에서 찾을 수 없다면, 귀하의 ComfyUI가 오래된 버전일 수 있습니다. (데스크톱 버전의 업데이트는 다소 지연될 수 있습니다)

      워크플로우를 로드할 때 노드가 누락되는 경우, 가능한 원인:

      1. 최신 ComfyUI 버전(야간 빌드)을 사용하고 있지 않음
      2. 일부 노드가 시작 시 가져오기에 실패함
    </Tab>

    <Tab title="데스크톱 또는 클라우드 사용자">
      * 데스크톱 버전은 ComfyUI 안정판 기반으로, 새로운 데스크톱 안정판이 출시되면 자동으로 업데이트됩니다.
      * [클라우드](https://cloud.comfy.org)는 ComfyUI 안정판 출시 후 업데이트됩니다.

      따라서 이 문서에서 핵심 노드가 누락된 것을 발견했다면, 그 이유는 새로운 핵심 노드가 아직 최신 안정판에 공개되지 않았기 때문일 수 있습니다. 다음 안정판 출시를 기다려 주세요.
    </Tab>
  </Tabs>
</Tip>

## 모델 설치

이 모델들은 한 번만 설치하면 됩니다. 워크플로우 이미지에도 모델 다운로드 정보가 포함되어 있으므로, 원하는 방식으로 다운로드할 수 있습니다.

다음 모델들은 [Wan\_2.1\_ComfyUI\_repackaged](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged) 및 [Wan2.1-Fun](https://huggingface.co/collections/alibaba-pai/wan21-fun-67e4fb3b76ca01241eb7e334)에서 찾을 수 있습니다.

해당 링크를 클릭해 다운로드하세요. 이전에 Wan 관련 워크플로우를 사용한 적이 있다면 **Diffusion 모델**만 다운로드하면 됩니다.

**Diffusion 모델** - 1.3B 또는 14B 중 선택하세요. 14B 버전은 파일 크기가 더 크고 (32GB), VRAM 요구 사항도 높습니다:

* [wan2.1\_fun\_control\_1.3B\_bf16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_fun_control_1.3B_bf16.safetensors?download=true)
* [Wan2.1-Fun-14B-Control](https://huggingface.co/alibaba-pai/Wan2.1-Fun-14B-Control/blob/main/diffusion_pytorch_model.safetensors?download=true): 다운로드 후 `Wan2.1-Fun-14B-Control.safetensors`로 이름 변경

**텍스트 인코더** - 다음 모델 중 하나를 선택하세요 (fp16 정밀도는 파일 크기가 더 크고 성능 요구 사항도 높습니다):

* [umt5\_xxl\_fp16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/text_encoders/umt5_xxl_fp16.safetensors?download=true)
* [umt5\_xxl\_fp8\_e4m3fn\_scaled.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors?download=true)

**VAE**

* [wan\_2.1\_vae.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/vae/wan_2.1_vae.safetensors?download=true)

**CLIP Vision**

* [clip\_vision\_h.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/clip_vision/clip_vision_h.safetensors?download=true)

파일 저장 위치:

```
📂 ComfyUI/
├── 📂 models/
│   ├── 📂 diffusion_models/
│   │   └── wan2.1_fun_control_1.3B_bf16.safetensors
│   ├── 📂 text_encoders/
│   │   └─── umt5_xxl_fp8_e4m3fn_scaled.safetensors
│   └── 📂 vae/
│   │   └── wan_2.1_vae.safetensors
│   └── 📂 clip_vision/
│       └──  clip_vision_h.safetensors                 
```

## ComfyUI 네이티브 워크플로우

이 워크플로우에서는 현재 `Load Image` 노드가 mp4 형식을 지원하지 않기 때문에 **WebP 형식**으로 변환된 영상을 사용합니다. 또한 원본 영상을 전처리하기 위해 **Canny Edge**를 사용합니다. 많은 사용자가 커스텀 노드를 설치할 때 설치 실패와 환경 문제를 겪기 때문에, 이번 버전의 워크플로우는 오직 네이티브 노드만을 사용해 더욱 원활한 경험을 보장합니다.

강력한 기능을 제공하는 ComfyUI 저자분들께 감사드립니다. 관련 버전을 직접 확인하고 싶다면 [커스텀 노드를 사용한 워크플로우](#workflow-using-custom-nodes)를 참조하세요.

### 1. 워크플로우 파일 다운로드

#### 1.1 워크플로우 파일

아래 이미지를 다운로드해 ComfyUI로 드래그하여 워크플로우를 불러오세요:

![Wan2.1 Fun Control 네이티브 워크플로우](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/wan2.1_fun_control_native.webp)

#### 1.2 입력 이미지 및 영상 다운로드

다음 이미지와 영상을 다운로드해 입력으로 사용하세요:

![입력 참조 이미지](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/input/01-portrait_remix.png)

![입력 참조 영상](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/input/01-portrait_video.webp)

### 2. 워크플로우 단계별 완료

<img src="https://mintcdn.com/dripart/SIDaLac8vBogzwm7/images/tutorial/video/wan/fun_control_native_flow_diagram.png?fit=max&auto=format&n=SIDaLac8vBogzwm7&q=85&s=97774a50d0e95007c34d94a6eb2d9580" alt="Wan2.1 Fun Control 워크플로우 단계" width="2201" height="1907" data-path="images/tutorial/video/wan/fun_control_native_flow_diagram.png" />

1. `Load Diffusion Model` 노드가 `wan2.1_fun_control_1.3B_bf16.safetensors`를 로드했는지 확인하세요.
2. `Load CLIP` 노드가 `umt5_xxl_fp8_e4m3fn_scaled.safetensors`를 로드했는지 확인하세요.
3. `Load VAE` 노드가 `wan_2.1_vae.safetensors`를 로드했는지 확인하세요.
4. `Load CLIP Vision` 노드가 `clip_vision_h.safetensors`를 로드했는지 확인하세요.
5. 시작 프레임을 `Load Image` 노드에 업로드하세요 (이름을 `Start_image`로 변경).
6. 제어 영상을 두 번째 `Load Image` 노드에 업로드하세요. 참고: 이 노드는 현재 mp4를 지원하지 않으며, WebP 영상만 지원합니다.
7. (선택사항) 프롬프트를 수정하세요 (영어와 중국어 모두 지원).
8. (선택사항) `WanFunControlToVideo`에서 영상 크기를 조정해 너무 큰 크기를 피하세요.
9. `Run` 버튼을 클릭하거나 단축키 `Ctrl(cmd) + Enter`를 사용해 영상 생성을 실행하세요.

### 3. 사용 시 주의사항

* `WanFunControlToVideo` 노드에 제어 영상과 같은 수의 프레임을 입력해야 하므로, 지정한 프레임 수가 실제 제어 영상 프레임보다 많으면 초과한 프레임은 제어 조건에 맞지 않는 장면이 표시될 수 있습니다. 이 문제는 [커스텀 노드를 사용한 워크플로우](#workflow-using-custom-nodes)에서 해결하겠습니다.
* 너무 큰 크기를 설정하지 마세요. 샘플링 과정이 매우 오래 걸릴 수 있습니다. 먼저 작은 이미지를 생성한 후 확대해보세요.
* 이 워크플로우를 기반으로 상상력을 발휘해 텍스트-to-image나 다른 유형의 워크플로우를 추가해 직접 텍스트-to-video 생성이나 스타일 전송을 구현해보세요.
* [ComfyUI-comfyui\_controlnet\_aux](https://github.com/Fannovel16/comfyui_controlnet_aux)와 같은 도구를 사용해 더욱 풍부한 제어 옵션을 활용하세요.

## 커스텀 노드를 사용한 워크플로우

다음 두 가지 커스텀 노드를 설치해야 합니다:

* [ComfyUI-VideoHelperSuite](https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite)
* [ComfyUI-comfyui\_controlnet\_aux](https://github.com/Fannovel16/comfyui_controlnet_aux)

[ComfyUI Manager](https://github.com/Comfy-Org/ComfyUI-Manager)를 사용해 누락된 노드를 설치하거나 각 커스텀 노드 패키지의 설치 지침을 따르세요.

### 1. 워크플로우 파일 다운로드

#### 1.1 워크플로우 파일

아래 이미지를 다운로드해 ComfyUI로 드래그하여 워크플로우를 불러오세요:

![워크플로우 파일](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/wan2.1_fun_control_use_custom_nodes.webp)

<Note>
  영상 파일의 용량이 크므로, [여기](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/wan2.1_fun_control_use_custom_nodes.json)를 클릭해 JSON 형식의 워크플로우 파일을 다운로드할 수도 있습니다.
</Note>

#### 1.2 입력 이미지 및 영상 다운로드

다음 이미지와 영상을 다운로드해 입력으로 사용하세요:
![입력 참조 이미지](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/input/02-robot's_eye.png)

<video controls className="w-full aspect-video" src="https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/wan2.1_fun_control/input/02-man's_eye.mp4" />

### 2. 워크플로우 단계별 완료

<img src="https://mintcdn.com/dripart/SIDaLac8vBogzwm7/images/tutorial/video/wan/fun_control_using_custom_nodes_flow_diagram.png?fit=max&auto=format&n=SIDaLac8vBogzwm7&q=85&s=b22315f2f052e9196bd49b3d95a983f5" alt="Wan2.1 Fun Control 커스텀 노드 사용 워크플로우 단계" width="2201" height="1907" data-path="images/tutorial/video/wan/fun_control_using_custom_nodes_flow_diagram.png" />

> 모델 부분은 기본적으로 동일합니다. 이미 네이티브 전용 워크플로우를 경험했다면 해당 이미지를 바로 업로드해 실행할 수 있습니다.

1. `Load Diffusion Model` 노드가 `wan2.1_fun_control_1.3B_bf16.safetensors`를 로드했는지 확인하세요.
2. `Load CLIP` 노드가 `umt5_xxl_fp8_e4m3fn_scaled.safetensors`를 로드했는지 확인하세요.
3. `Load VAE` 노드가 `wan_2.1_vae.safetensors`를 로드했는지 확인하세요.
4. `Load CLIP Vision` 노드가 `clip_vision_h.safetensors`를 로드했는지 확인하세요.
5. 시작 프레임을 `Load Image` 노드에 업로드하세요.
6. mp4 형식의 영상을 `Load Video(Upload)` 커스텀 노드에 업로드하세요. 참고: 워크플로우는 기본 `frame_load_cap`를 조정했습니다.
7. 현재 이미지의 경우 `DWPose Estimator`는 `detect_face` 옵션만 사용합니다.
8. (선택사항) 프롬프트를 수정하세요 (영어와 중국어 모두 지원).
9. (선택사항) `WanFunControlToVideo`에서 영상 크기를 조정해 너무 큰 크기를 피하세요.
10. `Run` 버튼을 클릭하거나 단축키 `Ctrl(cmd) + Enter`를 사용해 영상 생성을 실행하세요.

### 3. 워크플로우 참고사항

ComfyUI 커뮤니티의 저자들이 제공하는 커스텀 노드 패키지 덕분에:

* 이 예시에서는 `Load Video(Upload)`를 사용해 mp4 영상을 지원합니다.
* `Load Video(Upload)`에서 얻은 `video_info`를 통해 출력 영상의 동일한 `fps`를 유지할 수 있습니다.
* `DWPose Estimator`를 `ComfyUI-comfyui_controlnet_aux` 노드 패키지의 다른 전처리기로 교체할 수 있습니다.
* 프롬프트는 다국어를 지원합니다.

## 사용 팁

<img src="https://mintcdn.com/dripart/SIDaLac8vBogzwm7/images/tutorial/video/wan/apply_multi_control_videos.jpg?fit=max&auto=format&n=SIDaLac8vBogzwm7&q=85&s=7bb51781350a318a61068b1b369b816f" alt="멀티 제어 영상 적용" width="1726" height="1156" data-path="images/tutorial/video/wan/apply_multi_control_videos.jpg" />

* 유용한 팁은 여러 이미지 전처리 기법을 결합한 후 `Image Blend` 노드를 사용해 동시에 여러 제어 방법을 적용하는 목표를 달성할 수 있다는 것입니다.

* `ComfyUI-VideoHelperSuite`의 `Video Combine` 노드를 사용해 영상을 mp4 형식으로 저장할 수 있습니다.

* 현재 워크플로우를 **mp4**에 내장하는 것을 지원하지 않으며, 일부 커스텀 노드 역시 워크플로우 내장이 불가능할 수 있습니다. 영상에 워크플로우를 유지하려면 `SaveAnimatedWEBP` 노드를 선택합니다.

* `WanFunControlToVideo` 노드에서 `control_video`는 필수는 아니므로, 때때로 제어 영상을 생략하고 처음에 320x320처럼 아주 작은 영상을 생성한 후 이를 제어 영상 입력으로 사용해 일관된 결과를 얻을 수 있습니다.

* [ComfyUI-WanVideoWrapper](https://github.com/kijai/ComfyUI-WanVideoWrapper)

* [ComfyUI-KJNodes](https://github.com/kijai/ComfyUI-KJNodes)
