Shuyang-Yu-808
Add Robometer code + Robometer-4B weights
319eb16
|
Raw
History Blame Contribute Delete
2.88 kB
# Galaxea Open-World Dataset Guide
This guide explains how to integrate and use the Galaxea Open-World RLDS dataset with the Robometer training pipeline.
Source: `https://huggingface.co/datasets/OpenGalaxea/Galaxea-Open-World-Dataset`
Can download it with `hf download OpenGalaxea/Galaxea-Open-World-Dataset --repo-type dataset --include "*rlds*" --local-dir ./datasets/galaxea`
Also, need to install some extra dependencies:
```bash
uv pip install tensorflow-datasets
uv pip install tensorflow
uv pip install tf-keras
```
## Overview
- 500+ hours of real-world mobile manipulation data in RLDS and LeRobot formats.
- Fine-grained subtask language annotations at step level via `language_instruction`.
- Multiple RLDS builders (e.g., `part1_r1_lite`, `sample_r1_lite`) under a common `rlds/` root.
## Directory Structure
```
<dataset_path>/
rlds/
sample_r1_lite/
1.0.0/
dataset_info.json
features.json
merge_dataset_large_r1_lite-train.tfrecord-00000-of-01024
...
part1_r1_lite/
1.0.0/
...
```
## Language Instruction Schema
As documented, `language_instruction` encodes three parts separated by `@`:
- `high_level` @ `low_level_chinese` @ `low_level_english`
We extract the low-level English (the third part) and use it as the task string for embeddings.
## Configuration (configs/data_gen_configs/galaxea.yaml)
```yaml
# configs/data_gen_configs/galaxea.yaml
dataset:
dataset_path: ./datasets/galaxea
dataset_name: galaxea_part1_r1_lite # choose from part1_r1_lite, part2_r1_lite, part3_r1_lite, part4_r1_lite, part5_r1_lite, ...
output:
output_dir: ./robometer_dataset/galaxea_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: galaxea_rfm
```
## Usage
```bash
bash dataset_upload/data_scripts/galaxea/gen_all_galaxea.sh
```
This will:
- Iterate the listed RLDS builders under `rlds/`
- For each episode, parse `language_instruction` and extract the low-level English instruction
- Select camera views (`image_camera_head`, `image_camera_wrist_left`, `image_camera_wrist_right`)
- Convert frames to web-optimized videos and create a HuggingFace dataset
## Data Fields
Each trajectory includes:
- `id`: Unique identifier
- `task`: Low-level English instruction (parsed from `language_instruction`)
- `frames`: Relative path to the generated clip video
- `is_robot`: True
- `quality_label`: "successful"
- `partial_success`: N/A (fixed by pipeline)
- `data_source`: `galaxea`
## Troubleshooting
- Builder not found: Ensure the RLDS version directories exist under `rlds/<name>/`.
- Missing instruction: If no `language_instruction` is present or malformed, the episode is skipped.
- Performance: Adjust `num_workers` and batch size inside the loader if needed.