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.0a2.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.0a2-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ski_model_deploy-3.1.0a2.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.0a2.tar.gz
Algorithm Hash digest
SHA256 8e21f0345312ad44c69869b1766f93dc5818f6242bc50427c28c767ec3279376
MD5 86ba4553e04033953e50a906c3fbf253
BLAKE2b-256 c905bbb525f66beb6aed2c4ecef65940efb6fb473bda641844ef92d7f2563755

See more details on using hashes here.

Provenance

The following attestation bundles were made for ski_model_deploy-3.1.0a2.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.0a2-py3-none-any.whl.

File metadata

File hashes

Hashes for ski_model_deploy-3.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 5785974cebe0800d695accd6ae3db2319bc0c8139ac4d13cde0198d93441c83e
MD5 86c92aeb2142eda0fe1ac7f1198433ee
BLAKE2b-256 a1c76e38360ff40d2fe0e0a0b24d8692d685bdad2c709ba82e402705fdbfbf80

See more details on using hashes here.

Provenance

The following attestation bundles were made for ski_model_deploy-3.1.0a2-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