Benchmarks And Data

OpenWAM keeps benchmark-specific loading behind adapters while exposing one uniform model-facing batch contract.

Supported Sources

Source Status Primary use
Public tiny synthetic Checked-in fixture CI-safe loader/eval contract smoke tests.
LIBERO Dataset and simulator paths Manipulation policy training, evaluation, and realtime rollout experiments.
RoboTwin Dataset and simulator adapter path Simulated robotic manipulation with configurable action schema.
CALVIN Dataset and simulator adapter path Simulated language-conditioned manipulation with 7D relative actions.
LeRobot consortium Heterogeneous multi-repository dataset adapter Mixed-source training with explicit camera, action, and sampling contracts.

Private datasets, local simulator checkouts, and large checkpoints should be provided through the local path registry, not hard-coded in public configs.

LIBERO Training Prerequisites

Maintained latent-local LIBERO training configs need inputs that a latent dataset root does not contain on its own.

Input Registry key Required by Where it comes from
Pre-encoded latent root paths.datasets.libero_root all Wan-VAE encoding of the LIBERO episodes.
Previous-frame condition latents inside each latent payload shipped policy programs and GJD scripts/augment_lerobot_latents_with_single_frame_condition.py --source-frame-offset -1.
Empty text embedding paths.datasets.empty_text_embedding all Negative-prompt embedding shared by latent-local datasets.
Replay-status labels paths.datasets.libero_replay_status_path configs with require_replay_status: true Simulator replay labeling, merged by scripts/build_libero_replay_metadata.py. Not shipped inside the dataset root.

Shipped policy-program and GJD configs use include_all replay rows and set both replay-status requirements to false. Historical exact-backend compatibility profiles may still require replay labels for their successful/failure split; check the selected config rather than assuming either behavior.

The shipped sequence contract sets condition_source_frame_offset=-1 and fails closed when the payload lacks matching condition latents. Existing video latents are reused; the augmentation command adds only the deterministic previous-frame condition field. Run a bounded --max-files smoke with --sanity-check before processing a full root.

See configs/local_paths.sample.yaml for the generating command and its argument-shape caveats.

Dataset adapters may declare required files and directories through the shared artifact-preflight contract. Training checks those requirements before model construction and reports the owning config field, expected filesystem shape, and remediation. Extensions can register the same resolver contract alongside their raw or latent dataset builder; benchmark checks do not belong in the trainer.

LeRobot Consortium Snapshot

The consortium adapter validates configured remote repository IDs against a bounded metadata snapshot. Wheels carry that snapshot as read-only package resources, so validation works without a source checkout. A discrepancy warns about missing or stale metadata; it never writes into site-packages.

Maintainers refreshing the index from a source checkout use scripts/build_lerobot_consortium_index.py. To work against a separate writable snapshot, set OPEN_WAM_CONSORTIUM_INDEX_ROOT=/absolute/index/root before the adapter is imported. The directory must contain the repo-ID list, inventory CSV/Markdown, and contracts JSON under their canonical filenames. Dataset and video content are still resolved by the adapter's normal local/remote source configuration; the packaged index is metadata only.

Action Dimensions

Benchmarks expose different native action spaces. The model-facing action dimension is configured separately from the source action dimension.

Benchmark Common source action Model-facing examples
LIBERO 7D EEF delta plus gripper 7D or sparse 30D mapping depending on config.
RoboTwin 16D or 30D modes Native 16D, native 30D, or mapped sparse 30D.
CALVIN 7D rel_actions Native 7D or sparse 30D compatibility mapping.

Action mapping should be explicit in the dataset adapter/config. A model should not infer missing dimensions silently.

Visual Layout

The data layer builds canonical RGB layouts before the visual backbone sees the batch. Public configs should make these choices visible:

  • camera names
  • camera count
  • frame window
  • target image size
  • layout policy
  • channel order

This keeps visual packing controlled across methods and benchmarks.

Public Fixture

The public tiny synthetic fixture exists to test infrastructure, not model quality. It is useful for:

  • static config validation
  • loader construction
  • CPU eval smoke checks
  • artifact manifest layout validation
  • new contributor onboarding

Run it with:

openwam-validate-config \
  configs/examples/public_tiny_synthetic_contract.yaml \
  configs/evals/public_tiny_synthetic_contract.yaml

openwam-eval \
  --cfg configs/evals/public_tiny_synthetic_contract.yaml \
  --device cpu \
  --max-batches 1

Publish policy-quality claims through versioned experiment cards with current artifacts and complete evaluation contracts.