Skip to main content

Robot Data Audit (RDA)

Quality auditing tool for robot datasets. RDA provides comprehensive metrics for evaluating the integrity, temporal consistency, motion quality, and distribution coverage of robot trajectory datasets.

Features

  • Integrity Metrics: Missing frames, NaN values, schema validation
  • Temporal Metrics: Timestamp consistency, sensor sync, jitter analysis
  • Motion Metrics: Joint limits, velocity profiles, discontinuities, idle detection
  • Distribution Metrics: Distribution statistics, coverage analysis
  • Three-tier classification: PASS / REVIEW / EXCLUDE
  • CLI-first design: Easy to integrate into data pipelines
  • Streamlit UI (coming in v0.2.0): Interactive dashboard for exploring results

Installation

From PyPI

Note: PyPI publishing is planned for the v0.2.0 release. Until then, install from source as described below.

# Coming soon — PyPI package name: robot-data-assurance
# pip install robot-data-assurance

From source (development)

git clone <repository-url>
cd robot-data-audit
pip install -e .

With UI support (v0.2.0+)

pip install -e ".[ui]"

Quick Start

1. Audit a dataset

rda audit /path/to/lerobot/dataset

This will run all 12 RDA metrics against every episode in the dataset and print a text summary to the console. A JSON report is automatically saved to <dataset_path>/rda_report.json.

2. Use example datasets

# See examples and usage tips
rda example

3. Customize output

# Save report to a specific path
rda audit /path/to/dataset --output my_report.json

# Output JSON to stdout (for piping)
rda audit /path/to/dataset --format json

# Verbose mode with platform info
rda audit /path/to/dataset --platform so101 -v

4. Preview the UI (coming soon)

rda audit /path/to/dataset --ui

CLI Reference

rda audit

Audit a LeRobot dataset at the given PATH.

rda audit [OPTIONS] PATH
Option Description
-o, --output FILE Path to save the JSON audit report. Defaults to <path>/rda_report.json.
--format [json|text] Output format for the audit report. Default: text.
--platform TEXT Robot platform name (e.g. so101, droid). Used for Tier 3 platform-specific metrics.
--ui Launch the Streamlit web UI after the audit completes. (v0.2.0 preview)
-v, --verbose Enable verbose output.
-V, --version Show version and exit.
-h, --help Show help message and exit.

rda example

Show example usage and sample dataset paths.

rda example

Exit Codes

Code Meaning
0 Audit completed successfully, no EXCLUDE verdicts
1 Error (invalid path, dataset loading failed, etc.)
2 Audit completed successfully, at least one EXCLUDE verdict

Project Structure

rda/
├── cli/          # Click CLI entry points
├── io/           # Data loading and schema definitions
├── metrics/      # Audit metric implementations (12 metrics total)
├── audit/        # Dataset and episode-level audit orchestration
└── report/       # Report generation and summary

docs/             # API documentation and design specs
examples/         # Example scripts
  ├── basic_audit.py       # Core workflow demo (synthetic data ready)
  └── custom_metrics.py    # How to write custom audit metrics
tests/            # 155 unit tests

Documentation

Python API Quick Start

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

dataset_info = load_lerobot_dataset("/path/to/dataset")
auditor = DatasetAuditor()
result = auditor.audit_dataset(dataset_info, iter_episodes("/path/to/dataset"))

report = generate_dataset_report(result)
print(f"DHI: {report['quality']['dhi']} / 100")

See docs/API.md for the complete API reference, or examples/ for runnable scripts.

Development

Running tests

pytest

Linting

pip install -e ".[dev]"
ruff check rda/

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robot_data_audit-0.2.0.tar.gz (72.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robot_data_audit-0.2.0-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file robot_data_audit-0.2.0.tar.gz.

File metadata

  • Download URL: robot_data_audit-0.2.0.tar.gz
  • Upload date:
  • Size: 72.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for robot_data_audit-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b37758062fd609b0ae620409d1a1527e429ce195429ced459a7e1fe2524ec157
MD5 4b7a02cb460e470652474ff22f21fb2e
BLAKE2b-256 f094cbeb94510d8c776a33e1f6541f72fe1d8e2e9f9f7a0d11e66160f08eaa26

See more details on using hashes here.

File details

Details for the file robot_data_audit-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for robot_data_audit-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84801f70917ca8b85e120b35e51407394225d43aceffc164707dbb8b8beda291
MD5 d6a27614401f143ac8e9b0d6579b259e
BLAKE2b-256 4e2a3c9d1161ff4a4d0bf6211669d592de8bff56929dc3543a5690323623e6a5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page