Skip to main content

Python SDK for Servo's hosted robot model API

Project description

servo-client

The public Python SDK for Servo's hosted robot model API.

Servo gives robotics teams one typed API for working with hosted robot policies, world models, datasets, fine-tuning jobs, evaluations, and deployments. Your application talks to Servo resources; Servo handles model-specific adapters, compatibility checks, provider orchestration, and usage tracking behind the hosted API.

Install

pip install servo-client

Quickstart

import os

import servo
from servo import templates

sv = servo.Servo(
    api_key=os.environ["SERVO_API_KEY"],
)

robot = sv.robots.register(templates.so101())
obs = templates.sample_observation(robot)

model = sv.models.get("smolvla")
model.inspect(robot)  # compatibility, cameras, action space, readiness

chunk = model.policy(robot, instruction="pick up the cube").act(obs)
print(chunk.actions[0])

What You Can Do

  • Call hosted policy models through model.policy(robot).act(observation).
  • Inspect model/robot compatibility before sending actions to hardware.
  • Register robots, datasets, models, checkpoints, deployments, and jobs.
  • Stream data, curate rollout failures, fine-tune, evaluate, and redeploy through one client.
  • View hosted usage and billing state for your organization.

Authentication

Servo uses organization-scoped API keys:

export SERVO_API_KEY="sk_..."

Pass the key to servo.Servo(...); the client sends it as Authorization: Bearer <key>. The SDK uses Servo's hosted control plane by default. Set SERVO_BASE_URL only to target a different deployment, such as http://127.0.0.1:8000 during local development.

Package Boundary

This distribution contains only the public servo client and servo_contracts wire contracts. It does not include servo_platform, Modal app launchers, FastAPI routes, SQLAlchemy models, provider credentials, private endpoint URLs, or other hosted-service backend code.

Requirements

  • Python 3.12+
  • A Servo hosted API URL and organization API key

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

servo_client-0.1.2-py3-none-any.whl (79.8 kB view details)

Uploaded Python 3

File details

Details for the file servo_client-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: servo_client-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 79.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for servo_client-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 23c8550350744c61824607662ba76763d355772df6d0fe2afa64a28436c0e8e8
MD5 b9b9381e61907e9aa98de557c0fd3fe8
BLAKE2b-256 cb78ac6ad8a8eef4653d3ec949a84ab8b39f55ae588768a9ca1019ea42e0ab66

See more details on using hashes here.

Provenance

The following attestation bundles were made for servo_client-0.1.2-py3-none-any.whl:

Publisher: pypi-publish.yml on npow/servo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page