--- license: apache-2.0 base_model: robbyant/lingbot-vla-v2-6b tags: [robotics, vla, lingbot-vla-2, maniguard] --- # LingBot-VLA 2.0 — ManiGuard datagen-v1 `clutter` (joint, 2-cam) LingBot-VLA 2.0 post-trained on the ManiGuard `clutter` family, one of five base models evaluated on ManiGuard-Bench under identical data, cameras, and controller. - **Warm start:** [`robbyant/lingbot-vla-v2-6b`]( https://huggingface.co/robbyant/lingbot-vla-v2-6b ) — the **pretrain** release (not the RoboTwin post-trained variant). - **Data:** `IDEAS-Lab-Northwestern/datagen-clutter-v1-joint-5cam` (LeRobot v2.1, consumed directly — no format conversion). - **Inputs:** 2 cameras (`camera_top` = the `left` overview, `camera_wrist_left` = wrist), 8-D joint state (7 arm + gripper) mapped into the 55-D unified vector. - **Actions:** **absolute** joint targets (`subtract_state: false` on both features, per LingBot's own simulation recipe) — apply directly to a JointController, no delta step. - **Recipe:** upstream post-training config unchanged (MoE + depth/DINO distillation on); global batch 256 = micro 32 x 8 GPUs, lr 5e-5 cosine, **2 epochs** (7,100 steps). - **Ladder:** checkpoints every 1,775 steps. ## Files needed to serve Everything a rollout needs is in this repo: | Path | What it is | | --- | --- | | `maniguard/norm_stats.json` | this family's normalization statistics | | `maniguard/robot_config.yaml` | the feature mapping the policy was trained with; its `norm_stats:` points at the file above | | `vlm/config.json` | the [`Qwen/Qwen3-VL-4B-Instruct`](https://huggingface.co/Qwen/Qwen3-VL-4B-Instruct) config (Apache-2.0), vendored unchanged — LingBot builds the VLM skeleton from it before loading these weights | | `tokenizer*.json`, `*preprocessor_config.json`, `merges.txt`, `vocab.json`, `added_tokens.json`, `special_tokens_map.json`, `chat_template.jinja` | the processor / tokenizer, byte-identical to training | Serve it with ManiGuard's shim, which reads all of the above from the checkpoint directory and passes the norm statistics explicitly: ```bash python maniguard/serve/lingbot_native.py \ --checkpoint --qwen-config \ --device cuda:0 --port 8000 ```