File size: 4,073 Bytes
319eb16 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | # RoboReward Dataset Guide
This guide explains how to load and convert the RoboReward dataset with the Robometer pipeline.
Sources:
- Paper: [RoboReward: General-Purpose Vision-Language Reward Models for Robotics](https://arxiv.org/abs/2601.00675)
- Dataset: [https://huggingface.co/datasets/teetone/RoboReward](https://huggingface.co/datasets/teetone/RoboReward)
## Overview
RoboReward is a dataset for training and evaluating general-purpose vision-language reward models for robotics. Each example pairs a task instruction with a real-robot rollout video and a discrete end-of-episode progress reward score.
### Dataset Composition
- **Total**: 54,135 examples
- **Train**: 45,072 trajectories
- **Validation**: 6,232 trajectories
- **Test** (RoboRewardBench): 2,831 trajectories (human-verified)
Built from large-scale real-robot corpora including Open X-Embodiment (OXE) and RoboArena.
### Directory Structure
```
dataset_path/
train/
metadata.jsonl
[subdirectories with MP4 videos]
val/
metadata.jsonl
[subdirectories with MP4 videos]
test/
metadata.jsonl
[subdirectories with MP4 videos]
```
### Reward Scale
Each trajectory has a discrete reward score (1-5) which is converted to `partial_success` in [0.0, 1.0]:
| Reward | Meaning | partial_success | quality_label |
|--------|---------|-----------------|---------------|
| 1 | No success | 0.0 | failure |
| 2 | Minimal progress | 0.25 | failure |
| 3 | Partial completion | 0.5 | failure |
| 4 | Near completion | 0.75 | failure |
| 5 | Perfect completion | 1.0 | successful |
## Configuration
```yaml
# configs/data_gen_configs/roboreward.yaml
dataset:
dataset_path: ./datasets/RoboReward
dataset_name: roboreward_train # Can be overridden with --dataset.dataset_name
output:
output_dir: ./robometer_dataset/roboreward_rfm
max_trajectories: -1
max_frames: 64
use_video: true
fps: 10
shortest_edge_size: 240
center_crop: false
num_workers: 4
hub:
push_to_hub: true
hub_repo_id: roboreward_rfm
```
Use command-line overrides to specify different splits (train/val/test).
## Loader
- File: `dataset_upload/dataset_loaders/roboreward_loader.py`
- Function: `load_roboreward_dataset(dataset_path, dataset_name)`
- Notes:
- Reads `metadata.jsonl` from the specified split (train/val/test)
- Loads existing MP4 videos (no re-encoding needed)
- Converts reward scores to partial_success values
- All trajectories are robot demonstrations (`is_robot=True`)
## Usage
```bash
# Train split
uv run python -m dataset_upload.generate_hf_dataset \
--config_path=dataset_upload/configs/data_gen_configs/roboreward.yaml \
--dataset.dataset_name roboreward_train
# Validation split
uv run python -m dataset_upload.generate_hf_dataset \
--config_path=dataset_upload/configs/data_gen_configs/roboreward.yaml \
--dataset.dataset_name roboreward_val
# Test split (RoboRewardBench - human-verified)
uv run python -m dataset_upload.generate_hf_dataset \
--config_path=dataset_upload/configs/data_gen_configs/roboreward.yaml \
--dataset.dataset_name roboreward_test
```
This will:
- Load the specified split (train/val/test)
- Process existing MP4 videos
- Convert reward scores to partial_success values
- Create a HuggingFace dataset with proper quality labels
## Data Fields
Each trajectory contains:
- `task`: Natural-language instruction for the rollout
- `frames`: Video showing robot execution
- `partial_success`: Continuous score in [0.0, 1.0] derived from reward
- `quality_label`: "successful" (reward=5) or "failure" (reward<5)
- `is_robot`: Always `True` (all robot demonstrations)
- `data_source`: "roboreward"
## Citation
```bibtex
@misc{lee2026roboreward,
title={RoboReward: General-Purpose Vision-Language Reward Models for Robotics},
author={Tony Lee and Andrew Wagenmaker and Karl Pertsch and Percy Liang and Sergey Levine and Chelsea Finn},
year={2026},
eprint={2601.00675},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2601.00675},
}
```
|