ForceVLA Flexiv Tactar June26 quaternion+effort checkpoint - step 19999
ForceVLA / pi0-guidance checkpoint fine-tuned on the
real_single_flexiv_tactar_june26 LeRobot dataset.
- Training config:
forcevla_lora_real_single_flexiv_tactar_june26_quat_effort - Checkpoint step:
19999from a 20 000-step run - Base weights: OpenPI
pi0_base - Images: external camera + left wrist + right wrist as configured in ForceVLA
- State representation: xyz + quaternion(wxyz) + gripper + 6D effort, padded to 32 dims
- Action representation: delta xyz + relative rotation vector + gripper, padded to 32 dims
- Important flags:
use_full_state=True,quat_rotvec_actions=True,effort_key=observation.effort - Assets:
assets/real_single_flexiv_tactar_june26/norm_stats.json - Upload format: inference-only Orbax JAX checkpoint:
params/+assets/+_CHECKPOINT_METADATA
train_state/ is intentionally not uploaded because it contains optimizer state and is not needed for inference.
Download
huggingface-cli download magic0/forcevla-flexiv-tactar-june26-quat-effort --local-dir ./checkpoints/forcevla_quat_effort_19999
Load in ForceVLA/OpenPI
Point checkpoint_dir at the directory containing params/ and assets/.
Do not point it directly at params/.
from openpi.training import config as _config
from openpi.policies import policy_config
train_config = _config.get_config("forcevla_lora_real_single_flexiv_tactar_june26_quat_effort")
policy = policy_config.create_trained_policy(
train_config,
"./checkpoints/forcevla_quat_effort_19999",
)
If your inference server exposes an explicit asset id argument, use:
--asset_id real_single_flexiv_tactar_june26
Internally, loading uses:
- weights:
openpi.models.model.restore_params(checkpoint_dir / "params", dtype=jnp.bfloat16) - normalization:
checkpoint_dir / "assets" / "real_single_flexiv_tactar_june26" / "norm_stats.json"