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.
| Policy | Train time on 50 episodes | Use when |
|---|---|---|
| ACT | Well under an hour | First run, single task, want an answer today |
| Diffusion Policy | A few hours | Several valid ways to do the task |
| SmolVLA | A few hours | You want language conditioning |
| GR00T fine-tune | Longer, needs more data | You want generalisation and have episodes to spare |
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.
{
"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
}
}
}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 see | What it means |
|---|---|
| Loss falls then plateaus | Normal. Nothing more to conclude from it. |
| Loss flat from the start | Learning rate is wrong, or the data did not load as intended. |
| Loss spikes and stays high | Learning rate too high, or corrupted episodes in the set. |
| Loss near zero very quickly | Suspicious. Often means your episodes are near-identical and the model memorised them. |
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.
| Step | Loss | Worth trying on the arm |
|---|---|---|
| 30000 | 0.0412 | Yes, an earlier checkpoint is sometimes less overfitted |
| 40000 | 0.0388 | Yes |
| 50000 | 0.0381 | Yes, but the latest is not automatically the best |