Skip to content

Search is only available in production builds. Try building and previewing the site to test it out locally.

The wizard

The basic-mode wizard at /teach is the fastest way to build a brain. It’s structured as five steps, but for most users only step 1 needs explicit input — the rest auto-fill from your capability selection.

Step 1 — Capabilities

The primary unit of choice. A 6-card grid of plain-English capabilities:

  • 🔢 Predict a number — backed by Müller 2022 (PFN reference)
  • 🏷️ Sort into categoriescoming soon (needs TabPFN integration)
  • 📈 Forecast forward — backed by Hoo 2024 (TabPFN-TS), Rakotoarison 2024 (ifBO)
  • 🧪 Pick the next experiment — backed by Müller 2023 (PFNs4BO), Rakotoarison 2024
  • 📉 Extrapolate a partial curve — backed by Adriaensen 2023 (LC-PFN), Rakotoarison 2024
  • 🎯 Show confidence — backed by multiple papers (all PFNs return posteriors)

Multi-select. Picking a capability that requires a different tensor shape than your current selection greys the incompatible cards with a ⚠ “Different shape — picking this will replace your current selection” tooltip. Coming-soon cards are disabled with a ⏳ badge naming the missing study.

A summary panel appears once you’ve picked at least one capability:

  • Picked line lists your selections
  • Plan line describes what’ll be auto-filled: e.g. “We’ll train a Steady brain on Bayesian regression for Standard practise on your laptop (CPU).”

The ⚡ Train now button skips steps 2-5 entirely if all gates pass (works for any practise length except Marathon, which needs a GPU pick).

See Capabilities reference for the full per-capability table and mix rules.

Step 2 — Speciality (auto-filled)

Same surface as the previous wizard had. You’ll see:

  • Three speciality cards (Patterns in numbers / Yes-or-no decisions / Time-series), one pre-selected from your capability choice
  • A sub-grid of starter problem cards (the priors the resolver picked)
  • An Auto-filled from your capabilities banner

Most users never visit this step. If you want to override the prior — pick a different one from the speciality, mix multiple, etc. — this is where you do it. Picking a different prior cascades the auto-fill downstream.

Step 3 — Brain (auto-filled)

Recipe picker + advanced architecture drawer.

Recipes (one is pre-selected based on capability defaults):

  • ⚡ Quick learner — 2 layers, width 32
  • 🧠 Steady thinker — 3 layers, width 64 (default)
  • 🦉 Deep thinker — 6 layers, width 128

Advanced drawer (developer mode) lets you override depth / width / heads independently of the recipe.

Block library (advanced) lets you add extra blocks between the core chain and the heads — RMS norms, MLPs, attention pools, time encodings.

Skills are output heads (number / classification / causal_graph / effect_strength / full_verdict). Auto-picked from the speciality. Each skill maps to a head block in the model spec.

Step 4 — Goal (auto-filled)

Goals are speciality-specific evals that score the trained brain. Each speciality ships defaults marked defaultOn: true:

  • Patterns in numbersBeat a random guesser, Get close to the textbook math-perfect answer (OLS), [opt-in] Beat XGBoost on real benchmark data
  • Yes-or-no decisionsBeat majority-class baseline, Get within a few points of logistic regression, [opt-in] Beat XGBoost
  • Time-seriesHit Sachs AUROC ≥ 0.65, Treatment-effect MSE under 0.2, [opt-in] Root-cause Top-1 ≥ 70%

Each checked goal becomes an EvalSpec on the project. Pretty much always safe to accept defaults; the opt-in goals need a real dataset uploaded.

Step 5 — Practise

Where the run actually gets configured + dispatched.

Practise length picker

Four cards on a row:

LengthStepsComputeWhen
⚡ Quick taste1,000CPUSmoke test the flow
🏃 Standard10,000CPUDefault
🦉 Long study50,000CPULarger brains need this to converge
🏔 Marathon200,000Vast.ai GPUPaper-scale brains

Marathon GPU picker

When Marathon is selected, a Pick a GPU to practise on section appears:

  • Lists your rented Vast.ai instances (the studio fetches on mount + on every refresh)
  • ↻ Refresh button — re-queries the Vast.ai API
  • Each instance card shows GPU model, RAM, location, hourly rate, status pill
  • Auto-selects the first running instance if you haven’t picked one

Empty-state copy links you straight to https://cloud.vast.ai/create/ to actually rent a GPU. See Vast.ai setup for the full setup.

Review card

Recap of every choice from steps 1–5:

  • Speciality, Brain (recipe + depth/width), Goals, Practise length, Compute target

Below the recap a green ⚡ Ready to send banner says you’re good to go; an amber Not quite ready banner lists missing pieces if any.

The footer’s terminal ⚡ Send to practise button creates the project and dispatches the run. You land on /brain/<id> — see The brain page.

How auto-fill works

Each step listens to the wizard state service. When step 1 resolves your capability selection to a {speciality, priorTemplateIds, contract}, the state service:

  1. Calls selectSpeciality(...) — seeds default recipe, goals, skills, blocks
  2. Sets selectedPriorIds to the resolver’s choice
  3. Practise length stays at standard (CPU) — Marathon is opt-in

Subsequent steps render whatever’s in state. Customising on step 3 doesn’t break step 1; the change just propagates forward. Going back to step 1 and picking different capabilities re-runs the resolver and overwrites the downstream auto-fill (after a warning if you’ve customised).