Skip to main content

dora-rs node that provides UI to run inference evaluation with OpenArm

Project description

dora-openarm-evaluation-ui

A dora-rs node providing a web UI to run policy (inference) evaluation sessions on the OpenArm bimanual robot.

An operator drives each evaluation episode from the browser; the node orchestrates the rest of the dataflow by emitting:

  • arm_commandstart / stop / quit for the arms and other quittable nodes
  • task_prompt — the current task's language instruction, used to condition the policy

Per-episode results (success/fail and notes) are logged to eval_metadata.yaml.

Features

  • Single-operator episode loop: start → success / fail / cancel → reset → repeat
  • Task switcher with per-task and session success-rate stats
  • Live camera FPS / jitter monitor for all five streams
  • Resume: a restart continues from the next episode number found in existing metadata
  • Checkpoint panel: path, description, capture timestamp
  • Keyboard shortcuts and an emergency stop

Install

pip install -e .        # or: uv sync

dora can also build the node from the dataflow (build: pip install -e .).

Run

The node runs inside a dora dataflow. example/dataflow.yaml is a reference wiring of the UI with the arms, cameras, observer, policy server, and action executor:

dora run dataflow.yaml --uv

The UI is served at http://127.0.0.1:8000 (opens automatically when AUTO_OPEN=yes).

Configuration

Set through the dataflow env: block or via CLI flags:

Env Flag Default Description
DATASET_DIR . Directory holding metadata.yaml and eval_metadata.yaml.
METADATA_FILE --metadata-file Source metadata.yaml with the task list. Required for a new dataset; not needed on resume (tasks are cached in eval_metadata.yaml).
CHECKPOINT_PATH --checkpoint-path Model checkpoint path, recorded once into eval_metadata.yaml.
AUTO_OPEN --auto-open no Open a browser automatically (yes / no).
PORT --port 8000 Web server port.

Task list

Tasks are read from a metadata.yaml (see the included example):

tasks:
  - prompt: Snug the pillow into the case.
    description: SMALL PILLOW

Resolution order: tasks cached in eval_metadata.yaml (resume) → DATASET_DIR/metadata.yaml--metadata-file.

Operating the UI

Each episode follows Idle → Start (the arms initialize and the UI waits for both to report started) → Collecting → Success / Fail / Cancel → Reset Robot (the operator resets the scene, then presses Ready) → Idle. Emergency Stop cancels the current episode and disables the arm motors immediately.

Key Action
Space / s Start (idle) or mark Success (collecting)
f Fail
x Cancel (no result recorded)
r Ready — reset complete
/ Stage previous / next task
Enter Commit the staged task change
q Quit the session

Dataflow interface

Inputs: tick, arm_status_right, arm_status_left, and five camera streams (camera_wrist_right, camera_wrist_left, camera_head_left, camera_head_right, camera_ceiling).

Outputs: arm_command, task_prompt.

eval_metadata.yaml records the checkpoint info, the task list, and one entry per episode (id, task_index, success, note, timestamp).

License

Licensed under the Apache License 2.0. See LICENSE for details.

Copyright 2026 Enactic, Inc.

Code of Conduct

All participation in the OpenArm project is governed by our Code of Conduct.

Project details


Download files

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

Source Distribution

dora_openarm_evaluation_ui-0.1.0.tar.gz (21.0 kB view details)

Uploaded Source

File details

Details for the file dora_openarm_evaluation_ui-0.1.0.tar.gz.

File metadata

File hashes

Hashes for dora_openarm_evaluation_ui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ce46d7e6d3631991160d6048160ab834fc0fa33e620bff66462953a9154bd934
MD5 2d7bbe651031a67717d81b15995c0ca5
BLAKE2b-256 cdabc71a1ca8a35ba04ff967697ca2d2eae2a63ab031349032bd8a9c9a0cf5ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for dora_openarm_evaluation_ui-0.1.0.tar.gz:

Publisher: package.yaml on enactic/dora-openarm-evaluation-ui

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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