N0-VTLA - NeoSim Unplug and Plug Charger
Task policy for N0-VTLA, a vision-tactile-language-action model that conditions a flow-matching action expert on predicted latent tactile tokens.
This is a task policy, not a pretrained base. For post-training on your own robot start from n0-vtla-base.
| Config | sim_single_arm_tactile |
| Tactile pathway | enabled, n_latent=5, views (tactile_a, tactile_b) |
| Action space | 8-dim joint |
Single-task policy for the NeoSim phone_socket_replug task.
50% with two retry rounds; 10% on first attempt.
Both numbers use an insertion threshold of -0.006. The threshold published in the simulator,
-0.008, is unreachable: a fully seated plug sits at -7.41 mm, a mechanical stop we observe
across four unrelated policies, so -0.008 rejects every genuine insertion and scores zero for
every policy we have tested.
Serving
VTLA_ASSET_ID=univtac_phone_h50_ctrl_norm \
python scripts/serve_zmq.py --config sim_single_arm_tactile \
--ckpt <this-dir> --addr "tcp://127.0.0.1:5557"
action_horizon is 50; set exec_horizon: 50. Prompt: phone socket replug
Evaluation protocol
Measured on the UniVTAC simulator at commit 695a22d
(branch NeoSim of anlorla/UniVTAC), on held-out seeds
starting at 100. Success criteria on three tasks were tightened after these numbers were
measured, so a success rate on this benchmark is not comparable without the simulator commit
beside it; see
docs/EVAL.md for the details and for
the full evaluation procedure.
Caveat on the tactile pathway
This checkpoint carries the tactile pathway, but this benchmark cannot demonstrate that touch
contributes to the score. Object randomisation is +/-2-5 mm with no domain randomisation, so a
policy that ignores its cameras and its tactile sensors entirely can still score well. Use
scripts/probe_z_tactile_dependence.py to measure the causal contribution yourself.
License
CC BY-SA 4.0, as the parent repository.