---
title: diffusion_pusht
canonical_url: "https://www.modelscope.cn/models/lerobot/diffusion_pusht"
md_url: "https://www.modelscope.cn/models/lerobot/diffusion_pusht.md"
repository: lerobot/diffusion_pusht
last_updated: 2025-03-06
license: apache-2.0
pipeline_tag: robotics
tasks:
  - robotics
parameters: 262.7M
tensor_type:
  - F32
library_name:
  - safetensors
  - pytorch
frameworks:
  - pytorch
downloads: 924
stars: 0
tags:
  - diffusion-policy
  - model_hub_mixin
  - pytorch_model_hub_mixin
  - robotics
---

# diffusion_pusht

> diffusion_pusht - lerobot 在 ModelScope 开源的模型。Model Card for Diffusion Policy / PushT

lerobot/diffusion_pusht 是 ModelScope 魔搭社区上的 262.7M 参数robotics模型，采用 apache-2.0 许可。

- **Repository**: lerobot/diffusion_pusht
- **License**: apache-2.0
- **Tasks**: robotics
- **Parameters**: 262.7M
- **Tags**: diffusion-policy, model_hub_mixin, pytorch_model_hub_mixin, robotics
- **Downloads**: 924
- **Stars**: 0
- **Last updated**: 2025-03-06

Source: https://www.modelscope.cn/models/lerobot/diffusion_pusht

---

# Model Card for Diffusion Policy / PushT

Diffusion Policy (as per [Diffusion Policy: Visuomotor Policy
Learning via Action Diffusion](https://arxiv.org/abs/2303.04137)) trained for the `PushT` environment from [gym-pusht](https://github.com/huggingface/gym-pusht).

## How to Get Started with the Model

See the [LeRobot library](https://github.com/huggingface/lerobot) (particularly the [evaluation script](https://github.com/huggingface/lerobot/blob/main/lerobot/scripts/eval.py)) for instructions on how to load and evaluate this model.

## Training Details

Trained with [LeRobot@3c0a209](https://github.com/huggingface/lerobot/tree/3c0a209f9fac4d2a57617e686a7f2a2309144ba2).

The model was trained using [LeRobot's training script](https://github.com/huggingface/lerobot/blob/main/lerobot/scripts/train.py) and with the [pusht](https://huggingface.co/datasets/lerobot/pusht) dataset, using this command:

```bash
python lerobot/scripts/train.py \
    --output_dir=outputs/train/diffusion_pusht \
    --policy.type=diffusion \
    --dataset.repo_id=lerobot/pusht \
    --seed=100000 \
    --env.type=pusht \
    --batch_size=64 \
    --steps=200000 \
    --eval_freq=25000 \
    --save_freq=25000 \
    --wandb.enable=true
```


The training curves may be found at https://wandb.ai/aliberts/lerobot/runs/s7elvf4r.
The current model corresponds to the checkpoint at 175k steps.

## Evaluation

The model was evaluated on the `PushT` environment from [gym-pusht](https://github.com/huggingface/gym-pusht) and compared to a similar model trained with the original [Diffusion Policy code](https://github.com/real-stanford/diffusion_policy). There are two evaluation metrics on a per-episode basis:

- Maximum overlap with target (seen as `eval/avg_max_reward` in the charts above). This ranges in [0, 1].
- Success: whether or not the maximum overlap is at least 95%.

Here are the metrics for 500 episodes worth of evaluation. The "Theirs" column is for an equivalent model trained on the original Diffusion Policy repository and evaluated on LeRobot (the model weights may be found in the [`original_dp_repo`](https://huggingface.co/lerobot/diffusion_pusht/tree/original_dp_repo) branch of this respository).

<blank>|Ours|Theirs
-|-|-
Average max. overlap ratio | 0.955 | 0.957
Success rate for 500 episodes (%) | 65.4 | 64.2

The results of each of the individual rollouts may be found in [eval_info.json](eval_info.json).
It was produced after training with this command:
```bash
python lerobot/scripts/eval.py \
    --policy.path=outputs/train/diffusion_pusht/checkpoints/175000/pretrained_model \
    --output_dir=outputs/eval/diffusion_pusht/175000 \
    --env.type=pusht \
    --eval.n_episodes=500 \
    --eval.batch_size=50 \
    --device=cuda \
    --use_amp=false
```
