Skip to main content

Robot Data Audit (RDA)

PyPI Python License: MIT

Audit robot dataset quality. Local only.

RDA checks LeRobot-format datasets for data integrity, temporal consistency, and motion anomalies. It flags problematic episodes and reports what's wrong. RDA is a diagnostic tool only — it does not guarantee training success rate improvements.


Quick Start

pip install robot-data-audit           # install
rda audit /path/to/dataset             # audit → text + JSON report in <dataset>/rda_report.json

Sample Output

$ rda audit ~/datasets/my_robot_data

  ── Verdict ──
  PASS:    180 (90.0%)
  REVIEW:   15 ( 7.5%)
  EXCLUDE:   5 ( 2.5%)

  ── Top Issues ──
  1. [HIGH ★] Action discontinuity: 3421 spikes across 195 episodes
  2. [MEDIUM] High idle ratio: median 72% idle, 28% effective motion
  3. [LOW] Extreme acceleration spikes: 2847 across 180 episodes

Output options: --format json for scripting, -o FILE to save elsewhere.


Real Audit Results

Audited on ArmnetBench (SO-101 arm, 2,499 episodes) and DROID (100 episodes):

Metric ArmnetBench (200 ep subset) DROID (100 ep)
Action spikes detected 5,229 1,428
Median idle ratio 68.6% 70.7%
Median episode duration 22.4s 15.0s
Verdict All PASS All PASS

Both are curated benchmark datasets — all episodes pass. RDA also runs on noisier, real-world collections where REVIEW/EXCLUDE verdicts appear more frequently.

Full calibration analysis (ArmnetBench, comparing successful vs failure episodes by label): docs/ARMNETBENCH_CALIBRATION_REPORT.md


Design

  • Local only — No data leaves your machine. Runs entirely offline.
  • Diagnostic, not predictive — RDA identifies data issues. Whether fixing them improves training is a separate question and depends on your task, model, and setup.
  • Statistical anomaly detection — Uses MAD on reference distributions instead of fixed thresholds (no hardcoded 3σ rules). Adapts to each dataset's characteristics.
  • Universal core metrics — Primary ranking uses 3 platform-independent metrics (duration, spike_count, effective_motion_ratio). Platform-specific signals (velocity, path_length) are optional diagnostics.

See docs/MVP_PRODUCT_SPEC.md for full metric definitions.


Metrics

Tier Metric Detects Cross-platform?
L1 Timestamp monotonicity Clock resets, duplicates
L1 Frame interval consistency Irregular sampling
L1 Schema compliance Missing/extra fields
L2 Temporal gap detection Time discontinuities
L2 Sensor synchronization Multi-sensor drift ⚠️
L2 Temporal sufficiency Idle vs active structure
L3 Velocity spikes Implausible jumps
L3 Motion discontinuities Jerky trajectories ⚠️
L3 Idle frame detection Paused segments
L4 Duration outliers Too short / too long
L4 Spike count outliers Unusual jerk profiles
L4 Effective motion ratio Low-activity episodes

CLI Reference

rda audit

rda audit /path/to/dataset [OPTIONS]
Option Description
-o, --output FILE Save JSON report (default: <path>/rda_report.json)
--format [json|text] Output format (default: text)
--platform TEXT Robot platform name for Tier 3 normalization
-v, --verbose Verbose output

Exit codes: 0 = no EXCLUDE, 1 = error, 2 = at least one EXCLUDE.


Python API

from rda.audit.dataset_audit import DatasetAuditor
from rda.io.lerobot_loader import iter_episodes, load_lerobot_dataset

dataset_info = load_lerobot_dataset("/path/to/dataset")
auditor = DatasetAuditor()
result = auditor.audit_dataset(dataset_info, iter_episodes("/path/to/dataset"))
print(f"PASS: {result.verdict_counts['PASS']}")

Development

git clone https://github.com/liesliy/rda.git
cd rda
pip install -e ".[dev]"
pytest

Citation

@software{robot_data_audit,
  title     = {Robot Data Audit: Quality Auditing for Robot Manipulation Datasets},
  author    = {Niu Su Tech},
  year      = {2026},
  url       = {https://github.com/liesliy/rda}
}

License

MIT

Release files for robot-data-audit 0.9.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for robot-data-audit 0.9.13
File Size Uploaded
robot_data_audit-0.9.13.tar.gz 252.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for robot-data-audit 0.9.13
File Interpreter ABI Platform
robot_data_audit-0.9.13-py3-none-any.whl Python 3 none any Details

Total release size: 500.4 kB

Release files / robot_data_audit-0.9.13.tar.gz

Download URL robot_data_audit-0.9.13.tar.gz
Size 252.2 kB
Tags Source
SHA-256 checksum
How to use checksums
836957e6d613d2e520f0b90dc01ffcb5019c7d42ba2d47129c4569ae0d414de9
BLAKE2b-256 checksum
How to use checksums
8be7d252c8b17b0fae637ca2309f1703ac305c61983e24a2e21edf063da1227d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / robot_data_audit-0.9.13-py3-none-any.whl

Download URL robot_data_audit-0.9.13-py3-none-any.whl
Size 248.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2b8596d4f76a3faa0b63f2eb7e09dd579da4ff87c6e9a04e49cbf93d7aea693b
BLAKE2b-256 checksum
How to use checksums
4f877ddaaf907a45ba13838325a77d962de0c7d2045d85e9cecf501704dabf01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release history Release notifications | RSS feed

0.9.14

2 release files

This release

0.9.13 This release

2 release files

0.9.12

2 release files

0.9.11

2 release files

0.9.9

2 release files

0.9.8

1 release file

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

1 release file

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.0

1 release file

0.5.9

1 release file

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.15

2 release files

0.4.14

2 release files

0.4.13

1 release file

0.4.12

1 release file

0.4.11

1 release file

0.4.10

1 release file

0.4.9

1 release file

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

1 release file

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page