BridgeQuant-Async — LIBERO-Object 100.0%

Full-finetuned 480M VLA (LFM2.5-VL-450M backbone + BridgeConnector + BridgeActionHead). 200/200 episodes solved.

suite this repo GR00T N1.7 (2B, 12.8M samples)
Object 100.0 98.45
Spatial 98.0 (separate repo) 97.65
Goal 95.0 (separate repo) 97.50
Long 94.0 (separate repo) 94.35
mean 96.75 97.00

Protocol: seed 42, 200 episodes (20 per task × 10 tasks), synchronous rollout, n_action_steps=8, one Euler denoising step, raw (non-EMA) bundle.

Recipe

train_mode: finetune, lr 5e-5, 30k steps, batch 16, vision 512px, GR00T-style augmentation, taps [0, 6, 12, 15], 64 role queries, memory rank 256, chunk 16, flow matching with Beta(1.5, 1) time sampling, num_steps 1.

Object-specific: a small language-contrastive auxiliary (in-batch InfoNCE, weight 0.05, pooled z_bridge against frozen text anchors). This suite is the one place where an extra shaping objective helps: plain full finetune scores 93.0 here, langnce takes it to 100.0 (+7.0) and transition oversampling to 98.5 (+5.5). Elsewhere the same signals cost points — on LIBERO-Long the InfoNCE objective drops the suite to 55.0. The useful amount of extra shaping scales with how much slack the latent still has: Object's tasks are single-phase with visually distinct targets, so there is capacity to spend; Long's are multi-phase and every added constraint evicts a rare skill.

Async deployment

Same weights under the asynchronous runtime (cached bridge latent, ~5 ms replan): 100.0 with --context-refresh-every 4, and 99.0 under the unified controller shared by all four suites (K=8, refresh 2, --precision-refresh --precision-refresh-approach --precision-refresh-uncertainty).

Eval

uv run python scripts/eval_libero_object.py \
  --config train_config.yaml --checkpoint <this-dir> \
  --n-action-steps 8 --episodes-per-task 20

The eval suite must match the training suite or success rate is 0%.

Downloads last month
8
Safetensors
Model size
0.5B params
Tensor type
F32
·
BF16
·
Video Preview
loading