Downloads · 30 days
296
32% of all-time downloads
lerobot/fastwam_robotwin_uncond_3cam_384
fastwam_robotwin_uncond_3cam_384 is a machine learning model from lerobot. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for lerobot.
FastWAM is a Vision-Language-Action policy built on Wan2.2 video-generation components and an action diffusion expert. It predicts continuous robot action chunks from visual observations, proprioception, and language/…
Downloads · 30 days
296
32% of all-time downloads
All-time downloads
914
Public
Parameters
6B
12 GB on disk
Likes
3
Public
Click a slice to open those files.
.safetensors12 GB · 100%
From the Hugging Face model README
FastWAM is a Vision-Language-Action policy built on Wan2.2 video-generation components and an action diffusion expert. It predicts continuous robot action chunks from visual observations, proprioception, and language/task context.
This checkpoint is converted to the Hugging Face / LeRobot fastwam policy format and is intended
for RoboTwin-style manipulation evaluation and fine-tuning.
fastwamWan-AI/Wan2.2-TI2V-5Bobservation.images.image(3, 384, 320)(14,)(14,)3233bfloat16Install LeRobot from a version that includes the fastwam policy:
pip install "lerobot[fastwam]@git+https://github.com/huggingface/lerobot.git"
For full installation details, see the official LeRobot documentation: https://huggingface.co/docs/lerobot/installation
select_actionimport torch
from lerobot.policies.fastwam.modeling_fastwam import FastWAMPolicy
model_id = "<namespace>/fastwam-robotwin-uncond-3cam384"
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
policy = FastWAMPolicy.from_pretrained(model_id, strict=False).to(device).eval()
batch = {
"observation.images.image": torch.zeros(1, 3, 384, 320, device=device),
"observation.state": torch.zeros(1, 14, device=device),
"prompt": "complete the manipulation task",
}
with torch.inference_mode():
action = policy.select_action(batch)
print(action.shape)
FastWAMPolicy.from_pretrained(...) loads the policy weights and the local Wan sidecar components
from this same repository snapshot. It should not download the Wan2.2 backbone separately.
For training or fine-tuning, call forward(...) and use the returned loss key:
policy.train()
outputs = policy.forward(batch)
loss = outputs["loss"]
loss.backward()
The training batch must contain FastWAM-ready tensors such as video, action, context, and
context_mask, or LeRobot observation/action keys that can be adapted by the policy wrapper.
A typical fine-tuning command follows the standard LeRobot training flow:
lerobot-train \
--dataset.repo_id=<your-robotwin-style-dataset> \
--output_dir=./outputs/fastwam_finetune \
--job_name=fastwam_finetune \
--policy.type=fastwam \
--policy.path=<namespace>/fastwam-robotwin-uncond-3cam384 \
--policy.device=cuda \
--steps=100000 \
--batch_size=1
Adjust batch size and sequence settings for available GPU memory.
For RoboTwin evaluation, use your RoboTwin evaluation setup and pass this repository id as the policy path:
python scripts/robotwin/eval_robotwin_fastwam.py \
--policy-path <namespace>/fastwam-robotwin-uncond-3cam384 \
--device cuda
This repository is self-contained for FastWAMPolicy.from_pretrained(...):
config.json
model.safetensors
policy_preprocessor.json
policy_preprocessor_step_2_normalizer_processor.safetensors
policy_postprocessor.json
policy_postprocessor_step_0_unnormalizer_processor.safetensors
Wan2.2_VAE.pth
models_t5_umt5-xxl-enc-bf16.pth
google/umt5-xxl/
robotwin_uncond_3cam_384_dataset_stats.json
The Wan VAE, UMT5 text encoder, and tokenizer are stored beside the FastWAM policy weights.
This checkpoint uses only the migrated Hugging Face / LeRobot serialization format:
config.json, model.safetensors, and local Wan sidecar files. Original FastWAM .pt
checkpoint loading is not required.