Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@
"group": "Wan2.1",
"pages": [
"tutorials/video/wan/wan-video",
"tutorials/video/wan/wan-causal-forcing",
"tutorials/video/wan/vace",
"tutorials/video/wan/wan-move",
"tutorials/video/wan/wan-alpha",
Expand Down Expand Up @@ -2691,6 +2692,7 @@
"group": "Wan2.1",
"pages": [
"zh/tutorials/video/wan/wan-video",
"zh/tutorials/video/wan/wan-causal-forcing",
"zh/tutorials/video/wan/vace",
"zh/tutorials/video/wan/wan-move",
"zh/tutorials/video/wan/wan-alpha",
Expand Down Expand Up @@ -5122,6 +5124,8 @@
"group": "Wan2.1",
"pages": [
"ja/tutorials/video/wan/wan-video",
"ja/tutorials/video/wan/wan-causal-forcing",
"ko/tutorials/video/wan/wan-causal-forcing",
"ja/tutorials/video/wan/vace",
"ja/tutorials/video/wan/wan-move",
"ja/tutorials/video/wan/wan-alpha",
Expand Down Expand Up @@ -7583,4 +7587,4 @@
"destination": "/zh/:slug*"
}
]
}
}
116 changes: 116 additions & 0 deletions ja/tutorials/video/wan/wan-causal-forcing.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
---
title: "Causal Forcing 画像から動画 ComfyUI ワークフロー例"
description: "Wan2.1 の Causal Forcing または Causal Forcing++ を使用して、画像から動画を生成します。わずか 1 ステップの推論で滑らかで時間的に一貫性のある動画を実現します。"
sidebarTitle: "Causal Forcing I2V"
---

import UpdateReminder from '/snippets/ja/tutorials/update-reminder.mdx'

**Causal Forcing(因果強制)** は、推論時に **リカレント条件付け** を適用する動画生成技術です。各フレームが生成されるたびにモデルにフィードバックされ、次のフレームを予測するために使用されます。たった **1 〜 4 ステップの推論** で、1 枚の開始画像から滑らかで時間的に一貫性のある動画を生成できます。

このワークフローは **Wan2.1** をベースにしており、**Causal Forcing**(標準)と **Causal Forcing++**(拡張)の両方のモードをサポートしています。

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/video_causal_forcing_i2v-1.webp" alt="Causal Forcing 画像から動画ワークフロー" />

<UpdateReminder />

<CardGroup cols={1}>
<Card title="ワークフローをダウンロード" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_causal_forcing_i2v.json">
JSON をダウンロード、またはテンプレートライブラリで "Causal Forcing" を検索
</Card>
</CardGroup>

## 仕組み

標準的な動画生成がすべてのフレームを並列処理するのに対し、Causal Forcing は動画生成を **逐次プロセス** として扱います:

1. モデルは入力画像を **最初のフレーム** として受け取る
2. 前のフレームに条件付けされて次のフレームを生成する
3. 生成されたフレームが次の予測の入力となる
4. 目的のフレーム数に達するまで繰り返す

このリカレントアプローチにより **強い時間的一貫性** が生まれ、わずか 1〜4 ステップの推論で高品質な結果が得られます。

<Card title="サブグラフについて" icon="book-open" href="/ja/interface/features/subgraph">
このワークフローはサブグラフノードを使用してモジュール化された処理を行います。サブグラフのドキュメントを参照して、ワークフローをカスタマイズおよび拡張する方法を学んでください。
</Card>

### Causal Forcing と Causal Forcing++

| モード | 説明 |
|---|---|
| **Causal Forcing** | 標準のリカレント条件付け。2〜4 ステップで良好な品質。 |
| **Causal Forcing++** | 拡張モード。追加の条件付けにより時間的コヒーレンスが向上。1〜2 ステップでも良好。 |

## ワークフローの使用

### 入力

ワークフローは 1 枚の入力画像(最初のフレーム)と、動画内容を説明するテキストプロンプト(オプション)を受け付けます。

| 設定 | 説明 |
|---|---|
| **first_frame**(必須) | 動画の開始画像。**LoadImage** ノードで PNG/JPG を読み込みます。 |
| **positive_prompt**(オプション) | 希望する動画内容のテキスト説明。空欄の場合は条件付けなし。 |
| **duration**(オプション) | 生成するフレーム数。デフォルトはモデルが期待する出力フレーム数。 |

### WAN I2V サブグラフパラメータ

これらのパラメータはブループリントサブグラフノード上で直接操作できます:

| パラメータ | デフォルト | 説明 |
|---|---|---|
| `unet_name` | — | 使用する Wan2.1 I2V モデルチェックポイント |
| `clip_name` | — | プロンプト用の CLIP / テキストエンコーダーモデル |
| `vae_name` | — | エンコード/デコード用の VAE モデル |
| `width` | — | 出力動画の幅 |
| `height` | — | 出力動画の高さ |
| `noise_seed` | — | 再現性のためのシード値 |

