README.md

May 24, 2025 Β· View on GitHub

RBench-V: A Primary Assessment for Visual Reasoning Models with Multi-modal Outputs

🌐 Homepage | πŸ€— Dataset | πŸ“– ArXiv | πŸ† Leaderboard | πŸ™ GitHub

This repository contains the evaluation code for the paper "RBench-V: A Primary Assessment for Visual Reasoning Models with Multi-modal Outputs". The code is based on VLMEvalKit.


πŸ”” Introduction

RBench-V Overview

The rapid advancement of native multi-modal models and omni-models, exemplified by GPT-4o, Gemini and o3 with their capability to process and generate content across modalities such as text and images, marks a significant milestone in the evolution of intelligence. Systematic evaluation of their multi-modal output capabilities in visual thinking process (a.k.a., multi-modal chain of thought, M-CoT) becomes critically important. However, existing benchmarks for evaluating multi-modal models primarily focus on assessing multi-modal inputs and text-only reasoning process while neglecting the importance of reasoning through multi-modal outputs.

In this paper, we present a benchmark, dubbed as RBench-V, designed to assess models’ multi-modal reasoning. To conduct RBench-V, we carefully hand-pick 803 questions covering math, physics, counting and games. Unlike problems in previous benchmarks, which typically specify certain input modalities, RBench-V presents problems centered on multi-modal outputs, which requires image manipulation, such as generating novel images and constructing auxiliary lines to support reasoning process.

We evaluate numerous open- and closed-source models on RBench-V, including o3, Gemini 2.5 pro, Qwen2.5-VL, etc. Even the best-performing model, o3, achieves only 25.8% accuracy on RBench-V, far below the human score of 82.3%, which shows current models struggle to leverage multi-modal reasoning.

πŸ† Main Results

The table below presents the performance of various open- and closed-source models. All results can be viewed on the leaderboard.

RBench-V Results Overview

ModelOverallw/o MathMathPhysicsCountingGame
Human Expert πŸ‘‘82.381.784.769.481.089.1
OpenAI o3 πŸ₯‡25.819.548.320.422.117.1
OpenAI o4-mini πŸ₯ˆ20.914.643.212.717.413.8
Gemini 2.5 pro-preview-0506 πŸ₯‰20.213.942.69.619.012.7
Doubao-1.5-thinking-pro-m17.111.038.613.49.710.5
OpenAI o116.211.034.75.712.313.1
Doubao-1.5-vision-pro15.611.530.18.912.812.0
OpenAI GPT-4o-2025032714.111.224.43.213.314.2
OpenAI GPT-4.113.611.720.55.711.315.3
Step-R1-V-Mini13.28.829.06.410.39.1
OpenAI GPT-4.512.611.018.22.511.815.3
Claude-3.7-sonnet11.59.119.93.88.712.4
QVQ-Max11.08.121.05.76.210.9
Qwen2.5VL-72B10.69.215.33.86.214.5
InternVL-3-38B10.07.220.50.65.112.4
Qwen2.5VL-32B10.06.422.72.54.110.2
MiniCPM-2.6-o9.77.517.61.33.613.8
Llama4-Scout (109B MoE)9.56.918.83.24.110.9
MiniCPM-2.6-V9.17.215.91.36.211.3
LLaVA-OneVision-72B9.08.99.14.54.614.5
DeepSeek-VL29.07.015.90.65.611.6
LLaVA-OneVision-7B8.56.814.22.54.610.9
Qwen2.5VL-7B8.37.013.12.53.612.0
InternVL-3-8B8.26.015.91.95.68.7
InternVL-3-14B8.07.011.41.35.111.6
Qwen2.5-Omni-7B7.74.511.41.92.17.7

βš™οΈ Installation

To install the required packages, run:

# Prepare repository and environment
git clone git@github.com:CHEN-Xinsheng/VLMEvalKit_RBench-V.git
cd ./VLMEvalKit_RBench-V
pip install -e .

In some cases, you may need to install additional dependencies.

pip install 'accelerate>=0.26.0'
pip install flash-attn --no-build-isolation
pip install qwen-vl-utils

For more details on installation and setup, please refer to the [VLMEvalKit Quickstart | εΏ«ι€ŸεΌ€ε§‹].


🧠 Inference & Evaluation

You can directly perform inference and evaluation on the selected open-source models using the following command:

python run.py --model <MODEL_NAME> --data RBench_V --api-nproc <NUMBER_OF_PROCS_TO_CALL_API_JUDGE_MODEL> --verbose

Examples:

python run.py --model Qwen2.5-VL-7B-Instruct --data RBench_V --api-nproc 16 --verbose
python run.py --model MiniCPM-V-2_6 --data RBench_V --api-nproc 16 --verbose
python run.py --model MiniCPM-o-2_6 --data RBench_V --api-nproc 16 --verbose
python run.py --model Llama-4-Scout-17B-16E-Instruct --data RBench_V --api-nproc 4 --verbose --use-vllm 
python run.py --model llava_onevision_qwen2_72b_ov --data RBench_V --api-nproc 4 --verbose 
python run.py --model llava_onevision_qwen2_7b_ov --data RBench_V --api-nproc 4 --verbose

Some Arguments

  • --model (list[str]): Set the VLM names that are supported in VLMEvalKit (defined in supported_VLM in vlmeval/config.py).
  • --mode (str, default to 'all', choices are ['all', 'infer']): When mode set to "all", will perform both inference and evaluation; when set to "infer", will only perform the inference.
  • --api-nproc (int, default to 4): The number of threads for OpenAI API calling.
  • --reuse: reuse the latest inference results and temporary pickle files.

πŸ“ Call API Judge Model

  • In order to call the API judge model, you need to configure your API Key in the code, which has now been marked as placeholders with MY_API_KEY.

πŸ› οΈ Run Custom Model


πŸ“š Citation

BibTeX:

@misc{guo2025rbenchvprimaryassessmentvisual,
      title={RBench-V: A Primary Assessment for Visual Reasoning Models with Multi-modal Outputs}, 
      author={Meng-Hao Guo and Xuanyu Chu and Qianrui Yang and Zhe-Han Mo and Yiqing Shen and Pei-lin Li and Xinjie Lin and Jinnian Zhang and Xin-Sheng Chen and Yi Zhang and Kiyohiro Nakayama and Zhengyang Geng and Houwen Peng and Han Hu and Shi-Min Hu},
      year={2025},
      eprint={2505.16770},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2505.16770}, 
}