Skip to main content
Send NumPy inputs; get action arrays. Your application reads sensors and applies actions. Requires Python 3.12+ on macOS/Linux, a Servo account, and a connected Hugging Face account. No local GPU or robot registration is needed. Save Python examples using their shown filenames; run them with python FILENAME.py.
1

Install and sign in

Install Servo and sign in:
your computer
On a headless computer, follow the printed sign-in link and code. CLI and Python share your saved sign-in; telemetry is configured automatically.
2

Inspect the model inputs

Read the checkpoint contract before allocating capacity or creating arrays:
Inspect the checkpoint:
your computer
Sample output:
Sample output
Use the exact input keys, shapes and dtypes shown above. HWC means height, width, channels; None means no image layout. Continue only when the contract is resolved. The checkpoint documentation defines camera placement, state units and action meanings.
3

Import and deploy

Import, then deploy using the returned model ID:
your computer
Run the returned MODEL_ID= assignment in your shell, then deploy:
your computer
Save the printed deployment ID; this command waits for readiness.
Deployment allocates hosted capacity and requires an organization member or API key. The first import may download weights and compile; both examples wait for readiness. Servo aims to provision for the fastest end-to-end latency. Repeated requests for the same model and site reuse the deployment. A timeout does not cancel it: inspect or stop it below.
4

Provide model inputs and predict

Create sample arrays matching the inspected contract and make one prediction:
first_prediction.py
Save the code above, or download and run it:
your computer
Enter your saved deployment ID when prompted.Expect 15 × 7 action values. Random images and a zero state check connectivity; they are not useful robot observations. The model rejects a state outside the range its checkpoint declares, so use a real reading, not random state values. Servo handles model preprocessing. Servo does not apply them to hardware; your application owns sensor capture, action interpretation and hardware limits.
5

Inspect or stop the deployment

Inspect the deployment, then stop it:
your computer
Run the returned DEPLOYMENT_ID= assignment in your shell first. CLI logs prints authenticated dashboard links. delete() and stop request teardown; confirm retired through wait_retired() or repeated show. Closing Python or a session leaves the deployment running and capacity allocated.
For real sensors and action execution, continue to your control loop.