## 実行手順

1. **画像を読み込む** — **LoadImage** ノードで開始フレームを読み込みます
2. **プロンプトを入力**(オプション)— 希望する動画内容を記述します
3. **フレーム数を設定** — 生成するフレーム数を指定します
4. **モデルを選択** — Wan2.1 I2V チェックポイント、CLIP、VAE を選択します
5. **モードを選択** — Causal Forcing または Causal Forcing++
6. **実行** — フレームが逐次生成され `ComfyUI/output/` に保存されます

## モデルダウンロード

Wan2.1 I2V モデルと必要なファイルをダウンロードします。対応する `models/` サブディレクトリに配置してください。

### Wan2.1 I2V

<CardGroup cols={2}>
<Card title="Wan2.1 I2V 14B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_i2v_480p_14B_fp16.safetensors?download=true">
wan2.1_i2v_480p_14B_fp16.safetensors — Wan2.1 I2V 14B チェックポイント
</Card>
<Card title="Wan2.1 I2V 1.3B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_t2v_1.3B_fp16.safetensors?download=true">
wan2.1_t2v_1.3B_fp16.safetensors — Wan2.1 1.3B チェックポイント(最小 8GB VRAM)
</Card>
</CardGroup>

### CLIP と VAE

<CardGroup cols={2}>
<Card title="CLIP (google-bert)" icon="download" href="https://huggingface.co/google-bert/bert-base-uncased/resolve/main/model.safetensors">
google-bert/bert-base-uncased — CLIP テキストエンコーダー
</Card>
<Card title="VAE (Wan2.1)" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/vae/Wan2.1_VAE_bf16.safetensors?download=true">
Wan2.1_VAE_bf16.safetensors — Wan2.1 VAE
</Card>
</CardGroup>

### モデル保存場所

```
📂 ComfyUI/
├── 📂 models/
│ ├── 📂 diffusion_models/
│ │ └── wan2.1_i2v_480p_14B_fp16.safetensors(または 1.3B 版)
│ ├── 📂 text_encoders/
│ │ └── bert-base-uncased(フォルダ、model.safetensors を含む)
│ └── 📂 vae/
│ └── Wan2.1_VAE_bf16.safetensors
```
116 changes: 116 additions & 0 deletions ko/tutorials/video/wan/wan-causal-forcing.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
---
title: "Causal Forcing I2V ComfyUI 워크플로우 예제"
description: "Causal Forcing 또는 Causal Forcing++와 Wan2.1을 사용하여 이미지에서 비디오를 생성합니다 — 단 1회의 추론 단계로 부드럽고 시간적으로 일관된 비디오 구현"
sidebarTitle: "Causal Forcing I2V"
---

import UpdateReminder from '/snippets/ko/tutorials/update-reminder.mdx'

**Causal Forcing**은 추론 중 **반복적 조건화**를 적용하는 비디오 생성 기술로, 생성된 각 프레임이 모델에 다시 입력되어 다음 프레임을 예측합니다. 이를 통해 단일 시작 이미지에서 **1~4회의 추론 단계**만으로 부드럽고 시간적으로 일관된 비디오를 생성할 수 있습니다.

이 워크플로우는 **Wan2.1**을 사용하며, **Causal Forcing**(표준) 및 **Causal Forcing++**(향상) 모드를 모두 지원합니다.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/video_causal_forcing_i2v-1.webp" alt="Causal Forcing I2V 워크플로우" />

<UpdateReminder />

<CardGroup cols={1}>
<Card title="워크플로우 다운로드" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_causal_forcing_i2v.json">
JSON 다운로드 또는 템플릿 라이브러리에서 "Causal Forcing" 검색
</Card>
</CardGroup>

## 작동 방식

모든 프레임을 병렬로 처리하는 표준 비디오 생성과 달리, Causal Forcing은 비디오 생성을 **순차적 프로세스**로 처리합니다:

1. 모델이 입력 이미지를 **첫 번째 프레임**으로 사용
2. 이전 프레임을 조건으로 다음 프레임 생성
3. 각 새 프레임이 다음 예측의 입력이 됨
4. 원하는 프레임 수만큼 반복

이 반복적 접근 방식은 **강력한 시간적 일관성**을 만들어냅니다 — 각 프레임이 자연스럽게 이전 프레임에서 이어지며 — 매우 적은 추론 단계(1~4회)로도 고품질 결과를 생성할 수 있습니다.

<Card title="서브그래프 알아보기" icon="book-open" href="/ko/interface/features/subgraph">
이 워크플로우는 모듈식 처리를 위해 서브그래프 노드를 사용합니다. 서브그래프 문서를 확인하여 워크플로우를 사용자 정의하고 확장하는 방법을 알아보세요.
</Card>

### Causal Forcing vs Causal Forcing++

| 모드 | 설명 |
|---|---|
| **Causal Forcing** | 표준 반복 조건화. 2~4단계로 양호한 품질. |
| **Causal Forcing++** | 향상된 시간적 일관성을 위해 추가 조건화를 적용하는 향상 모드. 1~2단계만으로도 잘 작동. |

## 워크플로우 사용

### 입력

워크플로우는 단일 입력 이미지(첫 번째 프레임)와 원하는 비디오 콘텐츠를 설명하는 텍스트 프롬프트(선택사항)를 받습니다.

| 설정 | 설명 |
|---|---|
| **first_frame** (필수) | 비디오의 시작 이미지. **LoadImage** 노드를 통해 PNG/JPG 로드. |
| **positive_prompt** (선택사항) | 원하는 비디오 콘텐츠의 텍스트 설명. 조건화가 필요 없으면 비워둠. |
| **duration** (선택사항) | 생성할 프레임 수. 기본값: 모델 예상 출력의 프레임 수. |

### WAN I2V 서브그래프 매개변수

블루프린트 서브그래프 노드에서 제어 가능한 매개변수:

| 매개변수 | 기본값 | 설명 |
|---|---|---|
| `unet_name` | — | 사용할 Wan2.1 I2V 모델 체크포인트 |
| `clip_name` | — | 프롬프트용 CLIP / 텍스트 인코더 모델 |
| `vae_name` | — | 인코딩/디코딩용 VAE 모델 |
| `width` | — | 출력 비디오 너비 |
| `height` | — | 출력 비디오 높이 |
| `noise_seed` | — | 재현성을 위한 시드 |

## 실행 단계

1. **이미지 로드** — **LoadImage** 노드를 사용하여 시작 프레임 로드
2. **프롬프트 작성** (선택사항) — 원하는 비디오 콘텐츠 설명
3. **길이 설정** — 생성할 프레임 수
4. **모델 선택** — Wan2.1 I2V 체크포인트, CLIP 및 VAE 선택
5. **모드 선택** — Causal Forcing 또는 Causal Forcing++ (서브그래프 내부 구성 또는 사용 가능한 Causal Forcing 전용 입력을 통해 설정)
6. **실행** — 프레임이 순차적으로 생성되어 `ComfyUI/output/`에 저장됩니다

## 모델 다운로드

Wan2.1 I2V 모델과 필요한 파일을 다운로드합니다. 해당 `models/` 하위 디렉토리에 배치하세요.

### Wan2.1 I2V

<CardGroup cols={2}>
<Card title="Wan2.1 I2V 14B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_i2v_480p_14B_fp16.safetensors?download=true">
wan2.1_i2v_480p_14B_fp16.safetensors — Wan2.1 I2V 14B 체크포인트
</Card>
<Card title="Wan2.1 I2V 1.3B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_t2v_1.3B_fp16.safetensors?download=true">
wan2.1_t2v_1.3B_fp16.safetensors — Wan2.1 1.3B 체크포인트 (최소 8GB VRAM)
</Card>
</CardGroup>

### CLIP 및 VAE

<CardGroup cols={2}>
<Card title="CLIP (google-bert)" icon="download" href="https://huggingface.co/google-bert/bert-base-uncased/resolve/main/model.safetensors">
google-bert/bert-base-uncased — CLIP 텍스트 인코더
</Card>
<Card title="VAE (Wan2.1)" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/vae/Wan2.1_VAE_bf16.safetensors?download=true">
Wan2.1_VAE_bf16.safetensors — Wan2.1 VAE
</Card>
</CardGroup>

### 모델 저장 위치

```
📂 ComfyUI/
├── 📂 models/
│ ├── 📂 diffusion_models/
│ │ └── wan2.1_i2v_480p_14B_fp16.safetensors (또는 1.3B 변형)
│ ├── 📂 text_encoders/
│ │ └── bert-base-uncased (model.safetensors가 있는 폴더)
│ └── 📂 vae/
│ └── Wan2.1_VAE_bf16.safetensors
```
116 changes: 116 additions & 0 deletions tutorials/video/wan/wan-causal-forcing.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
---
title: "Causal Forcing I2V ComfyUI Workflow Example"
description: "Generate videos from images using Causal Forcing or Causal Forcing++ with Wan2.1 — achieving smooth, temporally consistent video in as few as 1 inference step."
sidebarTitle: "Causal Forcing I2V"
---

import UpdateReminder from '/snippets/tutorials/update-reminder.mdx'

