pllm
SDK

Deployment

Understand current deployment support, local role orchestration, and production gaps.

PLLM documentationView Markdown ↗

Deployment declarations currently support local public configuration. pllm.serve_local and pllm.runtime.build_roles accept a typed Model, Pipeline, or Experiment and provide one bounded loopback topology for the local gateway, dashboard, and benchmark driver while keeping inference and preparation in separate operating-system processes. The handle owns environment-only role credentials, distinct ports, health checks, client routing, and deterministic shutdown. Generic remote Deployment, plan-locked multi-host orchestration, operator identity provisioning, and production recovery are not established.

Docker and systemd artifacts are templates, not certified deployments. Never infer authentication from port, hostname, or role string. Secret role state must remain separate from exportable plan artifacts and benchmark records.

Use the exact gateway and role lifecycle commands. They start processes; they do not provision hosts, TLS, identities, or non-colluding operators. See compatibility/status and repository deployment notes.

Python SDK example

import pllm
from pllm.runtime import build_roles

deployment = pllm.Deployment.local(root=".pllm/local")
assert deployment.to_spec() == {"kind": "local", "root": ".pllm/local"}

model = pllm.Model.path("/srv/models/Qwen2.5-0.5B-Instruct")
topology = build_roles(model, correlation_mode="local-test")
assert topology.started is False
assert [status.role for status in topology.statuses] == ["inference", "preparation"]

build_roles only validates and builds the handle. Entering it, calling start(), or calling pllm.serve_local(...) starts both role processes and may resolve the model.

API: pllm.Deployment and pllm.serve_local

Only loopback development orchestration is supported; it does not provision hosts, TLS, identities, or non-colluding operators.

On this page

Loading documentation index…

Search runs locally in this browser.