Bernini v2 Comes to ComfyUI via Custom Nodes
rzgar packages ByteDance's Bernini-Diffusers-v2 semantic planner and Wan2.2 renderer into ComfyUI custom nodes, with FP8 and NVFP4 weights and one workflow for six tasks.
Overview
The full Bernini v2 pipeline was previously only runnable through ByteDance's official diffusers code. The ComfyUI pack converts it into a node-based workflow: a fine-tuned Qwen2.5-VL planner with a connector and a MaskGIT-style ViT decoder turns text plus source visuals into semantic plan tokens, then two co-trained Wan2.2 DiTs (high-noise and low-noise, switched at 0.875) render the video with source media injected as context latents.
The Bernini v2 planning and rendering pipeline running as ComfyUI custom nodes. Source: rzgar/Bernini-v2-ComfyUI
Six Tasks, One Workflow
Task selection is automatic based on which media inputs are connected:
| Connected inputs | Task |
|---|---|
| None | Text-to-video (t2v) |
| Reference images only | Reference-to-video (r2v) |
| Source video | Video-to-video editing (v2v) |
| Source video + reference images | Reference-guided editing (rv2v) |
| Source video + reference video | Aesthetic direction transfer (ads2v) |
Recommended settings: CFG 3, 16 to 50 steps, UniPC / DPMPP_2M / EULER samplers.
Model Files
The pack ships FP8-scaled and NVFP4 quantizations of both DiTs, plus the planner assets (MLLM, connector, ViT decoder, mask tokens) that go under models/text_encoders/. The planner tokenizer and processor configs are provided as a separate zip in the repo. All components are listed on the model page.
Background: Bernini v2
ByteDance open-sourced the full Bernini framework in June 2026 and packaged it as Bernini-Diffusers-v2 on August 13. The v2 training recipe warms up the connector for thousands of steps before co-training, which improved reference-guided editing and OpenS2V scores (63.83) over the first diffusers release. In ByteDance's internal blind arena, Bernini ranks in the first tier of video editing among closed-source commercial models.
The Bernini framework: the MLLM semantic planner decomposes instructions, the Wan2.2 DiT renderer produces the video. Source: Bernini project page
Comments
Sign in with GitHub to join the discussion.