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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

robot_data_audit-0.4.11-py3-none-any.whl (119.9 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for robot_data_audit-0.4.11-py3-none-any.whl
Algorithm Hash digest
SHA256 53b945b239f6980605666d864c41cf86a8143500c775089e6630feac0ad86675
MD5 51a23a85d2e46e1c69abda1df690d7ba
BLAKE2b-256 faa0ed2d0ba9ff1330e7893d8c95ef436549803614d714e1ee77000de867743a

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