VBVR-Pro: A Scalable and Verifiable Suite for Native Visual Reasoning

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.

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 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, 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.

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=<value> 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:

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

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

@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},
}
Downloads last month
24
Safetensors
Model size
5B params
Tensor type
F32
·
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR

Finetuned
(2)
this model

Dataset used to train Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR

Collection including Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR

Paper for Video-Reason/VBVR-Pro-Wan2.2-TI2V-5B-RLVR