User Guide · Data Pipelines · RLDS export

RLDS export

Some VLA stacks — most notably OpenVLA / OpenVLA-OFT — consume the RLDS / TFDS format rather than LeRobot. utils/convert_to_rlds.py scans recorded trajectory dirs and emits a TFDS-style RLDS dataset.

Convert recorded trajectories

-i/--input-dirs takes one or more directories to scan (by -p/--pattern); -o/--output-dir is where the RLDS dataset is written.

$ python utils/convert_to_rlds.py \
    -i demos/grasp_part/100221 \
    -o demos/datasets/rlds \
    --dataset-name grasp_part_rlds \
    --image-size 256

Flags

FlagDefaultNotes
-i, --input-dirs— (required)One or more dirs to scan for trajectories
-o, --output-dir/nat/demos/datasets/rldsRLDS dataset output dir
--dataset-namefgmanip_rldsTFDS dataset name
--image-size256Square image resize
--val-ratio0.0Validation split fraction
--all-episodesoffInclude non-successful episodes too
--max-episodes0Cap episodes (0 = no cap)
-p, --patternreplay patternFilename pattern to collect
--seed42Split shuffle seed

Use with OpenVLA / OpenVLA-OFT

Point the OpenVLA training config at --output-dir; both OpenVLA and OpenVLA-OFT consume RLDS shards directly. Mixing MetaFine RLDS with OXE / OpenX-style datasets is the usual path for joint pretrain + fine-tune runs.

Canonical source: python utils/convert_to_rlds.py --help.