Deployments

Deploy a trained model as one API endpoint.

Stand up a model as an always-on inference endpoint with a single authenticated /predict URL. Call it from REST, the SDK, or the CLI. Billed by uptime: pause and resume to stop the meter.

deploy.py
from pictograph import Client

client = Client()

# Stand up a trained model as an always-on endpoint
deployment = client.deployments.create(
    model_id="mdl_road_signs",
    gpu="t4",            # t4 / l4 / a10g / a100
    min_containers=1,    # keep one warm, or 0 to scale to zero
)

print(deployment.endpoint_url)
print(deployment.token)   # pk_deploy_... shown once
How it works

From trained model to live endpoint

No infrastructure to manage. Pictograph provisions a dedicated inference app per model and gives you one URL to call.

  1. Train or pick a model

    Train a model on Pictograph, or choose one from your model registry.

  2. Create a deployment

    Pick a GPU and warm-pool size. Pictograph provisions a dedicated inference app for the model.

  3. Call /predict

    Send images to one authenticated URL from REST, the SDK, or the CLI. Get predictions back as JSON.

  4. Pause when idle

    Pause to stop the meter, resume in seconds. Or scale to zero and pay only for active seconds.

Call it from anywhere

One endpoint, three ways to call it

Each deployment exposes a stable /predict URL secured by a per-deployment bearer token, shown once at create time.

REST

curl
curl https://your-deployment.pictograph.io/predict \
  -H "Authorization: Bearer pk_deploy_..." \
  -F "image=@frame.jpg"

Python SDK

predict.py
from pictograph import DeploymentClient

client = DeploymentClient(
    endpoint="https://your-deployment.pictograph.io",
    token="pk_deploy_...",
)
print(client.predict(image="./frame.jpg"))

CLI

cli
pictograph deployments predict dep_abc123 \
  --image ./frame.jpg
Compute and billing

Pick a GPU, billed by uptime

Choose the GPU that fits your latency and throughput needs. You see a transparent USD quote at create time, and deployments auto-pause if your balance runs out.

T4 Cost-efficient default for most detection and segmentation models.
L4 More throughput for higher-resolution or higher-traffic endpoints.
A10G Faster inference for heavier architectures.
A100 Maximum throughput for the largest models and batch sizes.
Pay only for what runs. Pause a deployment to stop billing and resume in seconds. Scale it to zero and you only pay while requests are being served.
FAQ

Model deployment FAQ

What is a Pictograph model deployment?

A deployment turns a trained model into an always-on REST endpoint you call over HTTP. Each deployment is its own isolated service with one authenticated /predict URL, billed by uptime. Pause it to stop charges and resume it to bring the endpoint back.

How is deployment pricing calculated?

Deployments are billed by uptime at the underlying GPU or CPU rate plus a flat platform markup, charged from your compute credits. Scale-to-zero deployments bill only while serving a request; always-warm deployments bill continuously for the containers you keep running.

Which GPUs can I deploy on?

You can deploy on T4, L4, A10G, or A100 GPUs, or on CPU for lightweight models. Pick the smallest tier your model fits to minimize cost.

Do I need a deployment to run batch inference?

No. Use a workflow instead. A workflow loads the model per run and needs no standing deployment, so it is cheaper for one-off batch jobs over a dataset or video. Deployments are for low-latency, always-on serving.

How do I call a deployed model?

Send a POST to the deployment /predict URL with the per-deployment bearer token shown once at create time. You can pass a local file, an image URL, or base64 bytes and get back JSON predictions. The Python SDK ships a DeploymentClient with Roboflow-style ergonomics.

Deploy your first model in minutes

$5/mo free compute. No payment method required.