Train your first policy

Your dataset is uploaded. Training itself is the easy part, the platform handles the GPU. The skill is in choosing sensibly and in reading the result without fooling yourself.

Step 3 of 4 · 15 min · intermediate · Last updated 2026-08-07

Pick the smallest thing that could work

For a first run on fifty episodes of one task, use ACT. It trains quickly, needs little data, and if it fails you learn something about your dataset rather than about your hyperparameters.

PolicyTrain time on 50 episodesUse when
ACTWell under an hourFirst run, single task, want an answer today
Diffusion PolicyA few hoursSeveral valid ways to do the task
SmolVLAA few hoursYou want language conditioning
GR00T fine-tuneLonger, needs more dataYou want generalisation and have episodes to spare
Resist the largest model on your first run

Fine-tuning a foundation model on fifty episodes will usually underperform ACT on the same data and take much longer to tell you. Prove the data is good first.

Start the run

Training runs on a rented cloud GPU, so it is started from the web dashboard rather than from the CLI: open Training, pick the dataset, pick the policy, review the defaults and press Start. You land on the run page, which shows live loss, learning rate, gradient norm and GPU telemetry while the job runs.

An agent can start the same run in one call over the MCP server. See /mcp for how to connect one, and /train for a guide per model and arm.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "start_training",
    "arguments": {
      "dataset_id": "<your dataset id>",
      "model_id": "act",
      "policy_name": "red cube pick v1",
      "confirm_spend": true
    }
  }
}
The same run, started through the MCP server at /api/mcp

Read the loss curve without fooling yourself

Loss tells you the model is fitting the data. It does not tell you the policy will work. Treat it as a smoke detector: useful when it goes wrong, close to meaningless when it goes right.

What you seeWhat it means
Loss falls then plateausNormal. Nothing more to conclude from it.
Loss flat from the startLearning rate is wrong, or the data did not load as intended.
Loss spikes and stays highLearning rate too high, or corrupted episodes in the set.
Loss near zero very quicklySuspicious. Often means your episodes are near-identical and the model memorised them.
The only metric that counts is on the hardware

A policy can have a textbook loss curve and fail every physical attempt. That usually means it averaged several incompatible strategies from your demonstrations into one useless middle. You will find that out in the next guide, not from this chart.

Choose a checkpoint

Checkpoints are saved throughout the run. The last one is not automatically the best. Keep two or three from the second half of training and compare them on the real arm.

The run page lists every checkpoint with its step number and loss, so you pick one there. An agent gets the same list from the get_training_job tool.

StepLossWorth trying on the arm
300000.0412Yes, an earlier checkpoint is sometimes less overfitted
400000.0388Yes
500000.0381Yes, but the latest is not automatically the best