File size: 4,036 Bytes
6544360
 
4bcd044
 
 
 
 
 
 
 
 
 
 
 
6544360
4bcd044
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
---
license: gemma
library_name: transformers
base_model:
- Dexmal/DM05
datasets:
- RoboChallenge/Table30v2
tags:
- robotics
- vision-language-action
- dm05
- opendm
- robochallenge
- ur5
---

# DM05-UR5 (RoboChallenge)

![DM0.5](https://raw.githubusercontent.com/dexmal/opendm/main/docs/image/header.png)

<p align="center">
  <a href="https://www.dexmal.com/blog/dm0.5/index_en.html"><img src="https://img.shields.io/badge/πŸ“–-Tech_Blog-blue" alt="Tech Blog"></a>
  <a href="https://github.com/dexmal/opendm"><img src="https://img.shields.io/badge/GitHub-OpenDM-181717?logo=github" alt="GitHub"></a>
  <a href="https://huggingface.co/datasets/RoboChallenge/Table30v2"><img src="https://img.shields.io/badge/Dataset-Table30v2-0EA5E9?logo=huggingface" alt="Table30v2 Dataset"></a>
  <a href="https://maas.dexmal.com/"><img src="https://img.shields.io/badge/MaaS-Online-brightgreen.svg" alt="MaaS"></a>
</p>


OpenDM-format BF16 checkpoint for **UR5** on RoboChallenge Table 30 v2.
Use with [OpenDM](https://github.com/dexmal/opendm) `third_party/robochallenge_inference`
(`configs/generalist/ur5.yaml`).
See the [DM05 RoboChallenge Table 30 v2 Inference Guide](https://github.com/dexmal/opendm/blob/main/docs/en/dm05_robochallenge.md).

Weights: BF16 `model.safetensors`.

## Model Card

| Field | Value |
| --- | --- |
| Config | `generalist/ur5` |
| Env vars | `UR5_CHECKPOINT` / `UR5_NORM_STATS` |
| OpenDM `robot_type` | `UR5` |
| Control | EEF relative (`single_arm_target=eef`) |
| Cameras | Head / Left wrist |
| Platform cams | `cam_global` β†’ image_0, `cam_arm` β†’ image_1 |
| Native state / action stats | 7 / 7 (action-only quantile `norm_stats.json`) |
| Defaults | `action_horizon=25`, `action_playback_target_steps=0`, `is_history=false`, `ur5_anchor_pitch_zero=true` |

## Table30 Tasks

`arrange_fruits`, `item_classification`, `shred_paper`

From `third_party/robochallenge_inference/configs/generalist/ur5.yaml`:

| Task | Extra runtime |
| --- | --- |
| `arrange_fruits` | `ur5_anchor_roll_pitch_zero=true` (roll→±π, pitch→0) |
| `item_classification` | same |
| `shred_paper` | pitch-only (profile default; no roll lock) |

## Use with OpenDM RoboChallenge Inference

The RoboChallenge client now lives in OpenDM at
`third_party/robochallenge_inference` (`configs/generalist/ur5.yaml`).
See the [DM05 RoboChallenge Table 30 v2 Inference Guide](https://github.com/dexmal/opendm/blob/main/docs/en/dm05_robochallenge.md).

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

cd third_party/robochallenge_inference
export UR5_CHECKPOINT=/path/to/DM05-UR5
export UR5_NORM_STATS=${UR5_CHECKPOINT}/norm_stats.json
pip install -r requirements.txt

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

Override without env vars:

```bash
python execute.py --config-name generalist/ur5 \
  checkpoint=/path/to/DM05-UR5 \
  norm_stats=/path/to/DM05-UR5/norm_stats.json \
  user_id=YOUR_USER_ID \
  submission_id=YOUR_SUBMISSION_ID
```

If `UR5_NORM_STATS` is unset, the client falls back to `${UR5_CHECKPOINT}/norm_stats.json`.


## Runtime Profile

From `third_party/robochallenge_inference/configs/default.yaml` β†’ `robot_profiles.ur5`:

- `action_type=leftpos`, `action_mode=relative`, `single_arm_target=eef`
- `ur5_anchor_pitch_zero=true`, `is_history=false`
- `speed=0.5`, `add_state=true`
- attn: llm/action `sdpa`, vision `flash_attention_2`

## Files

```text
.
β”œβ”€β”€ config.json
β”œβ”€β”€ model.safetensors
β”œβ”€β”€ norm_stats.json
β”œβ”€β”€ tokenizer.json
β”œβ”€β”€ tokenizer_config.json
β”œβ”€β”€ processor_config.json
β”œβ”€β”€ chat_template.jinja
β”œβ”€β”€ generation_config.json
└── README.md
```

## Citation

```bibtex
@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}
}
```