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

# Overview

> Run robot policies on hosted GPUs with a few lines of Python.

## Your First Request

```python theme={null}
from relay import PolicyClient

policy = PolicyClient("pi05")
actions = policy.infer(observation)   # (50, 32) array: the next 50 actions
```

## Models

| Model | ID | Cameras | Actions per call | Control | Best for |
| - | - | - | - | - | - |
| [π0.5](/models#π0-5) | `pi05` | Up to 3 | 50 steps | Joint position | Single- or dual-arm robots. Handles new scenes well. |
| [π0](/models#π0) | `pi0` | Up to 3 | 50 steps | Joint position | A baseline, or reusing an existing π0 adapter. |
| [GR00T N1.7](/models#gr00t-n1-7) | `groot` | Exterior + wrist | 40 steps | End-effector, gripper or joint | Franka arms (DROID setup). |

Not sure which to pick? [Models](/models) covers shapes, checkpoints and adapters.

## Next Steps

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    Install, configure and get your first action chunk in five minutes.
  </Card>

  <Card title="Observations" icon="camera" href="/observations">
    The exact keys, shapes and dtypes each model expects.
  </Card>

  <Card title="Control loops" icon="arrows-rotate" href="/control-loop">
    Executing chunks, episodes, sessions and latency.
  </Card>

  <Card title="API reference" icon="code" href="/api">
    Every `PolicyClient` method, argument and return value.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.