Views
No views yet
model.safetensors), converted from the JAX/orbax training checkpoint.mkpongm/pi0-sponge-marker-10k (stage-1 pi0, 10k steps)state_dropout_prob=0.2[0:6]
(state_dropout_dim=6); the padded dims [6:32] are exactly zero, matching how real
state is zero-padded from 6 → action_dim=32.null_state_token — shape (32,), with
dims [6:32] zero. Verified identical to the JAX source (max abs diff ~1.7e-6).state_proj. Both branches use the same converted weights:| branch | state fed to the model |
|---|---|
| with proprioception | the real robot state, zero-padded 6 → 32 |
| without proprioception | model.null_state_token (32-dim), broadcast to batch |
1# null (no-proprioception) branch:
2state = model.null_state_token.unsqueeze(0).expand(batch_size, -1)model_type == PI0), so openpi uses the
mean/std branch of Normalize, not quantile or min-max. Stats come from
assets/mkpongm/sponge_marker_merged/norm_stats.json (shipped here).(x - mean) / (std + 1e-6)x * (std + 1e-6) + mean