Skip to main content

Deploy and verify signed Knowledge Graphs against a SKI Model runtime.

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ski_model_deploy-3.1.0b1.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ski_model_deploy-3.1.0b1-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file ski_model_deploy-3.1.0b1.tar.gz.

File metadata

  • Download URL: ski_model_deploy-3.1.0b1.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ski_model_deploy-3.1.0b1.tar.gz
Algorithm Hash digest
SHA256 72ccd8612fb00650413143a5ca0069b1bd3432dfb59773db8c43d407840b90b9
MD5 54e290f231ab7c3e19e66fc3b74a8fdc
BLAKE2b-256 f82092c21ce4dcbe1d9e4a74b5553c22fbab9c067627ed2fa495a04cc9e57f48

See more details on using hashes here.

Provenance

The following attestation bundles were made for ski_model_deploy-3.1.0b1.tar.gz:

Publisher: release.yml on kpifinity/ski-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ski_model_deploy-3.1.0b1-py3-none-any.whl.

File metadata

File hashes

Hashes for ski_model_deploy-3.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 6b2a2430fe45e628c0b0fef23eb10996d288e3ba93fe6551f58a779fda811391
MD5 8462788a4faa78f1618d49c684d9fd00
BLAKE2b-256 2fe9a2200f77766bf4f1ee28392d99c8d4b7e0e1419ffeda6f7e0f20effccaf4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ski_model_deploy-3.1.0b1-py3-none-any.whl:

Publisher: release.yml on kpifinity/ski-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page