8000 exposes the distillation pipeline
over REST. Use this if you’re driving training from a language that
doesn’t have a Python client — CI jobs, a TypeScript backend, or a
Rust CLI, for example.
The REST endpoints backing the Python
Distiller
client. Any call you make through the SDK can also be made over HTTP.POST /v1/distillation
Create a new distillation job. Returns immediately withstatus: "pending";
training happens asynchronously on the engine host.
Request body
Response
Curl
GET /v1/distillation/
Fetch the current state of a job.Response
pending → running → completed | failed
| cancelled. phase is more granular: initializing → data_generation
→ curation → training → export → (done).
Polling idiom
GET /v1/distillation — list jobs
Response
tenant_id, status, limit (max 100),
offset.
POST /v1/distillation//cancel
Cancel a running job. Safe at any phase — partial artifacts are kept.GET /v1/distillation//artifacts
Fetch file paths on the engine host for the trained adapter + GGUF exports. Paths are relative to the engine’sOPENTRACY_DATA_DIR.

