Skip to page content
SAVRN
Search Plan a project

Open-weight model · Robotics

so101ball_diffusion_trimmed_S012_seed3

by Simon Cowling fysical/so101ball_diffusion_trimmed_S012_seed3

so101ball_diffusion_trimmed_S012_seed3 is an open-weight model for robotics from Simon Cowling, released under Apache License 2.0. It has 278M parameters. At 16-bit it needs about 0.7 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot.

Parameters278M
Context—
Weights34.5 GB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads—

Runs On

What it takes to serve so101ball_diffusion_trimmed_S012_seed3 (278M parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 0.6 GB 0.7 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 0.3 GB 0.3 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 0.1 GB 0.2 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 18, 2026.

so101ball_diffusion_trimmed_S012_seed3 on every accelerator the SAVRN Index prices, at every precision

Model Card

By Simon Cowling, published under apache-2.0, revision 8d87f44b6047.

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Read Simon Cowling's full model card

Model Card for diffusion

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation.

This policy has been trained and pushed to the Hub using LeRobot.

See the full LeRobot documentation.


Model Details

  • License: apache-2.0
  • Robot type: so_follower
  • Cameras: front, wrist

Inputs & Outputs

The policy consumes these observation features and produces these action features.

Inputs

Feature Type Shape
observation.state STATE (6,)
observation.images.front VISUAL (3, 480, 640)
observation.images.wrist VISUAL (3, 480, 640)

Outputs

Feature Type Shape
action ACTION (6,)

Training Dataset

  • Repository: fysical/greenball_pool_225_v1_trimmed
  • Episodes: 225
  • Frames: 95940
  • Frame rate: 30 FPS
  • Task(s): "Pick up the green ball and place it in the basket, ignoring the two red distractor balls"

Training Configuration

Setting Value
Training steps 100000
Batch size 64
Optimizer adam
Learning rate 0.0001
Seed 3
LeRobot version 0.6.2

How to Get Started with the Model

New to LeRobot? These guides cover the full workflow:

The short version to run and train this policy:

Run the policy on your robot

lerobot-rollout \
  --strategy.type=base \
  --robot.type=so_follower \
  --robot.port=<your_robot_port> \
  --robot.cameras="{ <camera_1>: {type: opencv, index_or_path: <index_or_path>, width: 640, height: 480, fps: 30}, <camera_2>: {type: opencv, index_or_path: <index_or_path>, width: 640, height: 480, fps: 30}}" \
  --policy.path=fysical/so101ball_diffusion_trimmed_S012_seed3 \
  --task="Pick up the green ball and place it in the basket, ignoring the two red distractor balls" \
  --duration=60

Replace the remaining <...> placeholders with your own values: --robot.port and the camera names/indices are specific to your machine, and the camera names must match the observation keys this policy was trained on.

When --strategy.type=base is used the script doesn't record the episodes. Skipping duration will make the policy run indefinitely. For more information look at rollout documentation.

Train your own policy

lerobot-train \
  --dataset.repo_id=${HF_USER}/<dataset> \
  --policy.type=diffusion \
  --output_dir=outputs/train/<policy_repo_id> \
  --job_name=lerobot_training \
  --policy.device=cuda \
  --policy.repo_id=${HF_USER}/<policy_repo_id> \
  --wandb.enable=true

Writes checkpoints to outputs/train/<policy_repo_id>/checkpoints/.


Evaluation

No evaluation results have been provided for this policy yet.


Citation

If you use this policy, please cite the method linked in the description above, along with LeRobot:

@misc{cadene2024lerobot,
    author = {Cadene, Remi and Alibert, Simon and Soare, Alexander and Gallouedec, Quentin and Zouitine, Adil and Palma, Steven and Kooijmans, Pepijn and Aractingi, Michel and Shukor, Mustafa and Aubakirova, Dana and Russi, Martino and Capuano, Francesco and Pascal, Caroline and Choghari, Jade and Moss, Jess and Wolf, Thomas},
    title = {LeRobot: State-of-the-art Machine Learning for Real-World Robotics in Pytorch},
    howpublished = "\url{https://github.com/huggingface/lerobot}",
    year = {2024}
}

Identity and Version

Repository
fysical/so101ball_diffusion_trimmed_S012_seed3
Publisher
Simon Cowling
Task
Robotics
Modality
Control
Library
lerobot
Parameters
278M parameters
Languages
Not stated by the source
Revision
8d87f44b60478ec0bbff5adf193228f60b2e80b7
First published
2026-10-06
Last updated
2026-10-07

Files and Weights

129 files, 34.5 GB in total. The weights are 53 files totalling 34.5 GB in safetensors.

Weights53 files · 34.5 GB
Configuration74 files · 200.3 KB
Documentation1 file · 5.7 KB
Repository1 file · 1.5 KB
Every file
FileTypeSizeSHA-256
checkpoints/010000/pretrained_model/model.safetensorsWeights1.1 GB 08063d26b996
checkpoints/010000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/010000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/010000/training_state/optimizer_state.safetensorsWeights2.2 GB 7b9eb01e24d6
checkpoints/010000/training_state/rng_state.safetensorsWeights15.7 KB 73c922e8a099
checkpoints/020000/pretrained_model/model.safetensorsWeights1.1 GB cd3829073cd4
checkpoints/020000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/020000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/020000/training_state/optimizer_state.safetensorsWeights2.2 GB 1fa4b2d33846
checkpoints/020000/training_state/rng_state.safetensorsWeights15.7 KB 67599d377a51
checkpoints/030000/pretrained_model/model.safetensorsWeights1.1 GB d1897161e5d2
checkpoints/030000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/030000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/030000/training_state/optimizer_state.safetensorsWeights2.2 GB 0bb2acc71fdc
checkpoints/030000/training_state/rng_state.safetensorsWeights15.7 KB d37f52878cb4
checkpoints/040000/pretrained_model/model.safetensorsWeights1.1 GB 078b450fee3b
checkpoints/040000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/040000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/040000/training_state/optimizer_state.safetensorsWeights2.2 GB 263ad7e5a299
checkpoints/040000/training_state/rng_state.safetensorsWeights15.7 KB 900694cd972b
checkpoints/050000/pretrained_model/model.safetensorsWeights1.1 GB 0c1d9ebb9b17
checkpoints/050000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/050000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/050000/training_state/optimizer_state.safetensorsWeights2.2 GB 5003aa6e57b5
checkpoints/050000/training_state/rng_state.safetensorsWeights15.7 KB 4d9a0a1f26f8
checkpoints/060000/pretrained_model/model.safetensorsWeights1.1 GB 462df73ecfd3
checkpoints/060000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/060000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/060000/training_state/optimizer_state.safetensorsWeights2.2 GB f74b6e2f5fef
checkpoints/060000/training_state/rng_state.safetensorsWeights15.7 KB bcf3e8425607
checkpoints/070000/pretrained_model/model.safetensorsWeights1.1 GB d8fe8f9c9e18
checkpoints/070000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/070000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/070000/training_state/optimizer_state.safetensorsWeights2.2 GB edb11d7f7f92
checkpoints/070000/training_state/rng_state.safetensorsWeights15.7 KB 241697a52b5c
checkpoints/080000/pretrained_model/model.safetensorsWeights1.1 GB 145042fd595f
checkpoints/080000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/080000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/080000/training_state/optimizer_state.safetensorsWeights2.2 GB 4e8e03cc183e
checkpoints/080000/training_state/rng_state.safetensorsWeights15.7 KB fd9193016cb4
checkpoints/090000/pretrained_model/model.safetensorsWeights1.1 GB ba10e4c8f0a9
checkpoints/090000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/090000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/090000/training_state/optimizer_state.safetensorsWeights2.2 GB bc1f651d4c7f
checkpoints/090000/training_state/rng_state.safetensorsWeights15.7 KB 897eebdd13c1
checkpoints/100000/pretrained_model/model.safetensorsWeights1.1 GB 8f77b8254390
checkpoints/100000/pretrained_model/policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
checkpoints/100000/pretrained_model/policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/100000/training_state/optimizer_state.safetensorsWeights2.2 GB 046784f7f28c
checkpoints/100000/training_state/rng_state.safetensorsWeights15.7 KB 9a351a094cf6
model.safetensorsWeights1.1 GB 8f77b8254390
policy_postprocessor_step_0_unnormalizer_processor.safetensorsWeights7.6 KB 89d173ae2282
policy_preprocessor_step_3_normalizer_processor.safetensorsWeights7.6 KB 60f1f17d0edf
checkpoints/010000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/010000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/010000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/010000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/010000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/010000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/010000/training_state/training_step.jsonConfiguration255 B —
checkpoints/020000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/020000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/020000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/020000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/020000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/020000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/020000/training_state/training_step.jsonConfiguration255 B —
checkpoints/030000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/030000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/030000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/030000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/030000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/030000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/030000/training_state/training_step.jsonConfiguration255 B —
checkpoints/040000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/040000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/040000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/040000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/040000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/040000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/040000/training_state/training_step.jsonConfiguration255 B —
checkpoints/050000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/050000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/050000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/050000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/050000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/050000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/050000/training_state/training_step.jsonConfiguration255 B —
checkpoints/060000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/060000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/060000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/060000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/060000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/060000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/060000/training_state/training_step.jsonConfiguration255 B —
checkpoints/070000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/070000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/070000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/070000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/070000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/070000/training_state/scheduler_state.jsonConfiguration256 B —
checkpoints/070000/training_state/training_step.jsonConfiguration255 B —
checkpoints/080000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/080000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/080000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/080000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/080000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/080000/training_state/scheduler_state.jsonConfiguration255 B —
checkpoints/080000/training_state/training_step.jsonConfiguration255 B —
checkpoints/090000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/090000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/090000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/090000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/090000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/090000/training_state/scheduler_state.jsonConfiguration256 B —
checkpoints/090000/training_state/training_step.jsonConfiguration255 B —
checkpoints/100000/pretrained_model/config.jsonConfiguration2.4 KB —
checkpoints/100000/pretrained_model/policy_postprocessor.jsonConfiguration658 B —
checkpoints/100000/pretrained_model/policy_preprocessor.jsonConfiguration1.3 KB —
checkpoints/100000/pretrained_model/train_config.jsonConfiguration8.8 KB —
checkpoints/100000/training_state/optimizer_param_groups.jsonConfiguration5.0 KB —
checkpoints/100000/training_state/scheduler_state.jsonConfiguration239 B —
checkpoints/100000/training_state/training_step.jsonConfiguration256 B —
config.jsonConfiguration2.4 KB —
policy_postprocessor.jsonConfiguration658 B —
policy_preprocessor.jsonConfiguration1.3 KB —
train_config.jsonConfiguration8.8 KB —
README.mdDocumentation5.7 KB —
.gitattributesRepository1.5 KB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
34.5 GB
Download from Simon Cowling

Released by Simon Cowling through its official repository on Hugging Face. Read the license.

Built From

  • Described by arXiv:2303.04137
  • Trained on (disclosed) fysical/greenball_pool_225_v1_trimmed

Memory Requirements

PrecisionWeights in memory
As published34.5 GB
16-bit0.6 GB
8-bit0.3 GB
4-bit0.1 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About so101ball_diffusion_trimmed_S012_seed3

How much GPU memory does so101ball_diffusion_trimmed_S012_seed3 need?

About 0.7 GB at 16-bit and 0.2 GB at 4-bit: the weights (278M parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run so101ball_diffusion_trimmed_S012_seed3 on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use so101ball_diffusion_trimmed_S012_seed3 commercially?

Yes. so101ball_diffusion_trimmed_S012_seed3 is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Open weights apache-2.0 278M parameters lerobot

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Open weights apache-2.0 278M parameters lerobot

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Open weights apache-2.0 278M parameters lerobot

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Open weights apache-2.0 278M parameters lerobot

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full LeRobot documentation. The policy consumes these observation features and produces these action features. Inputs Outputs New to LeRobot? These guides cover the full workflow: - Install LeRobot — set up the lerobot package. - Hardware setup — assemble, wire, and calibrate your robot and cameras. - Record data & train a policy — the end-to-end imitation-learning walkthrough. - CLI cheat-sheet — quick reference for the lerobot- commands. The short…

Open weights apache-2.0 278M parameters lerobot

Diffusion Policy treats visuomotor control as a generative diffusion process, producing smooth, multi-step action trajectories that excel at contact-rich manipulation. This policy has been trained and pushed to the Hub using LeRobot. See the full documentation at LeRobot Docs. For a complete walkthrough, see the training guide. Below is the short version on how to train and run inference/eval: Writes checkpoints to outputs/train/ /checkpoints/. Prefix the dataset repo with eval\ and supply --policy.path pointing to a local or hub checkpoint.

Open weights apache-2.0 266M parameters lerobot