Skip to main content

MLSteam Model SDK

Project description

mlsteam-model-sdk

SDK for accessing MLSteam models

Setup

pip3 install mlsteam-model-sdk

To process encrypted model versions, install the Themis development package according to the official instrunctions. Debian/Ubuntu users have a handy installation method:

# for users that already have administrator privileges
mlsteam-model-cli install-themisdev

# for those that need privilege lifting
sudo mlsteam-model-cli install-themisdev

Usage

Downloading a model version with SDK

This example assumes the program is running in an MLSteam system. If it is not the case, you may need to setup API_TOKEN with mlsteam-model-cli init --api_token=YOUR_API_TOKEN

You will need administrator privileges to download or load encrypted model versions. For this case, either run the following program with sudo, or enter your password in a sudo prompt during program execution.

sudo python your_program.py

or during execution

[sudo] password for some_username:

Administrator privileges are not required when you only process non-encrypted model versions.

from mlsteam_model_sdk.sdk.model import Model

sdk_model = Model()
sdk_model.download_model_version(project_name='project_owner/project_name',
                                 model_name='model_name',
                                 version_name='version_name')

By default, the model version will be downloaded at $HOME/.mlsteam-model-sdk/models/download/.

This loads a model version and makes prediction:

mv = sdk_model.load_model_version(model_name='model_name',
                                  version_name='version_name')
outputs = mv.predict(inputs)

Importing a model version with CLI

This example assumes the following files are locally available:

  1. model version package (required)
  2. package encryption key (required only for encrypted packages)

You will need administrator privileges to download or load encrypted model versions, as mentioned in the previous example.

Initialize the SDK settings if you have not done so:

mlsteam-model-cli init

By default, the settings will be at $HOME/.mlsteam-model-sdk/cfg.ini.

To import a package:

# for non-encrypted packages
mlsteam-model-cli mv import-local -f path/to/pkg/file

# for encrypted packages
mlsteam-model-cli mv import-local -f path/to/pkg/file -k path/to/enckey/file

By default, the model and version names to register are read from the package manifest. You may customize these settings with the --model_name and --version_name options.

If the operation is successful, you will find the imported pakage in local model registry:

mlsteam-model-cli mv list-local
   muuid     model_name       vuuid        version_name     puuid     packaged   encrypted      download_time
 ================================================================================================================
 __local__   ...          local-........   ...            __local__   1          ...            .....

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

mlsteam_model_sdk-0.4.1-cp311-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (136.8 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp311-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (138.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

mlsteam_model_sdk-0.4.1-cp310-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (132.5 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp310-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (134.4 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

mlsteam_model_sdk-0.4.1-cp39-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (140.4 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp39-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (141.3 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

mlsteam_model_sdk-0.4.1-cp38-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (145.5 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp38-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (147.3 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

mlsteam_model_sdk-0.4.1-cp37-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (133.2 kB view hashes)

Uploaded CPython 3.7 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp37-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (134.5 kB view hashes)

Uploaded CPython 3.7 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

mlsteam_model_sdk-0.4.1-cp36-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (130.9 kB view hashes)

Uploaded CPython 3.6 manylinux: glibc 2.17+ ARM64

mlsteam_model_sdk-0.4.1-cp36-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (132.2 kB view hashes)

Uploaded CPython 3.6 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

Supported by

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