Buckets:
| Name | Size | Uploaded | Xet hash |
|---|---|---|---|
| data | 1,185,395 items | ||
| meta | 4 items | ||
| videos | 2,369,444 items | ||
| LICENSE.ja.md | 7.83 kB xet | 33b79474 | |
| README.md | 22.6 kB xet | 5f18cdb6 |
AIRoA MoMa 5k
AIRoA MoMa 5k is a large-scale, task-structured dataset of real-robot mobile manipulation collected by teleoperating Toyota Human Support Robots (HSRs). The public release contains 1,184,259 successful Primitive-Action (PA) episodes, 180,905,084 frames, and 5,025 recorded hours from 44 physical robots at five collection sites.
Each PA remains independently addressable for policy training, while execution-level metadata preserve the Short-Horizon Task (SHT) in which that PA occurred and its position in the ordered PA sequence. The release combines head- and hand-camera RGB, robot state, mobile-base actions, wrist force-torque history, end-effector pose, low-level servo telemetry, and task hierarchy metadata in LeRobot v2.1 format.
Scope of this card. This card describes the public, success-only AIRoA MoMa 5k artifact with release identifier
airoa-moma-5k.
Dataset summary
| Property | AIRoA MoMa 5k |
|---|---|
| PA episodes | 1,184,259 |
| Frames | 180,905,084 |
| Recorded duration | 5,025.1 h at 10 Hz |
| Reconstructed SHT instances | 425,518 |
| SHT templates | 93 |
| Defined / observed PA labels | 531 / 358 |
| Distinct PA sequences | 1,985 |
| Sites / physical HSR units | 5 / 44 |
| Camera views | 2 (head and hand) |
| Outcome | Successful episodes only |
| Split | Train only |
| Storage | Approximately 4.0 TiB |
| Format | LeRobot v2.1; Parquet + AV1 video |
| Collection period | April 2025 to January 2026 |
| Release identifier | airoa-moma-5k |
The 5k release expands the preliminary AIRoA MoMa dataset (25,469 PA episodes, approximately 94 h, one site) by 46.5 times in episodes, 53.5 times in recorded hours, and five times in collection sites.
Task organization
Primitive Actions and Short-Horizon Tasks
The unit stored as an episode is a Primitive Action (PA), such as navigating to a container, grasping an object, or placing it on a shelf. Multiple PA episodes can be grouped into a Short-Horizon Task (SHT) execution.
tasks[0]is the natural-language instruction for the active PA episode.short_horizon_taskis the parent SHT template.primitive_actionstores the parent task's ordered PA sequence.uuidis the SHT execution identifier shared by PA episodes from the same execution.primitive_action_indexin the frame-level Parquet data identifies the PA's position in that sequence.task_indexindexes the PA instruction vocabulary; it is not the sequence position.
Grouping by uuid reconstructs 425,518 SHT instances with a mean of 2.78 released PAs per instance. The public core covers 93 SHT templates: 68 main task templates, which account for 99.6% of released episodes, plus 25 site-specific template variants.
The distribution is long-tailed. The most frequent SHT contains 71,258 PA episodes, and 173 labels in the defined 531-label PA vocabulary are not observed in this release.
Duration
| Unit | Median | 95th percentile | Maximum |
|---|---|---|---|
| PA episode | 12.4 s | 36.3 s | 280 s |
| Reconstructed SHT instance | 31.7 s | 115.9 s | 922 s |
Collection distribution
All data were collected with the Toyota Human Support Robot using human leader-follower teleoperation. The public core contains data from five sites:
| Site | PA episodes | Share |
|---|---|---|
| telexistence | 719,313 | 60.7% |
| kyutech | 362,934 | 30.6% |
| weblab | 64,050 | 5.4% |
| fastlabel | 33,354 | 2.8% |
| heiwajima | 4,608 | 0.4% |
Site and robot provenance are retained per episode. Pseudonymous operator identifiers are available for the telexistence subset only, where 122 distinct operator identifiers are observed; operator identifiers are absent from the other four sites.
These counts describe data coverage, not task difficulty or policy performance. Users should account for the substantial site and task imbalance when constructing evaluation splits.
Data format
The release follows the LeRobot v2.1 layout:
meta/
├── info.json
├── episodes.jsonl
└── ...
data/
└── chunk-{episode_chunk:03d}/
└── episode_{episode_index:06d}.parquet
videos/
└── chunk-{episode_chunk:03d}/
├── observation.image.head/
│ └── episode_{episode_index:06d}.mp4
└── observation.image.hand/
└── episode_{episode_index:06d}.mp4
There are 1,185 chunks with at most 1,000 episodes per chunk. Numeric data are stored in Parquet, and each episode has one AV1 video for each of the two camera views. The only provided split is:
train: 0:1184259
Core frame-level features
All streams are synchronized at 10 Hz.
| Feature | Shape / type | Description |
|---|---|---|
observation.image.head |
480 x 640 x 3 video | Head-mounted RGB, AV1, 10 fps |
observation.image.hand |
480 x 640 x 3 video | Hand-mounted RGB, AV1, 10 fps |
observation.state |
float32[8] | Arm, wrist, gripper, and head joint state |
observation.wrist.wrench |
float32[600] | Flattened history of 100 six-axis force-torque samples in the wrist-sensor frame; force in N and torque in N m |
observation.end_effector_pose.absolute |
float32[6] | Absolute end-effector x, y, z, roll, pitch, yaw |
observation.end_effector_pose.relative |
float32[6] | Relative end-effector pose |
action.absolute |
float32[8] | Absolute arm, gripper, and head action representation |
action.state_diff |
float32[8] | Difference between next and current robot state |
action.relative |
float32[11] | Relative arm, gripper, head, and mobile-base action |
action.arm |
float32[5] | Arm action |
action.gripper |
float32[1] | Gripper action |
action.head |
float32[2] | Head action |
action.base |
float32[3] | Mobile-base x, y, theta delta |
command.servo.position |
float32[11] | Low-level servo position command |
command.servo.velocity |
float32[11] | Low-level servo velocity command |
state.servo.* |
float32[11] each | Motor position, driven position, velocity, temperature, effort, and current |
*.is_fresh |
bool arrays | Freshness indicators for streams whose values may be carried forward during synchronization |
The 8-D joint ordering is:
arm_lift_joint, arm_flex_joint, arm_roll_joint, wrist_flex_joint,
wrist_roll_joint, hand_motor_joint, head_pan_joint, head_tilt_joint
The 11-D relative-action ordering appends:
base_x, base_y, base_t
The servo features cover the eight joints above plus:
base_l_drive_wheel_joint, base_r_drive_wheel_joint, base_roll_joint
Additional standard indexing fields include episode_index, frame_index, timestamp, next.done, short_horizon_task_index, primitive_action_index, success_primitive_action, and task_index.
Episode metadata
Each line in meta/episodes.jsonl describes one PA episode. A shortened example is:
{
"episode_index": 0,
"tasks": ["Grab one 500-600 ml pet bottle"],
"length": 263,
"location_name": "telexistence",
"interface": "hsr_leader_teleop",
"hsr_id": "hsrb101",
"task_type": "PA",
"task_success": true,
"short_horizon_task": "Take one 500-600 ml pet bottle from the container and stock it on the shelf.",
"primitive_action": [
"Navigate to container",
"Grab one 500-600 ml pet bottle",
"Go back to shelf",
"Place 500-600 ml pet bottle on shelf",
"Return to charging station"
],
"success_short_horizon_task": true,
"uuid": "1d449b4e-4e7e-4321-bb69-a59bccfb31ee"
}
The complete records also contain collection-component provenance and source-version metadata. Do not assume that every optional provenance field is populated at every site.
Download
The complete release is approximately 4.0 TiB and contains more than 3.5 million files. The data is distributed through the Hugging Face Storage Bucket airoa-org/airoa-moma-5k, which supports efficient bulk transfer without per-file Hub API overhead.
Recommended: hf sync
Install the Hugging Face CLI and sync the bucket (or any prefix of it) to a local directory:
pip install -U huggingface_hub
# full mirror (~4.0 TiB)
hf sync hf://buckets/airoa-org/airoa-moma-5k ./airoa-moma-5k
# metadata only
hf sync hf://buckets/airoa-org/airoa-moma-5k/meta ./airoa-moma-5k/meta
# a single chunk (1,000 episodes: videos of both cameras)
hf sync hf://buckets/airoa-org/airoa-moma-5k/videos/chunk-000 ./airoa-moma-5k/videos/chunk-000
hf sync hf://buckets/airoa-org/airoa-moma-5k/data/chunk-000 ./airoa-moma-5k/data/chunk-000
hf sync compares source and destination and transfers only missing or changed files, so an interrupted download can be resumed by re-running the same command. For partial use, prefer prefix-scoped syncs as shown above rather than listing the full 3.5-million-object tree.
Anonymous downloads are subject to stricter per-IP rate limits; logging in with a free Hugging Face account token (hf auth login) is recommended for large transfers.
Alternative: S3-compatible API
The bucket is also reachable through an S3-compatible gateway, which suits streaming transfers into other storage systems with tools such as rclone, s5cmd, or the AWS SDKs:
- endpoint:
https://s3.hf.co/airoa-org(path-style addressing, ListObjectsV2, regionus-east-1) - bucket name:
airoa-moma-5k - credentials: generate S3 credentials from a Hugging Face access token (see the S3 compatibility documentation)
Object downloads redirect to the nearest CDN edge, so S3 clients that follow redirects (rclone, s5cmd, curl) download at CDN speed.
Programmatic access
huggingface_hub exposes bucket listing and per-file access (HfApi.list_bucket_tree, hf:// paths), which supports partial and streaming reads — for example querying the Parquet data directly with DuckDB without downloading videos.
Note that the bucket is flat object storage: it does not integrate with LeRobotDataset-style hub loading. Download the data locally (or the subset you need) and point your loader at the local root.
Collection, filtering, and privacy
SHT labels, PA labels, PA boundaries, ordered task structure, and outcome flags were recorded during data collection. Processing verifies and packages those annotations through:
- signal-validity and motion checks;
- segmentation at the recorded PA boundaries;
- removal of invalid, negligible-motion, duration-outlier, and signal-outlier segments;
- visual inspection of random samples; and
- bystander screening of both camera streams.
For the public release, episodes with bystander detections above the release threshold were excluded. A conventional person detector was used so that the confidence threshold and false-positive trade-off could be controlled explicitly.
Intended uses
AIRoA MoMa 5k is intended for research in:
- imitation learning and offline robot learning;
- vision-language-action model training and adaptation;
- mobile-manipulation perception and control;
- hierarchical or compositional task modeling;
- multi-view robot vision;
- contact-aware learning using wrist force-torque history;
- analysis of task, site, robot, and operator-domain variation.
The metadata support held-out-site splits and compositional splits that hold out complete SHT templates while retaining some constituent PA labels in training. When splitting by SHT, group by uuid so that PA episodes from one execution do not leak across splits.
Limitations and out-of-scope uses
- Success-only release: Failed and suboptimal episodes from the broader AIRoA collection are not included in this public core. The dataset is unsuitable for failure-frequency estimation.
- No standardized benchmark: The release provides a training corpus, not fixed policy inputs, train/test splits, success criteria, or a leaderboard.
- Single embodiment: All episodes use HSR. Results may not transfer directly to other robot morphologies or controllers.
- Long-tailed coverage: Tasks, PA labels, sites, robots, and operators are not balanced.
- Templated language: Instructions are task templates rather than free-form operator utterances.
- Incomplete operator provenance: Operator identifiers are present only for the telexistence subset.
- Successful demonstrations are not safety guarantees: Policies trained on this dataset require independent validation, workspace constraints, collision handling, and human oversight before real-world deployment.
- Known metadata edge case: In 95 of 1,184,259 episode records, the active
tasks[0]string is not found verbatim in the storedprimitive_actionsequence. Consumers should not require exact string membership without an explicit fallback.
The dataset should not be used to infer personal attributes, identify operators, or develop surveillance systems. Site, robot, and pseudonymous operator fields are provided for provenance and domain-shift research.
License
Use of this dataset is governed by the AIRoA Public Dataset Terms of Use (一般公開向けデータセット利用規約). The Japanese text in LICENSE.ja.md is the authoritative version (Article 12). Key conditions include: research and development use only, no commercial resale, and no redistribution of the dataset, derivative datasets, or derivative models to third parties.
Citation
The preliminary release is described in:
@article{takanami2025airoamoma,
author = {Takanami, Ryosuke and Khrapchenkov, Petr and Morikuni, Shu and others},
title = {{AIRoA MoMa} Dataset: A Large-Scale Hierarchical Dataset for Mobile Manipulation},
journal = {arXiv preprint arXiv:2509.25032},
year = {2025}
}
Release notes
- AIRoA MoMa 5k /
airoa-moma-5k: 1,184,259 successful PA episodes, 5,025 h, five sites, LeRobot v2.1. - Preliminary AIRoA MoMa release: 25,469 PA episodes, approximately 94 h, one site.
- Total size
- 4.35 TB
- Files
- 3,552,783
- Last updated
- Aug 3
- Pre-warmed CDN
- US EU US EU