Skip to content

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.

  • 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_SIZE env 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 torchrun with 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_box on Hugging Face), with the dataset path supplied via DATA_ROOT [§Dataset].
  • Codebase is acknowledged to borrow from openpi (Physical Intelligence), Qwen-VL, and RoboChallengeInference [§Acknowledgments].

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.

  • #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.

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.