Skip to main content

ski-model-deploy

Install from PyPI: pip install ski-model-deploy (publishing starts with the first release after June 2026).

⚠ STATUS: EARLY ALPHA (v0.1.0a0). Alpha-quality tooling. See the repo root README.md for the project-wide status.

Deploy and configure the SKI Model inference engine on-premise.

ski-model-deploy is the deployment toolkit for the SKI Framework v2.1 runtime. (In pre-v2.1 docs this tool was called milm-deploy.)

What it does

  1. Generate a deployment configuration for a sector deployment.
  2. Verify the Ed25519 signature of a Knowledge Graph and register it with the deployment. Signature verification is mandatory — there is no --no-verify escape hatch.
  3. Stand up the SKI Model stack via Docker (Kubernetes manifests planned for v0.2).
  4. Surface deployment status and a basic health view.

Installation

pip install -e tools/ski-model-deploy

Quick start

# 1. Initialise a deployment config (writes deployment-config.yaml).
ski-model-deploy init --name energy-prod --sector energy

# 2. Load a SIGNED Knowledge Graph (this will refuse to load an unsigned KG).
ski-model-deploy load-kg \
  --config deployment-config.yaml \
  --kg /path/to/signed-kg.json

# 3. Start the stack.
ski-model-deploy start --config deployment-config.yaml

# 4. Status.
ski-model-deploy status --config deployment-config.yaml

Commands

Command Purpose
init Create a new deployment configuration.
load-kg Verify a signed KG and register it. Signature verification is mandatory.
start Bring up the stack (docker compose for the alpha; k8s planned).
stop Tear down the stack.
status Report deployment status as JSON.

--help is supported on every command.

Environment variables

The runtime (the SKI Model service itself) reads its own environment variables documented in reference-implementation/.env.example. The deployer cares about a small subset relevant to its own operation:

Variable Default Notes
SKI_API_KEY required Used for --api-key on status health probes.
LEDGER_DSN required Audit ledger DSN.
OLLAMA_BASE_URL http://ollama:11434 Default inference backend URL.
SKI_MODEL_NAME qwen2.5:7b-instruct Model the runtime should use.
SKI_MODEL_FILE_SHA256 optional If set, the runtime refuses to start unless the pulled model artefact matches.

A non-conformant anthropic demo backend exists in the runtime. The deployer does not encourage or wire it in. It is intentionally inconvenient to enable.

Signature verification — mandatory

This tool will REFUSE to load a Knowledge Graph that:

  • has no signature block, or
  • has algorithm: "DEMO_UNSIGNED", or
  • has a signature that does not verify under the embedded public key.

There is no --no-verify, no verify_signature=False, no override flag. If you absolutely need to load an unsigned KG (for local prototyping only), you must set KG_REQUIRE_SIGNATURE=false on the runtime, which makes the deployment non-conformant and is reported as such by the conformance test suite.

Licensing

Apache 2.0. See ../../LICENSE.

Metadata

Release files for ski-model-deploy 3.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ski-model-deploy 3.1.0
File Size Uploaded Provenance Actions
ski_model_deploy-3.1.0.tar.gz 11.8 kB With provenance Details for ski_model_deploy-3.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ski-model-deploy 3.1.0
File Interpreter ABI Platform Actions
ski_model_deploy-3.1.0-py3-none-any.whl Python 3 none any Details for ski_model_deploy-3.1.0-py3-none-any.whl

Total release size: 23.5 kB

Release files / ski_model_deploy-3.1.0.tar.gz

Download URL ski_model_deploy-3.1.0.tar.gz
Size 11.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4abb720ca65e570eb5a2a4c8fe401a27b3d973c85f7cbcee1aad6514c45cc6ad
BLAKE2b-256 checksum
How to use checksums
2c96d61e877cc391f3688c67658369089240a7d4e79af087eeea4dab5b92fe5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Release files / ski_model_deploy-3.1.0-py3-none-any.whl

Download URL ski_model_deploy-3.1.0-py3-none-any.whl
Size 11.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1cd0be8fe096b597b9bf987e5dd25a2ca8040714b7835980d27612b8068cf57
BLAKE2b-256 checksum
How to use checksums
88641ae30dfb788d69ee5857d66ea936bac5997b81e181bded17bb721593fbbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Security for ski-model-deploy 3.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ski_model_deploy-3.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page