Skafos is the platform for automating the delivery of machine learning models to mobile devices. We provide this SDK as a Python wrapper for uploading, fetching, and listing model versions from the platform.
If you're a Data Scientist or Machine Learning Engineer, you're the one entrusted with building robust machine learning models. This SDK is an interface to the Skafos platform, allowing you to do the following from your Python development environment:
- Upload a model version: Save a new version of your machine learning model to the Skafos platform, making it available for mobile delivery.
- Deploy a model version: Deliver a saved model version to your mobile application over-the-air.
- Fetch a model version: Download a previously saved version of your machine learning model from the Skafos platform.
- List model versions: For each of your apps and models, see what model versions you have previously saved to the Skafos platform.
This is not an exhaustive list of OS that are compatible with skafos
. These are the one's we've explicitly tested:
- macOS 10.12+
- Linux (Ubuntu 16.0.4+)
- Google Colab + Google Cloud
- IBM Watson
- AWS Sagemaker
- Microsoft Azure
- Python 3+
- Pip (to download
skafos
from the Python Package Index)
You can install skafos
directly from the Python Package Index (PyPI).
pip install -U skafos
Once you've installed skafos
, you can import the package in your Python environment.
import skafos
skafos.get_version() # returns the current SDK version
For more details on installation and usage, see the package documentation.
- The package documentation contains more details on how to use the Skafos SDK.
- The platform documentation contains more details on how Skafos delivers and manages machine learning models on mobile devices.
import os
from skafos import models
# Set your API Token first for repeated use
os.environ["SKAFOS_API_TOKEN"] = "<YOUR-SKAFOS-API-TOKEN>"
# You can retrieve this info with skafos.summary()
org_name = "<YOUR-SKAFOS-ORG-NAME>" # Example: "mike-gmail-com-467h2"
app_name = "<YOUR-SKAFOS-APP-NAME>" # Example: "Recommender-App"
model_name = "<YOUR-MODEL-NAME>" # Example: "RecommenderModel"
# Upload model version to Skafos
model_upload_result = models.upload_version(
files="<path(s)-to-model-file(s)>", # Example: ["../my_recommender_model.mlmodel"]
org_name=org_name,
app_name=app_name,
model_name=model_name
)
Didn't find something you need? Confused by something? Need more guidance?
Please contact us with questions or feedback! Here are two ways: