VACE
https://ali-vilab.github.io/VACE-Page/Project
https://arxiv.org/abs/2503.07598VACE: All-in-One Video Creation and Editing
https://huggingface.co/ali-vilab/VACE-Wan2.1-1.3B-Previewali-vilab/VACE-Wan2.1-1.3B-Preview
https://huggingface.co/Wan-AI/Wan2.1-VACE-1.3BWan-AI/Wan2.1-VACE-1.3B
https://huggingface.co/Wan-AI/Wan2.1-VACE-14BWan-AI/Wan2.1-VACE-14B
https://huggingface.co/Kijai/WanVideo_comfy/tree/mainComfyUI(Kijai)用のFP8/BF16 はこちら
kijai版は差分だけ取り出してる?のかサイズが通常モデルよりかなり小さくNativeノードと互換性が無いので注意
https://note.com/kongo_jun/n/nab9523289126代わりに他の(wan2.1 14B系)モデルと組み合わせれる?
https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/diffusion_modelsComfyUI(Native)用
https://huggingface.co/QuantStack/Wan2.1-VACE-14B-GGUFWan2.1-VACE-14B-GGUF
https://huggingface.co/ali-vilab/VACE-LTX-Video-0.9ali-vilab/VACE-LTX-Video-0.9
video2video/動画編集/reference2video(ControlNet的な)/inpainting-outpaintingを一つのモデルで行う統一フレームワーク
それぞれのタスクの組み合わせも自由
https://gyazo.com/2dad0b2e42b0a8a8e789c6699059daac
Video Condition Unit (VCU)
以下をまとめて管理するUI、入力されたものによってその後のタスクを振り分ける
フレーム列:RGB動画フレームまたはリファレンス画像
マスク列:バイナリマスク(“1”: 編集対象, “0”: そのまま保持)
テキスト:プロンプトや編集指示
e.g. reference2video
参照画像をフレーム列の先頭に挿入し、対応するマスクはすべて 0(保持すべきフレーム)に
Concept Decoupling
マスク情報を使って、Reactive Frames(編集すべき)とInactive Frames(保持すべき)の2つの潜在フレームに分割
Context Adapter
制御モジュールの挿入
モデルレイヤーを覗いてみた所、T2Vモデルの構造に"vace_*"と言ったレイヤーが追加されておりこのレイヤーがControlNet的なタスクを学習してT2Vに機能追加しているようだ(上記画像のContextBlockに該当すると思われる)
なのでkijai版モデルではこのレイヤーだけ抜き出して別モジュール化した?ようだ。
MoviiGen 1.1にvace機能を追加したMoviiGen1.1-VACE-GGUFはこのレイヤーを移植したのかな?morisoba65536.icon
これが使えるならSkyReels V2とかにもそのままレイヤー繋ぎこめば対応できそうな気もする?(未確認)
ControlNET+DF無制限ビデオ延長も出来るか⋯?
Preview版とリポジトリが変わっている
会社としては同じはずなので(ベースとする動画モデルが同社開発のものとなったため)管理部署が変わったのかもしれない
#ACE++
ここから試行錯誤中のチラ裏
🦊Wan2.1_VACE二でも移動したほうがいいだろうか…morisoba65536.icon
https://docs.comfy.org/tutorials/video/wan/vace公式の参照画像(ドラゴンの奴)のWorkflowに公式に元々あった画像を突っ込んでいるが何故かうまく参照画像を組み合わせてくれない…
参照画像
https://gyazo.com/727f9d11afdc69f7d4668f0cbfe92272
失敗したWorkflowvace-t2-vmultiple.json
自己解決、Loraが悪かった外したら合成された、こっちは成功例のWorkflow(Lora無効にしただけ)vace-t2v-Multiple References.json
よく考えたらCausVid LoraのページにVACEと組み合わせる時には0.3くらいにしろと自分で転記して書いてたな…(0.3位の適用にしたらうまく合成されたかはともかく合成自体はできる事もあるようだ)morisoba65536.icon
念の為コントロールイメージにブランクのマスク(白塗り単色画像)でもいいのでコントロール用の情報を渡すとより安定して合成してくれる(配置を指定するBOXとかならより正確だが完全なブランクでもリファレンスのみよりは合成しやすくなるっぽい?)
上記画像のような配置で1024x1024ならそれなりに期待した絵が出てきたが、1280x720のような出力だとプロンプトと参照画像だけだとうまく混ぜ合わせられないことがある。対処方法として一番手堅いのは「雑コラで良いのでControl画像にだいたい想定の位置に組み合わせた例をおいてやる」という方法でそれなりに安定させられた
Workflow(画像にも添付)multiImageSample.json
https://gyazo.com/173d9d3eee0a1710ca350eedd543b32b
こんな感じに合成したければ前述の参照を渡したうえで下記みたいな画像や動画をControlに与えてやる(ただの雑コラなので下記画像にはWorkflowはついていない)
https://gyazo.com/7df945a3f83fadb96b3d90be3c34675a
ただこれでも増えたりなど斜め上の出力は普通に起きる(あくまでガチャ確率が上がるだけ)morisoba65536.icon