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.3.0.tar.gz (85.9 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.3.0-py3-none-any.whl (73.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: robot_data_audit-0.3.0.tar.gz
  • Upload date:
  • Size: 85.9 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.3.0.tar.gz
Algorithm Hash digest
SHA256 56489ba88f9fe4022e74408f507b4bd644a3dd15233b4c9c2c29bd86791cab28
MD5 cbfd3a04afd5b9ab8956cb90138da8b3
BLAKE2b-256 ecc760ab4a2b6cd0a15f4aae54c1eb435c35860b5e5b42b8047affdacdbbf436

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for robot_data_audit-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 831076ac26eee6c42107157afdf8b0ce8a2bc3761f3828e74a3ffe8ed68085a0
MD5 7e95da7998fa5a1418afd2625529ad96
BLAKE2b-256 4137af0308894dba9bd052716b3656f27a2444a79bdc17d2df641c92c1e25ce8

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