SereneC's picture
Add files using upload-large-folder tool
1e902ec verified
|
Raw History Blame Contribute Delete
9.79 kB
---
license: mit
library_name: pytorch
pipeline_tag: robotics
base_model: InternRobotics/InternW0-Base
tags:
- robotics
- world-model
- robot-learning
- manipulation
- flow-matching
- video-action-model
- robotwin
- InternW0
language:
- en
---
# InternW0-RoboTwin-clean
[![Paper](https://img.shields.io/badge/Paper-arXiv%202609.27656-b31b1b)](https://arxiv.org/abs/2609.27656)
[![Project](https://img.shields.io/badge/Project-InternW0-2f80ed)](https://internrobotics.github.io/internw0)
[![Code](https://img.shields.io/badge/Code-GitHub-181717?logo=github)](https://github.com/InternRobotics/InternW0)
[![Base model](https://img.shields.io/badge/Base-InternW0--Base-6b7280)](https://huggingface.co/InternRobotics/InternW0-Base)
[![Downloads last month](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fhuggingface.co%2Fapi%2Fmodels%2FInternRobotics%2FInternW0-RoboTwin-clean&query=%24.downloads&label=downloads%20last%20month&logo=huggingface)](https://huggingface.co/InternRobotics/InternW0-RoboTwin-clean)
## Model description
**InternW0-RoboTwin-clean** is the task-posttrained InternW0 checkpoint for the
RoboTwin 2.0 **Clean2Random** setting. It is initialized from the heterogeneous
[InternW0-Base](https://huggingface.co/InternRobotics/InternW0-Base) pretraining
checkpoint and posttrained only on clean demonstrations. The selected checkpoint
is then evaluated on clean scenes and unseen randomized scenes.
InternW0 couples a slow Wan2.2-TI2V-5B VideoDiT planner with a fast ActionDiT
executor. Observation-conditioned chunk K/V routing adapts cached future-video
context to each newly observed state, allowing the model to reuse long-horizon
predictions while generating responsive action chunks.
This is a **native `w0` checkpoint**, not a standalone Transformers model. It is
intended for RoboTwin evaluation or compatible continued posttraining.
## Files and integrity
| File | Purpose | Size | SHA-256 |
|---|---|---:|---|
| `InternW0-RoboTwin-clean.pt` | Canonical model-only native checkpoint | 14,705,453,767 bytes | `b718314f57c2febb159deb03d92cf9ebba830f7c75920c0b6e34c4903b91f5a2` |
| `pytorch_model.bin` | Zero-copy LFS alias used for PyTorch download statistics | Same LFS object | `b718314f57c2febb159deb03d92cf9ebba830f7c75920c0b6e34c4903b91f5a2` |
| `config.json` | Machine-readable model/download-counting manifest | 1,702 bytes | `82d8a7a6f25fe14720dc7d6e02136fa02fff0f0b2650a29866eacc4edf275347` |
| `checkpoint_metadata.json` | Embedded behavior/training/statistics/provenance export | 16,176 bytes | `6e4b67d29ca9a369c870f510e9304ffb3e4aec974f6e38a09c35d598c4fbaf54` |
| `normalization.json` | Matching RoboTwin action/proprio statistics | 4,014 bytes | `31362a24460803c5080ef925b807acbc7af3e08d847c9db222bc2a33c0d96653` |
| `posttrain_config.yaml` | Portable public-code posttraining config | 1,661 bytes | `109ca7e501c65e4072060ec7477da2a5486f45aed095ece661714ef92f477f88` |
| `evaluation_config.yaml` | Portable public-code evaluation config | 885 bytes | `89545dbed7a002c3a1e09edf48a3540d30d977e96b89e6fad64ab0b92020fd38` |
| `source_training_config.yaml` | Historical resolved config with portable paths | 6,175 bytes | `6455e1dda379528fe76d5c85e4161bce651286897567bd55ebe2c45c7e9e4312` |
| `source_evaluation_config.yaml` | Historical evaluation reference with portable paths | 7,312 bytes | `6b16dc8583a79d69a253f1b3a367aab072c8dcf24737ece784c9a926d807aff3` |
| `paper_results.json` | Paper-reported Clean2Random result record | 621 bytes | `9396065aded7413f6d4ce0228ac512bb3c97fa0b32157fb8b15f19c1e82ef2cf` |
| `PROVENANCE.md` | Selection, lineage, training, and evaluation provenance | 2,446 bytes | `0cca6d854f5bf6ee3dccd84128584bdae398f9f02e053c016d9d097bd944680a` |
| `LICENSE` | MIT license | 1,205 bytes | `b1d3d0160bdd9748bfc4e8acb9ab8fbce7ab725c827fd6fc673261f57aae0306` |
`pytorch_model.bin` is a second Git-LFS path to the exact same object as
`InternW0-RoboTwin-clean.pt`. It does not duplicate the 14.7 GB payload.
## Checkpoint summary
- Selected step: `10545`
- Serialization dtype: `bfloat16`
- Model-only checkpoint: yes
- Optimizer state: excluded
- Tensors: 1,977
- Parameter elements: 7,352,528,643
- Source heterogeneous pretraining step: `30000`
- Target domain: `robotwin_wam/aloha`
- Target soft prompts: K=8
- Canonical action/proprio dimensionality: 37
- Valid ALOHA joint/gripper slots: 14
- Action horizon: 64
- Action chunk size: 16
- Video plan horizon: 96 action ticks
- Video/action stride: 8
- History frames: 0
- Action semantics: native absolute joint command at interval end
The checkpoint embeds a schema-v4 `behavior_config`, `training_recipe`,
`posttrain_statistics`, and `posttrain_provenance`. The public loader performs a
semantic contract check before loading weights.
## RoboTwin Clean2Random training
The retained recipe uses:
- clean demonstrations only;
- native RoboTwin joint-space data;
- 25 Hz sampling (`sampling_stride=2` from 50 Hz);
- every valid native window;
- ColorJitter with brightness 0.2, contrast 0.2, saturation 0.2, and hue 0;
- action offset 0;
- batch size 12 per process;
- 15 epochs;
- learning rate 3e-5 with cosine decay;
- seed 42.
The matching normalization statistics are in `normalization.json`. The
historical run resumed from step 5,000 of the preceding clean run and selected
step 10,545 from the continued best Clean2Random run. See `PROVENANCE.md` for
the full lineage.
## Evaluation result
The paper-reported RoboTwin 2.0 Clean2Random results are:
| Split | Success rate |
|---|---:|
| Clean | **83.20%** |
| Randomized, unseen during training | **68.00%** |
| Average | **75.60%** |
The source evaluation reference uses 50 tasks, 15 episodes per task, 10
inference steps, a 64-action horizon, four action chunks per video prefill, and
a fixed-period 25 Hz controller. The historical resolved protocol is preserved
in `source_evaluation_config.yaml`.
## Required external assets
This checkpoint is not self-contained. Users must separately obtain and comply
with the licenses for:
```bash
hf download Wan-AI/Wan2.2-TI2V-5B --local-dir assets/wan22
hf download facebook/dinov3-vitb16-pretrain-lvd1689m \
--local-dir assets/dinov3-vitb16-pretrain-lvd1689m
```
A RoboTwin checkout, the matching RoboTwin data export, and its UMT5 text cache
are also required. The repository does not bundle datasets, simulation code,
Wan2.2 files, or DINOv3 weights.
## Quick start
### 1. Install the public codebase
```bash
git clone https://github.com/InternRobotics/InternW0.git
cd InternW0
conda create -n w0 python=3.10 -y
conda activate w0
pip install -U pip setuptools wheel
pip install torch==2.7.1 torchvision==0.22.1 \
--extra-index-url https://download.pytorch.org/whl/cu128
pip install -e .
```
### 2. Download this checkpoint
```bash
hf download InternRobotics/InternW0-RoboTwin-clean \
config.json pytorch_model.bin checkpoint_metadata.json \
normalization.json posttrain_config.yaml evaluation_config.yaml \
source_training_config.yaml source_evaluation_config.yaml \
paper_results.json PROVENANCE.md LICENSE \
--local-dir assets/robotwin
mv assets/robotwin/pytorch_model.bin \
assets/robotwin/InternW0-RoboTwin-clean.pt
```
### 3. Run RoboTwin evaluation
```bash
export W0_WAN_MODEL_DIR="$PWD/assets/wan22"
export W0_DINO_WEIGHTS="$PWD/assets/dinov3-vitb16-pretrain-lvd1689m"
export W0_ROBOTWIN_DATA="$PWD/data/robotwin"
export W0_ROBOTWIN_STATS="$PWD/assets/robotwin/normalization.json"
export W0_ROBOTWIN_CHECKPOINT="$PWD/assets/robotwin/InternW0-RoboTwin-clean.pt"
export ROBOTWIN_ROOT="$PWD/external/RoboTwin"
python experiments/robotwin/eval_robotwin_single.py \
EVALUATION.robotwin_root="$ROBOTWIN_ROOT" \
EVALUATION.task_name=<task> \
EVALUATION.ckpt="$W0_ROBOTWIN_CHECKPOINT"
```
For compatible continued posttraining:
```bash
bash scripts/train_zero1.sh 8 --config-name posttrain_robotwin
```
## Download statistics
Hugging Face uses library-specific query files for model download statistics.
For the `pytorch` library, the Hub counts HTTP `GET` and `HEAD` requests to
`pytorch_model.bin`. This repository provides that path as a zero-copy alias of
the canonical checkpoint. The badge above reads the public Hub API `downloads`
field, corresponding to downloads in the last 30 days. Hub analytics are
aggregated and may lag briefly.
## Intended uses
- RoboTwin 2.0 Clean2Random reproduction and extension.
- Research on world-action models, context routing, and cross-embodiment robot
learning.
- Compatible continued posttraining with the public `w0` codebase.
## Limitations
- This is a simulation-domain research checkpoint, not a deployed robot
controller.
- It requires the public InternW0 codebase, external Wan2.2 and DINOv3 assets,
RoboTwin data, text caches, and substantial compute.
- It is not directly compatible with `transformers.AutoModel`.
- Real-robot use requires independent safety analysis, constrained workspaces,
and human oversight.
## License
The weights and metadata in this repository are released under the
[MIT License](./LICENSE). Third-party assets obtained separately remain subject
to their original licenses.
## Citation
If you use InternW0, please cite:
```bibtex
@article{internw0,
title = {InternW0: A Foundational Physical World Model for Efficient Real-World Interactions},
author = {Jisong Cai and Yao Mu and Ganlin Yang and Zhe Cao and Zhangzheng Tu and Xing Gao and Kailin Li and Xinyu Zhan and Lixin Yang and Yangkun Zhu and Haoxiang Ma and Ming Zhou and Qiaojun Yu and Yufei Xue and Liqun He and Yifei Yao and Yifan Zhu and Long Ling and Bingqi Jiang and Haoyu Guo and Xueyue Zhu and Bowen Zhou and Bin Zhao and Tianfan Xue and Chunhua Shen and Weinan Zhang},
journal = {arXiv preprint arXiv:2609.27656},
year = {2026}
}
```