Skip to main content
Abstract serves models over HTTPS at https://api.abstract.inc/v1. One API key works for every model. You send the key as a Bearer token.

Quickstart

Set up billing, sign in with the CLI, and make a first robot call and a first LLM call.

API reference

Every endpoint of api.abstract.inc, with its request and answer.

Robot action models

A robot model turns one observation into one chunk of actions. An observation is the task as text, recent JPEG frames from each camera, and the robot’s state. A chunk is a list of action rows. The robot executes the rows in order, at the model’s control rate. Call a robot model with POST /v1/chat/completions, one observation per request, or run a whole episode on a WebSocket at /v1/responses.

DreamZero-Astra

abstract/dreamzero-astra:yamA DreamZero world action model. Keeps the episode’s context on the server.

Picasso

stealth/picasso:yamKeeps the episode’s context on the server.

MolmoAct2

allenai/molmoact2:yamAi2’s MolmoAct2. One frame per camera, no state between requests.

Rho

microsoft/rho:yamMicrosoft’s Rho-YAM-Box. Predicts Cartesian end-effector targets.

Isaac 0.5

perceptron/isaac-0.5:yamPerceptron’s Isaac 0.5. One frame per camera, no state between requests.

π0.5

physical-intelligence/pi0.5:yamA community fine-tune of π0.5. One frame per camera, no state between requests.
A robot model id has the form origin/model:embodiment. origin names who made the weights. model names the weights. embodiment names the robot they drive. Every served robot model drives a bimanual YAM: two YAM arms, one scene camera, and one camera on each wrist.
Abstract returns numbers. It does not move your robot. Check every action against your robot’s limits before you execute it.

LLMs

The LLMs speak the OpenAI Responses API at POST /v1/responses. An LLM model id has the form family-version:profile. The part before the colon names the weights. The part after the colon names the API contract.

Accounts and spend

Every account has a hard monthly spend limit. Each request reserves its maximum cost against that limit before it runs. The request then settles from the usage its answer reports. A request that would cross the limit is refused with spend_limit_exceeded. API keys work for inference only after the account has a payment method or credit.
Do not send sensitive data until retention controls and their defaults are documented.

Explore

Robot models

Cameras, state, and action shapes for each model.

Sessions over WebSocket

Run one episode on one socket.

Responses API

Call the LLM models with the OpenAI SDK.

Errors and limits

Every error code and what to do about it.