Spiral Logo

Query everything

Run on signal, not noise.

Petabytes in, signal out. Query what matters across every modality, at every scale, straight from object storage. Make each training dataset a testable hypothesis, and keep each experiment reproducible and reversible. Build better models and evals.

object 3 mm/sforce 0.4 Nangle 28°
episode_7f31c2 · t+2.0ssignal_activity > 0.12 nominal-grasps@v41 · 81,006 of 840,000 moments

Iterate on training datasets as fast as you do on code.

Spiral gives you lightning-fast queries for exploration, and GPU-saturating throughput for training.

Skild reports spending $3 on quality control for every $1 of data collection. S1.Mixing 93 clean-looking episodes into GR00T training cut closed-loop success from 73% to 43%; offline loss never moved. Pebblous.
training input · localuntracked

datasets/

failed_grasps_v3/

failed_grasps_v3_rebalanced/

failed_grasps_v3_rebalanced_final/

full export

840k moments

notebooks/

score_failures_v2.ipynb

last run unknown

checkpoint_18400dataset definition → missing

Signals → Sets

Expand from one sample to an improved training set.

Investigate the episode, enrich the archive, curate the matches, train against the result. Run queries on your data in-place, and automatically version intermediate work. Make each experiment build on the last.

Teams run this loop by hand: Chef Robotics reports 56 on-policy runs took assembly success from 75% to 91.3%. Physical AI, part 3.
01

Investigate

“Find every failure like this one.”

Start with one surprising interval: a failed grasp or a regressed eval slice. Search synchronized video, actions, state, force, and model output together to recover matches, near-misses, and baselines across the population.

Seed moment from a failed robot graspseed · t+7.9s

population search

2,684

related moments across 840,000 episodes

02

Enrich

Make hidden behavior queryable.

Turn behavior you can see into named, versioned signals you can query. Tracks, contact, slip, and recovery retain their provenance and declared grain.

Raw camera frame of a robot gripper beside a wine glass
YOLO11 object-detection output identifying the wine glass
AnyDepth relative-depth output for the same camera frame
03

Curate

Build the exact set the model needs.

Compose signals into a reviewed boundary. Keep the population, supporting evidence, checks, and exact membership attached as the cohort and its underlying data change.

contact_duration≥ 500 ms
slip_distance> 15.0 mm
commanded_release= false
modelprogress_score @ rm_v2
>= 0.72
840,000 moments9,412 match · v12
04

Train

Stream the result directly to GPUs.

Consume the cohort by name and version. Mix exact selections and stream aligned windows into your training loop, without another export.

Python · direct delivery
query = (
    db.mix(
        ("failed-grasp-regressions", "v12", 0.3),
        ("nominal-grasps", "v41", 0.7),
    )
    .shuffle(buffer_size=4096, seed=47, epoch=epoch)
)

for batch in query.to_torch(device="cuda", batch_size=16):
    policy.update(batch["frames"], batch["state"])
4 ranks · deterministic · no export

Machine-scale, multiplayer-ready

Build a better learning machine.

Spiral keeps every iteration of the loop versioned, reversible, and shareable, so nothing learned is lost and nothing is learned twice.

Leading open models publish weights, not training data. FineWeb, NeurIPS 2024.
journal · main12 weeks · 3 people · 1 agent
Journal commit graph
  1. failed-grasp-regressions v13 published

    maya · +214 −87 vs v12 · checks 12/12 · tag v13

  2. merge maya/rebalance

    maya · near-misses sampled 2×

  3. drop all recovery demos

    scan-agent · closed-loop dipped · discarded · scratch/no-recovery

  4. 87 held at the cut flagged: glare, not slip

    maya · recheck before we publish

  5. rebalance: sample near-misses 2×

    maya · maya/rebalance

  6. eval holdout frozen

    priya · no_eval_overlap · pass · tag eval-v4

  7. slip_distance v3 recomputed corpus-wide

    jun · tracker_v3 · depth_v5 · 840k moments

How Spiral works.

A storage and query engine for compressed, multimodal data. From creators of Vortex

Multimodal engine

Query across every modality, at every scale.

Your storage

Read from and write to the bucket you already have.

In-place queries

Iterate fast without ingesting.

GPU data loading

Saturate your GPUs without staging a byte.

Open Storage

Built on Vortex, the fastest open-source storage format, by every metric.

Time travel

Re-run a query against the exact commit, tag, or branch behind a result.

Connect your data.

Trace the moment, find the population, inspect the selection.

We onboard a few teams at a time, and we partner deeply with people building the future.