Spirit-v1.5: A Robotic Foundation Model by Spirit AI
Spirit-v1.5 is an open-weights Vision-Language-Action (VLA) robotic foundation model from Spirit AI, built on a Qwen3-VL backbone with a DiT (diffusion transformer) action head producing action chunks (default chunk size 60) from current observations plus natural-language task descriptions. The repo ships inference code, FSDP training/fine-tuning code, a base checkpoint and a task-specific fine-tuned checkpoint (move-objects-into-box) on Hugging Face, and a packaged RoboChallenge runtime wrapper. As of Jan 11 2026, Spirit-v1.5 ranks #1 on the RoboChallenge Table30 benchmark. Tested on A100-80GB; recommended fine-tuning setup is 8× A100-80GB. Ben posted the v1.5 repo because Spirit’s later release (parent thread) had no public code or tech report yet.
Key claims
Section titled “Key claims”- Spirit-v1.5 is a VLA model that accepts current observations + textual task descriptions and outputs the next action chunk for robot execution [§Intended Uses].
- Architecture is a Qwen3-VL backbone paired with a DiT action head behind a unified policy API in
model/modeling_spirit_vla.py[§Directory Structure]. - Default action chunk size is 60, exposed via the
USED_CHUNK_SIZEenv var; smaller/larger chunks supported but 60 is the shipped default for RoboChallenge runs [§Environment Configuration]. - Two checkpoints are released on Hugging Face: a base model (
Spirit-AI-robotics/Spirit-v1.5) and a task-specific fine-tune (Spirit-v1.5-for-RoboChallenge-move-objects-into-box) [§Model Checkpoints]. - Training stack is PyTorch FSDP via
torchrunwith gradient checkpointing; recommended hardware is 8× A100-80GB and the default schedule is 40,000 steps at batch size 32 per GPU [§Distributed Training, §Environment Variables]. - The shipped runtime includes a RoboChallenge HTTP client and job-polling worker (
robochallenge/robot/) so the model can be plugged directly into the benchmark’s evaluation server [§Directory Structure]. - The release claims #1 ranking on RoboChallenge Table30 as of 2026-01-11 [§Top of README,
assets/rc_results.png]. - Fine-tuning data follows the RoboChallenge dataset format (e.g.
RoboChallenge/task_table30_move_objects_into_boxon Hugging Face), with the dataset path supplied viaDATA_ROOT[§Dataset]. - Codebase is acknowledged to borrow from openpi (Physical Intelligence), Qwen-VL, and RoboChallengeInference [§Acknowledgments].
Method
Section titled “Method”Spirit-v1.5 follows the now-common VLA recipe: a frozen-ish vision-language backbone (Qwen3-VL) consumes camera observations + a natural-language instruction, and a diffusion-transformer action head decodes a chunk of future actions (default 60 timesteps). The shipped pipeline normalizes observations via utils/normalization.py, samples action chunks via utils/sampling.py, and exposes a single inference entrypoint (run_robochallenge.py) that wraps a RoboChallengeExecutor for checkpoint loading and chunked inference plus an HTTP client + job worker for the benchmark’s evaluation protocol.
Fine-tuning uses PyTorch FSDP via torchrun on the shipped dataset format (dataset/dataset.py + dataset/transforms.py), with knobs for batch size, max steps, prefetch factor, and W&B logging surfaced as env vars. The release explicitly markets the fine-tuned move-objects-into-box checkpoint as the artifact behind its #1 RoboChallenge Table30 result.
Results
Section titled “Results”- #1 on RoboChallenge Table30 benchmark as of 2026-01-11 (no per-task numbers in README; results figure embedded as
assets/rc_results.png). - No quantitative benchmarks beyond the RoboChallenge claim are reported in the repo; the linked Spirit AI blog (“Clean Data Is the Enemy of Great Robot Foundation Models”) is the official technical write-up but is not mirrored in the repo.
Why it’s interesting
Section titled “Why it’s interesting”A new datapoint in the open-VLA cluster the wiki has been tracking: complements LingBot-VLA: A Pragmatic VLA Foundation Model (Ant Group’s 4B VLA on a Qwen2.5-VL backbone) by reusing the same Qwen-VL + diffusion-action-head recipe but pairing it with a public benchmark-leader claim (RoboChallenge Table30 #1) rather than a generalist pitch. Contrasts with π*0.6: a VLA That Learns From Experience (RECAP) (π0.6 with RECAP) on the post-training axis — π0.6 is the iterated-offline-RL VLA story, Spirit-v1.5 is the FSDP-supervised-fine-tune-then-benchmark story — and both sit downstream of the recipe Physical Intelligence open-sourced in π0.7: A Steerable Robotic Foundation Model with Emergent Compositional Generalization / openpi, which Spirit-v1.5 explicitly credits in its acknowledgments. Also worth filing against Gemini Robotics 1.5 brings AI agents into the physical world as a closed-frontier comparison.
Notable on the release-package axis tracked in Open foundation-model releases: the package ships base + task-specific checkpoint + inference code + training code + benchmark-runtime wrapper + dataset reference — the same “multi-component release for downstream adoption” pattern, applied to robotics rather than LLMs/image-gen.
See also
Section titled “See also”- LingBot-VLA: A Pragmatic VLA Foundation Model — sibling open VLA on a Qwen-VL backbone; LingBot is generalist over 9 task categories, Spirit-v1.5 is benchmark-focused
- π*0.6: a VLA That Learns From Experience (RECAP) — Physical Intelligence’s RECAP post-training for VLAs; same flow-matching/DiT-head family of action heads
- π0.7: A Steerable Robotic Foundation Model with Emergent Compositional Generalization — π0.7 steerable robotic foundation model; openpi (linked by Spirit-v1.5 as code ancestor)
- Gemini Robotics 1.5 brings AI agents into the physical world — Gemini Robotics 1.5 VLA from Google DeepMind, closed-frontier counterpart
- Advancing Open-source World Models (LingBot-World) — LingBot-World open robotic world model, same group as LingBot-VLA
- Open foundation-model releases — release-packaging conventions across modalities; Spirit-v1.5 is the robotics datapoint
- World Foundation Models — adjacent space; VLAs are foundation policies, distinct from generative WFMs but both are pretrained-prior-over-physical-world systems