Inference contract

When a deployment reaches Deployed, the expanded row shows an API key, endpoint URL, and working code snippets. The sections below describe the Status column on the Agents table and which endpoint path suffixes appear in those snippets.

Deployment statuses

The Status column on both Agents tabs uses four values:

Status

What it means

Undeployed

The agent exists but inference is off. You disconnected it, or you have not clicked Connect yet.

Pending

You clicked Connect and the platform is copying the checkpoint and starting the inference pod. Snippets and the chat playground are not ready yet.

Deployed

Inference is up. Expand the row to copy the API key, endpoint, and snippets.

Failed

Deploy or a later health check failed. Try Disconnect, fix the source checkpoint if needed, and Connect again. If the UI shows an error message on the row or in a toast, use that as the starting point.

Typical time from Pending to Deployed is on the order of ninety seconds or more, depending on checkpoint size.

A row that was Deployed can move back to Pending if the platform detects the endpoint is unreachable. That usually clears on retry; if it lands on Failed, treat it like a failed deploy.

While status is Undeployed or Pending, the panel has no URL and key yet. On Classic RL, the expand chevron also stays hidden until status is Deployed and the agent is connected (Connect toggles enabled).

Which snippet tab to use

After Deployed, expand the row. Under Deployment code you get three sub-tabs:

Tab

Best for

Arena client

Python with ArenaClient from agilerl.arena.client

Arena CLI

Shell after arena login

Manual HTTP

Raw requests calls using the Endpoint and API key from the Components block

The Manual HTTP snippet builds the full URL for you (endpoint base plus a path suffix). Copy it from the panel rather than guessing the path.

Endpoint path suffixes (shown in snippets)

The path appended to your Endpoint value depends on the source algorithm. The Manual HTTP tab shows the exact line with the right suffix for your deployment.

Training family

Path suffix in Manual HTTP snippet

Notes

Classic RL (PPO, DQN, TD3, …)

get_action

Gym, recurrent, and multi-agent variants add fields in the JSON body; the snippet includes them.

LLM (GRPO, DPO, SFT, TurnPPO, TokenPPO, …)

generate

Chat playground posts to the same path.

Supervised

predict

No chat playground for Supervised.

LatentPPO

predict

Same Advanced Training tab and snippet family as Supervised; no chat playground.

Turn* and Token* algorithms use the same generate snippet as other LLM agents. You do not need to map trainer names to runtime labels; the snippet matches the deployment.

See also