| --- |
| license: apache-2.0 |
| language: |
| - en |
| pipeline_tag: robotics |
| library_name: molmobot |
| base_model: allenai/MolmoBot-DROID |
| datasets: |
| - ccwatson/directional_pick_place_simpledesk_diverse_targets_tested40_200demos_20260716_molmobot |
| tags: |
| - molmobot |
| - robotics |
| - manipulation |
| - franka |
| - droid |
| - pick-and-place |
| - spatial-reasoning |
| - left-right |
| - molmospaces |
| - 10000-steps |
| model-index: |
| - name: MolmoBot-DROID Directional Pick/Place SimpleDesk Step 10000 |
| results: |
| - task: |
| type: robotics |
| name: Franka pick-and-place relative left/right |
| dataset: |
| type: ccwatson/FrankaPickAndPlaceRelativeNextToSimpleDeskDiverseTargetsTested40Bench |
| name: MolmoSpaces SimpleDesk Diverse Targets Tested40 |
| split: 40 benchmark episodes |
| metrics: |
| - type: success_rate |
| name: Strict success rate |
| value: 0.625 |
| - type: lax_success_rate |
| name: Lax success rate |
| value: 0.65 |
| --- |
| |
| # MolmoBot-DROID Directional Pick/Place SimpleDesk — Step 10,000 |
|
|
| This repository contains the **10,000-step intermediate checkpoint** from the |
| `lr_custom_16k` MolmoBot finetuning run. It was finetuned from |
| [`allenai/MolmoBot-DROID`](https://huggingface.co/allenai/MolmoBot-DROID) for |
| Franka/FR3 tabletop pick-and-place commands that require placing one object to |
| the **left or right of another object**. |
|
|
| The root `config.yaml` and `model.pt` form the unsharded MolmoBot checkpoint |
| expected by the MolmoBot server. This is not the final 16,000-step checkpoint; |
| the step is deliberately included in both the repository name and this model |
| card. |
|
|
| ## Checkpoint identity |
|
|
| | Field | Value | |
| | --- | --- | |
| | Checkpoint step | **10,000** | |
| | Training run | `lr_custom_16k` | |
| | Checkpoint format | MolmoBot unsharded (`config.yaml` + `model.pt`) | |
| | Base model | `allenai/MolmoBot-DROID` | |
| | Base model revision | `cbe6ec358958d07ddfb20d3aa54e560e9e1b18c9` | |
| | Training W&B run | [`ccwatson/molmobot_finetune/ouuzdjlg`](https://wandb.ai/ccwatson/molmobot_finetune/runs/ouuzdjlg) | |
| | Training Slurm job | `7107997` (`lr-custom-ie-fe-16k-b16-32`) | |
| | Checkpoint created | 2026-07-17 12:11 UTC | |
| | `model.pt` size | 19,992,166,548 bytes | |
| | `model.pt` SHA-256 | `027daf40cbf87cfebc4dcee0aa16b0d6c0a87c2bfb30229ed77f9c1545d600da` | |
| | `config.yaml` SHA-256 | `7eeb51134b93fc17955f3bd850240074d6b9faf3dcf527177861940c7c098400` | |
|
|
| The complete resolved model/trainer configuration is in `config.yaml`. The |
| submission-time environment is preserved as `metadata/training_launch.env`, and |
| machine-readable provenance is in `metadata/provenance.json`. |
|
|
| ## Training data |
|
|
| Training used |
| [`ccwatson/directional_pick_place_simpledesk_diverse_targets_tested40_200demos_20260716_molmobot`](https://huggingface.co/datasets/ccwatson/directional_pick_place_simpledesk_diverse_targets_tested40_200demos_20260716_molmobot) |
| at dataset revision `5446191605f7eb3020983d83f707153d9719ecfb`. |
|
|
| The dataset contains 200 successful scripted trajectories derived from 40 |
| valid benchmark episodes, with five attempts per episode: |
|
|
| | Split | Source episodes | Trajectories | HDF5 files | Videos | |
| | --- | ---: | ---: | ---: | ---: | |
| | Train | 36 | 180 | 180 | 360 | |
| | Validation | 4 | 20 | 20 | 40 | |
|
|
| The two cameras are `droid_shoulder_light_randomization` and |
| `wrist_camera_zed_mini`. Prompts were **not randomized** during training. |
| Normalization was computed from the train split using action quantiles and |
| state min/max statistics for the eight-dimensional Franka action and state |
| vectors. The exact statistics are included as `normalization_stats.yaml` |
| (SHA-256 `972a88e10f02976ce5a4d1c90a2070a62e4daa08a5fe1cecb4ca00e8216eb15d`). |
|
|
| ## Main training settings |
|
|
| | Setting | Value | |
| | --- | --- | |
| | Intended run length | 16,000 steps | |
| | This checkpoint | 10,000 steps | |
| | Device / global batch size | 16 / 32 | |
| | Sequence length | 928 | |
| | Observation frames | 2 | |
| | Observation step delta | 8 | |
| | Maximum images | 4 | |
| | Maximum frames | 1 | |
| | Single-frame preprocessing | false | |
| | Action preset | `franka_joint` | |
| | Camera preset | `franka_droid` | |
| | Action horizon in data | 16 × 8 | |
| | Weighted sampling | enabled | |
| | Prompt randomization | disabled | |
| | Image augmentation | enabled | |
| | LLM finetuning | enabled | |
| | Embedding finetuning mode | `ae` | |
| | Flow timestamps | 8 | |
| | Connector learning rate | `5e-6` | |
| | Vision encoder learning rate | `5e-6` | |
| | LLM learning rate | `1e-5` | |
| | Action expert learning rate | `1e-4` | |
| | Validation interval / max examples | 200 / 200 | |
| | Save and external-eval interval | 2,000 steps | |
| | Trainer and optimizer state | reset from base model | |
| | Hardware | 1× NVIDIA B200, 28 CPUs, 224 GiB host memory | |
|
|
| ## Closed-loop evaluation |
|
|
| This checkpoint was evaluated on all 40 episodes of |
| `FrankaPickAndPlaceRelativeNextToSimpleDeskDiverseTargetsTested40Bench` (20 |
| left and 20 right tasks) through the VLA evaluation harness and MolmoSpaces. |
| The evaluation used natural-language prompts, Filament rendering, 10 parallel |
| shards, a 500-step task horizon, and both DROID cameras. |
|
|
| Server action settings were: |
|
|
| - execution horizon: 8 |
| - state mode: `cross_attn` |
| - maximum joint delta: 0.2 |
|
|
| | Metric | Result | |
| | --- | ---: | |
| | Strict success | **25 / 40 (62.5%)** | |
| | Lax success | 26 / 40 (65.0%) | |
| | Strict oracle-done rate | 25 / 40 (62.5%) | |
| | Lax oracle-done rate | 27 / 40 (67.5%) | |
| | Average episode length | 274.675 steps | |
| | Average successful episode length | 140.08 steps | |
| | Min / max episode length | 32 / 499 steps | |
| | Failed shards | 0 | |
| | Missing / duplicate / unexpected episodes | 0 / 0 / 0 | |
|
|
| The eval completed successfully (`eval_returncode=0`) in 2,016.92 seconds. |
| See the [evaluation W&B run](https://wandb.ai/ccwatson/mlspaces-json-eval/runs/external-eval-lr_custom_16k-step10000), |
| `metadata/external_eval_request.json`, and |
| `metadata/external_eval_result.json` for the complete recorded configuration |
| and result. |
|
|
| ## Repository files |
|
|
| - `model.pt`: unsharded MolmoBot weights. |
| - `config.yaml`: complete resolved model and trainer configuration. |
| - `normalization_stats.yaml`: exact state/action normalization statistics. |
| - `metadata/training_launch.env`: exact experiment launch configuration. |
| - `metadata/external_eval_request.json`: checkpoint identity and requested eval settings. |
| - `metadata/external_eval_result.json`: complete eval result and coverage accounting. |
| - `metadata/provenance.json`: source revisions, hashes, run identity, and artifact inventory. |
|
|
| ## Intended use and limitations |
|
|
| This checkpoint is intended for research evaluation of the matching |
| Franka/FR3 DROID-camera setup and directional SimpleDesk tasks. It should be |
| served with the MolmoBot inference stack and the included normalization stats. |
| It has only been measured on the 40-episode simulated benchmark described |
| above. The 62.5% result is a single benchmark evaluation, not a claim of broad |
| robotic capability or real-world safety. Validate action scaling, cameras, |
| workspace limits, collision handling, and emergency-stop behavior before any |
| physical-robot use. |
|
|
| ## License |
|
|
| This derivative checkpoint follows the Apache-2.0 license declared by the base |
| `allenai/MolmoBot-DROID` model. Users remain responsible for the terms of the |
| base model, training dataset, simulator assets, and other dependencies. |
|
|