CoolFace
Datasetpublic

ngqtrung/video-r1-perceptiontest-mc-v1

--- language: - en license: apache-2.0 size_categories: - 1K<n<10K task_categories: - video-text-to-text tags: - multimodal-rl - qwen3-vl - gspo - grpo --- # ngqtrung/video-r1-perceptiontest-mc-v1 Curated v1 dataset for multimodal RL fine-tuning of Qwen3-VL-4B-Instruct. | Property | Value | |---|---| | Rows | 6348 | | Modality | video | | Split | train | | Schema | verl-ready (prompt + images + videos +… See the full description on the dataset page: https://huggingface.co/datasets/ngqtrung/video-r1-perceptiontest-mc-v1.

sourceHugging Faceupdated 5mo agoView on Hugging Face
0likes7downloads
Dataset Card

language:

  • —en license: apache-2.0 size_categories:
  • —1K<n<10K task_categories:
  • —video-text-to-text tags:
  • —multimodal-rl
  • —qwen3-vl
  • —gspo
  • —grpo ---

# ngqtrung/video-r1-perceptiontest-mc-v1

Curated v1 dataset for multimodal RL fine-tuning of Qwen3-VL-4B-Instruct.

PropertyValue
Rows6348
Modalityvideo
Splittrain
Schemaverl-ready (prompt + images + videos + rewardmodel + extrainfo)

## Config

json
        {
  "fps": 1,
  "max_frames": 32,
  "max_pixels": 501760
}

## System prompt

        You are a careful reasoning assistant. ALWAYS respond in this EXACT format:

<think>step-by-step reasoning</think>
<answer>\boxed{final_answer}</answer>

Examples:

Q: 7 × 8?
<think>7 × 8 = 56.</think>
<answer>\boxed{56}</answer>

Q: A right triangle has legs of length 3 and 4. What is the hypotenuse?
<think>By the Pythagorean theorem, c² = 3² + 4² = 9 + 16 = 25, so c = 5.</think>
<answer>\boxed{5}</answer>

For multiple-choice, put the letter, e.g. \boxed{B}.
Always wrap reasoning in <think>...</think> and answer in <answer>\boxed{...}</answer>. No text outside these tags.

## Source credit

Video-R1 (https://huggingface.co/datasets/Video-R1/Video-R1-data) — PerceptionTest MC subset

## How to use with verl

The parquet contains videos with file:// paths pointing to local disk (if video modality). Set VIDEO_R1_ROOT=/path/to/your/video-r1-extracted and either edit the parquet's video paths or use a path-resolver wrapper.

For image rows, images are inline PNG/JPEG bytes — no external dependencies.

## Schema

python
        prompt: list[struct(role: str, content: str)]
        images: list[struct(bytes: binary, path: str)]
        videos: list[struct(type, video, fps, max_frames, max_pixels)]
        data_source: str
        ability: str
        reward_model: struct(ground_truth: str, style: str)
        extra_info: struct(reward_type: str, answer: str)

## License

This dataset inherits the Apache-2.0 license of the underlying sources. See the source credit above for upstream attribution.