--- license: apache-2.0 language: - en - zh library_name: diffusers pipeline_tag: image-to-video base_model: - Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B base_model_relation: finetune datasets: - Video-Reason/VBVR-Pro-RL tags: - diffusers - wan2.2 - image-to-video - video-generation - visual-reasoning - reinforcement-learning - rlvr - vbvr-pro --- # VBVR-Pro: A Scalable and Verifiable Suite for Native Visual Reasoning

Project Page arXiv Training and Inference Evaluation Code RL Dataset Bench Data Leaderboard

## Overview Native visual reasoning, i.e., reasoning through visual generation, has recently emerged as a promising direction for studying visual intelligence beyond language. Yet progress remains bottlenecked by the lack of scalable training tasks, reliable feedback, and controlled comparisons across generative substrates. In this work, we introduce **VBVR-Pro**, a closed-loop testbed that makes native visual reasoning through generation trainable, verifiable, optimizable, and experimentally controllable. **1) Task scaling.** VBVR-Pro turns visual reasoning into a controlled task space of *300* procedurally generated tasks. Models trained on VBVR-Pro show strong transfer beyond the proposed suite across *six* held-out visual reasoning benchmarks such as RISE-Video, MME-CoF-Pro, and BabyVision. Further analysis validates that these gains reflect visual reasoning rather than instruction-pattern fitting. **2) Verifiable rewards.** VBVR-Pro provides verifiable reward scorers for task-grounded evaluation. Through a systematic study of leading MLLMs as judges, we identify recurring failure modes of the prevalent *VLM-as-a-judge* paradigm. In contrast, the proposed scorers are grounded on verifiable task-specific rules, achieve fine-grained alignment with human judgments. Importantly, they serve as reliable reward signals for large-scale multi-task reinforcement learning and demonstrate stronger post-RL performance across visual reasoning tasks. **3) Mechanism study.** VBVR-Pro enables controlled modality studies across more than *30* image, video, and interleaved generators. Our analysis shows that video generation remains strongest for tasks requiring persistent spatiotemporal state tracking, while interleaved generation provides a compute-efficient alternative by externalizing intermediate visual states. Critically, ablations and probing confirm the presence of vision-native trajectories, that are a more crucial substrate than explicit linguistic chains of thought for visual reasoning. We release all data, models, scorers, and code to facilitate future research. The models are presented in the paper [VBVR-Pro: A Scalable and Verifiable Suite for Native Visual Reasoning](https://huggingface.co/papers/2608.26105). ## Models Zoo
Model Base Architecture Other Remarks
Video Generation Models
VBVR-Pro-Wan2.2-TI2V-5BWan2.2-TI2V-5BComplete model, supervised fine-tuning
VBVR-Pro-Wan2.2-TI2V-5B-RLVRWan2.2-TI2V-5BComplete model, RL with verifiable rewards
VBVR-Pro-Wan2.2-TI2V-5B-RLVLM-Qwen3.6-27B-RewardWan2.2-TI2V-5BComplete model, RL with Qwen3.6-27B VLM rewards
## Release Information ### VBVR-Pro-Wan2.2-TI2V-5B-RLVR This repository contains a complete Diffusers checkpoint for the VBVR-Pro Wan2.2 TI2V-5B model optimized with reinforcement learning with verifiable rewards (RLVR) using task-specific rule-based rewards. It is derived from [`Wan-AI/Wan2.2-TI2V-5B-Diffusers`](https://huggingface.co/Wan-AI/Wan2.2-TI2V-5B-Diffusers) and is intended for research on image-conditioned video generation and visual reasoning. The repository includes the transformer, text encoder, tokenizer, VAE, and scheduler. It also includes [`pipeline.py`](./pipeline.py), a custom image-to-video pipeline exposing all six inference configurations evaluated in the VBVR-Pro paper. ## VBVR-Pro Benchmark Results The sampler is selected per call; the model weights do not change. | `sampler` | Inference method | CPS coefficient | Paper overall score | |---|---|---:|---:| | `cps-0.1` | Flow-CPS | 0.1 | 0.509 | | `cps-0.3` | Flow-CPS | 0.3 | 0.526 | | `cps-0.7` | Flow-CPS | 0.7 | **0.548** | | `cps-0.9` | Flow-CPS | 0.9 | 0.539 | | `euler` | FlowMatch Euler ODE | — | 0.522 | | `unipc` | UniPC ODE | — | 0.522 | These are the aggregate VBVR-Pro-Bench results reported in Table 8 under the matched settings below. The model was trained with Flow-CPS coefficient 0.7. Reported scores are evaluation results, not guarantees for other prompts or runtime configurations. ### Recommended evaluation settings - Resolution: 512 × 512 - Frames: 81 - Output FPS: 16 - Inference steps: 30 - Guidance scale: 1.0 ## Quick Start ### Custom sampler pipeline Use Diffusers 0.37.1 or newer. Because this loads Python code from the model repository, review `pipeline.py`, pass `trust_remote_code=True`, and pin a reviewed `revision` in production. ```python import torch from diffusers import AutoencoderKLWan, DiffusionPipeline from diffusers.utils import export_to_video, load_image model_id = "Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR" # Wan's VAE is kept in float32 for stable decoding. vae = AutoencoderKLWan.from_pretrained( model_id, subfolder="vae", torch_dtype=torch.float32, ) pipe = DiffusionPipeline.from_pretrained( model_id, custom_pipeline="pipeline", trust_remote_code=True, vae=vae, torch_dtype=torch.bfloat16, ) pipe.enable_model_cpu_offload() image = load_image("input.png").convert("RGB") frames = pipe( image=image, prompt="Move the marked object to the matching target.", height=512, width=512, num_frames=81, num_inference_steps=30, guidance_scale=1.0, sampler="cps-0.7", # cps-0.1, cps-0.3, cps-0.7, cps-0.9, euler, or unipc generator=torch.Generator(device="cuda").manual_seed(0), ).frames[0] export_to_video(frames, "output.mp4", fps=16) ``` The generic form `sampler="cps", cps_eta=` accepts any finite coefficient from 0 to 1. `generator` controls the initial latent and, by default, the fresh Flow-CPS transition noise. Pass a separate `cps_generator` when the two random streams must be controlled independently. Loading the complete pipeline requires substantial CPU and accelerator memory. CPU offloading is recommended on smaller GPUs. ### Standard Diffusers pipeline The bundled scheduler remains UniPC and `model_index.json` is unchanged. Users who only need the standard deterministic path can load the checkpoint without remote custom code: ```python import torch from diffusers import AutoencoderKLWan, WanImageToVideoPipeline model_id = "Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR" vae = AutoencoderKLWan.from_pretrained( model_id, subfolder="vae", torch_dtype=torch.float32, ) pipe = WanImageToVideoPipeline.from_pretrained( model_id, vae=vae, torch_dtype=torch.bfloat16, ) ``` Use `WanImageToVideoPipeline`, not the text-to-video `WanPipeline`: the latter does not accept the first-frame `image` argument in Diffusers 0.37.1. ## Implementation and reproducibility notes - Flow-CPS uses the training-time shifted `linspace(1, 0, T + 1)` sigma grid and preserves the released scheduler's `flow_shift: 5.0`. - CPS updates are evaluated in float32 and cast back to the transformer latent dtype. Euler and UniPC retain their native Diffusers latent precision and solver grids. - The custom class subclasses `WanImageToVideoPipeline`, preserving the official first-frame VAE conditioning and TI2V-5B expanded-timestep mask. - The release training/evaluation repository remains the source of truth for formal score provenance. Exact output bytes can vary with PyTorch, Diffusers, attention backend, dtype, and device. ## Training Details ### Summary The model was optimized on VBVR-Pro image-to-video tasks using Flow-CPS rollouts and deterministic task-specific rule rewards. Training and evaluation targeted 512 × 512 videos with 81 frames. ### Resources - Release training code: [`pufanyi/vbvr-rl`](https://github.com/pufanyi/vbvr-rl) - Training dataset: [`Video-Reason/VBVR-Pro-RL`](https://huggingface.co/datasets/Video-Reason/VBVR-Pro-RL), revision `ca0aaffea93b07d269c6fe2fbfe533f1fdab9aa1` ## Limitations - The model is a research artifact and may produce incorrect or visually inconsistent reasoning trajectories. - Results are most directly comparable under the settings listed above. - The model inherits limitations and potential biases from the Wan2.2 base model and its training data. - Do not use generated outputs as the sole basis for high-stakes decisions. ## License The model is released under Apache License 2.0. See `LICENSE`. Please also follow the terms and attribution guidance of the upstream Wan2.2 model. ## Citation ```bibtex @misc{xu2026vbvrproscalableverifiablesuite, title={VBVR-Pro: A Scalable and Verifiable Suite for Native Visual Reasoning}, author={Junxiang Xu and Ruisi Wang and Fanyi Pu and Maijunxian Wang and Ran Ji and Tongxi Zhou and Chenyang Gu and Jing Zuo and Hongcan Xiao and Yimeng Geng and Wanqi Yin and Wei Chen and Oscar Qian and Zhengan Yan and Ziqi Huang and Haiwen Diao and Liang Pan and Bo Li and Xiangyu Fan and Dezhi Luo and Fengyuan Yu and Zehong Zhao and Qingying Gao and Tinghui Zhu and Yilan Zhang and Jingqi Tong and Pinyuan Feng and Zhengze Jiang and Letian Wang and Ziyu Guo and Renrui Zhang and Jieneng Chen and Sonia Joseph and Constantin Venhoff and Saman Motamed and Mengyue Yang and Chandra Sripada and Alan Yuille and Philip Torr and Lvmin Zhang and Vikash Kumar and Daniel Khashabi and Nikolaus Kriegeskorte and Raphaël Millière and Vincent C. Müller and Anyi Rao and Quan Wang and Ziwei Liu and Dahua Lin and Lei Yang and Hokin Deng and Zhongang Cai}, year={2026}, eprint={2608.26105}, archivePrefix={arXiv}, primaryClass={cs.CV}, url={https://arxiv.org/abs/2608.26105}, } ```