Usage
git clone https://github.com/CodeGoat24/WorldReward
cd WorldReward && pip install -e .
python examples/run_single_pair.py \
--input-image my_data/scene.jpg \
--left-video my_data/system_x.mp4 \
--right-video my_data/system_y.mp4 \
--caption "A sunlit street lined with colorful European-style buildings." \
--actions forward,forward,left+camera_down \
--frames-per-action 8 \
--show-reasoning
Inference needs vLLM new enough to register Qwen3_5ForConditionalGeneration:
python -c "from vllm.model_executor.models.registry import ModelRegistry as R; \
print('Qwen3_5ForConditionalGeneration' in R.get_supported_archs())"
Results
Three-way agreement with human labels on
WorldReward-Bench (760 pairs, %).
All pairs count: a pair labelled tie is correct only if the model also predicts
tie.
Table with columns: Reward model, Action, Appearance, Motion| Reward model | Action | Appearance | Motion |
|---|
| WorldReward-9B | 77.63 | 81.32 | 73.03 |
| GPT-5.5 | 74.21 | 79.87 | 69.47 |
| Gemini-3.1-Pro | 65.79 | 80.13 | 60.79 |
| DAv3 | 70.53 | -- | -- |
| WorldMirror | 68.55 | -- | -- |
| Qwen3.5-VL-27B (zero-shot) | 63.68 | 44.34 | 62.76 |
| Qwen3.5-VL-9B (zero-shot) | 48.42 | 48.29 | 43.82 |
| HPSv3 | -- | 73.68 | -- |
| Aesthetic | -- | 69.87 | -- |
| UnifiedReward-Think | -- | 66.09 | 38.79 |
| UnifiedReward-Flex | -- | 64.62 | 49.86 |
| VideoAlign | -- | 61.32 | 40.13 |
Citation
@article{wang2026worldreward,
title={WorldReward: Reward Modeling for Camera-Conditioned World Models},
author={Wang, Yibin and Wang, Zehan and Tang, Junshu and Li, Zhimin and Zhou, Yujie and Bu, Jiazi and Ling, Pengyang and Han, Feng and Zhang, Zhixiong and Xing, Long and others},
journal={arXiv preprint arXiv:2609.03952},
year={2026}
}