DM05-Table30v2-W1

26 downloads 0 likes on Hugging Face updated

Model card

DM05-W1 (RoboChallenge)

DM0.5

Tech Blog GitHub Table30v2 Dataset MaaS

OpenDM-format BF16 checkpoint for DOS W1 on RoboChallenge Table 30 v2. Use with OpenDM third_party/robochallenge_inference (configs/generalist/w1.yaml). See the DM05 RoboChallenge Table 30 v2 Inference Guide.

Weights: BF16 model.safetensors.

Model Card

Field Value
Config generalist/w1
Env vars W1_CHECKPOINT / W1_NORM_STATS
OpenDM robot_type DOS W1
Control Joint relative
Cameras Head / Left wrist / Right wrist
Platform cams cam_high → image_0, cam_left_wrist → image_1, cam_right_wrist → image_2
Native state / action stats 14 / 14 (state + action quantile norm_stats.json)
Defaults action_horizon=25, is_history=false

Table30 Tasks

fold_the_clothes, hold_the_tray_with_both_hands, place_objects_into_desk_drawer, put_in_pen_container, put_the_shoes_back, stack_bowls, sweep_the_trash, tidy_up_the_makeup_table, tie_a_knot, untie_the_shoelaces

Per-task horizon overrides: third_party/robochallenge_inference/configs/generalist/w1.yaml → task_overrides (several tasks use 30). Gripper post-process: third_party/robochallenge_inference/policies/output_tricks.py → apply_w1_gripper_trick.

Use with OpenDM RoboChallenge Inference

The RoboChallenge client now lives in OpenDM at third_party/robochallenge_inference (configs/generalist/w1.yaml). See the DM05 RoboChallenge Table 30 v2 Inference Guide.

# From the OpenDM repository root.
export OPENDM_ROOT=/path/to/opendm
pip install -e ".[fast-infer]"

cd third_party/robochallenge_inference
export W1_CHECKPOINT=/path/to/DM05-W1
export W1_NORM_STATS=${W1_CHECKPOINT}/norm_stats.json
pip install -r requirements.txt

python execute.py --config-name generalist/w1 \
  user_id=YOUR_USER_ID \
  submission_id=YOUR_SUBMISSION_ID

Override without env vars:

python execute.py --config-name generalist/w1 \
  checkpoint=/path/to/DM05-W1 \
  norm_stats=/path/to/DM05-W1/norm_stats.json \
  user_id=YOUR_USER_ID \
  submission_id=YOUR_SUBMISSION_ID

If W1_NORM_STATS is unset, the client falls back to ${W1_CHECKPOINT}/norm_stats.json.

Runtime Profile

From third_party/robochallenge_inference/configs/default.yaml → robot_profiles.w1:

  • action_type=joint, action_mode=relative
  • is_history=false, add_state=true, speed=0.5
  • attn implementations: auto

Files

.
├── config.json
├── model.safetensors
├── norm_stats.json          # includes state + action
├── tokenizer.json
├── tokenizer_config.json
├── processor_config.json
├── chat_template.jinja
├── generation_config.json
└── README.md

Citation

@misc{dm05,
    title  = {{DM0.5}: An Open-World Foundation Model for General-Purpose Embodied Intelligence},
    author = {{Dexmal Team}},
    month  = {July},
    year   = {2026},
    url    = {https://www.dexmal.com/blog/dm0.5/index_en.html}
}