**Causal Forcing** is a video generation technique that applies **recurrent conditioning** during inference, where each generated frame is fed back into the model to predict the next frame. This produces smooth, temporally consistent videos from a single start image in as few as **1 to 4 inference steps**.

This workflow uses **Wan2.1** and supports both **Causal Forcing** (standard) and **Causal Forcing++** (enhanced) modes.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/video_causal_forcing_i2v-1.webp" alt="Causal Forcing I2V workflow" />

<UpdateReminder />

<CardGroup cols={1}>
<Card title="Download Workflow" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_causal_forcing_i2v.json">
Download JSON or search "Causal Forcing" in Template Library
</Card>
</CardGroup>

## How it works

Unlike standard video generation which processes all frames in parallel, Causal Forcing treats video generation as a **sequential process**:

1. The model takes an input image as the **first frame**
2. It generates the next frame conditioned on the previous one
3. Each new frame becomes the input for the next prediction
4. This repeats for the desired number of frames

This recurrent approach creates **strong temporal consistency** — each frame naturally follows from the one before it — and can produce high-quality results with very few inference steps (1 to 4).

<Card title="Learn about Subgraph" icon="book-open" href="/interface/features/subgraph">
This workflow uses a Subgraph node for modular processing. Check out the Subgraph documentation to learn how to customize and extend the workflow.
</Card>

### Causal Forcing vs Causal Forcing++

| Mode | Description |
|---|---|
| **Causal Forcing** | Standard recurrent conditioning. Good quality with 2–4 steps. |
| **Causal Forcing++** | Enhanced mode that applies additional conditioning for better temporal coherence. Works well with just 1–2 steps. |

## Using the workflow

### Inputs

The workflow accepts a single input image (the first frame) and a text prompt describing the desired video content (optional).

| Setting | Description |
|---|---|
| **first_frame** (required) | The starting image for the video. Load a PNG/JPG via the **LoadImage** node. |
| **positive_prompt** (optional) | A text description of the desired video content. Leave empty for no conditioning. |
| **duration** (optional) | The number of frames to generate. Default: number of frames in the model's expected output. |

### WAN I2V subgraph parameters

These are exposed as controls on the blueprint subgraph node:

| Parameter | Default | Description |
|---|---|---|
| `unet_name` | — | The Wan2.1 I2V model checkpoint to use |
| `clip_name` | — | The CLIP / text encoder model for the prompt |
| `vae_name` | — | The VAE model for encoding/decoding |
| `width` | — | Output video width |
| `height` | — | Output video height |
| `noise_seed` | — | Seed for reproducibility |

## Steps to run

1. **Load an image** — use the **LoadImage** node to load your starting frame
2. **Write a prompt** (optional) — describe the desired video content
3. **Set duration** — how many frames to generate
4. **Select models** — choose Wan2.1 I2V checkpoint, CLIP, and VAE
5. **Choose mode** — Causal Forcing or Causal Forcing++ (set via the subgraph's internal configuration or a Causal Forcing-specific input if available)
6. **Run** — frames will be generated sequentially and saved to `ComfyUI/output/`

## Model downloads

Download the Wan2.1 I2V model and required files. Place them in the corresponding `models/` subdirectories.

### Wan2.1 I2V

<CardGroup cols={2}>
<Card title="Wan2.1 I2V 14B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_i2v_480p_14B_fp16.safetensors?download=true">
wan2.1_i2v_480p_14B_fp16.safetensors — Wan2.1 I2V 14B checkpoint
</Card>
<Card title="Wan2.1 I2V 1.3B" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/diffusion_models/wan2.1_t2v_1.3B_fp16.safetensors?download=true">
wan2.1_t2v_1.3B_fp16.safetensors — Wan2.1 1.3B checkpoint (8GB VRAM minimum)
</Card>
</CardGroup>

### CLIP and VAE

<CardGroup cols={2}>
<Card title="CLIP (google-bert)" icon="download" href="https://huggingface.co/google-bert/bert-base-uncased/resolve/main/model.safetensors">
google-bert/bert-base-uncased — CLIP text encoder
</Card>
<Card title="VAE (Wan2.1)" icon="download" href="https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/vae/Wan2.1_VAE_bf16.safetensors?download=true">
Wan2.1_VAE_bf16.safetensors — Wan2.1 VAE
</Card>
</CardGroup>

### Model storage location

```
📂 ComfyUI/
├── 📂 models/
│ ├── 📂 diffusion_models/
│ │ └── wan2.1_i2v_480p_14B_fp16.safetensors (or 1.3B variant)
│ ├── 📂 text_encoders/
│ │ └── bert-base-uncased (folder with model.safetensors)
│ └── 📂 vae/
│ └── Wan2.1_VAE_bf16.safetensors
```
Loading
Loading