> ## Documentation Index
> Fetch the complete documentation index at: https://docs.innate.bot/llms.txt
> Use this file to discover all available pages before exploring further.

# Training overview

> Teach your robot new manipulation skills by demonstrating them.

Innate lets you train end-to-end manipulation policies directly from your phone or browser. You demonstrate a task with the leader arm, upload the data, and deploy the result as a skill your robot can execute autonomously. **Training runs on Innate's infrastructure** — our cloud GPUs do the heavy lifting, so you don't need a GPU or any ML setup of your own.

The underlying architecture is [ACT (Action Chunking with Transformers)](https://arxiv.org/abs/2304.13705) — a neural network that observes camera images and joint positions, then outputs coordinated arm and base actions. In practice this means the robot learns the manipulation by watching you do it, instead of you hand-coding every motion.

## The pipeline at a glance

```text theme={null}
Record episodes  →  Upload dataset  →  Train on cloud  →  Download model  →  Run as a skill
  (app / web)         (~10s/min)        (1-3 hours)         (automatic)        (app or code)
```

You can drive the whole pipeline from the phone app or the [web app](/robots/web-app) — each stage maps to a tab (app) or page (web):

| Stage                       | Phone app         | Web app              |
| --------------------------- | ----------------- | -------------------- |
| Record demonstrations       | **Record** tab    | **Collect** page     |
| Configure & launch training | **Train** tab     | **Training** page    |
| Monitor runs                | **Runs** tab      | **Running now** card |
| Download & activate         | **Completed** tab | automatic            |

Once a trained model is activated, the skill is available to agents and code, and (in the phone app) appears in **Manual Control**.

## What goes in, what comes out

**Input:** A dataset of teleoperated demonstrations — each episode captures synchronized camera images (main + wrist), joint positions, joint velocities, and optionally wheel odometry at 30 Hz. We recommend **at least 30 episodes of good quality** — consistent start poses, smooth motions — and more diverse data almost always improves robustness (see the [recording tips](/training/data-collection#tips-for-high-quality-data)). (Curious what's inside an episode file? See [Dataset format](/training/dataset-format).)

**Output:** A PyTorch checkpoint that runs inference at 25 Hz, outputting 6 arm joint commands and 2 base velocity commands every 40 ms.

## When to use trained skills

Trained policies shine when the task needs **visuomotor coordination** — reaching, grasping, placing — especially when object positions vary between runs. For fixed, repeatable motions (a wave, a gesture), a **replay skill** is simpler: record once, play back. The full comparison lives in the [skill selection guide](/software/skills/policy-defined-skills#skill-selection-guide).

## Next steps

<CardGroup cols={2}>
  <Card title="Record a dataset" icon="video" href="/training/data-collection">
    Collect high-quality demonstrations.
  </Card>

  <Card title="Train a policy" icon="brain" href="/training/train-act-policy">
    Configure and launch training on Innate's cloud.
  </Card>

  <Card title="Deploy your skill" icon="rocket" href="/training/deploy-trained-skill">
    Download, activate, and run your trained model.
  </Card>

  <Card title="Dataset format" icon="database" href="/training/dataset-format">
    Understand what's inside each episode file.
  </Card>
</CardGroup>
