TeachableHub Machine Learning Platform SDK. Deployments, Predictions, and Management.
Project description
About
Deployment, Prediction, and Management API interactions of TeachableHub Machine-Learning Deployment Platform via Python.
Usage
Deploy a model
You can integrate this SDK in your training logic, Jupyter notebook during experimentation, or your CI/CD system during the production environment. This SDK is also applicable for deploying existing models from your model registry or storage.
from teachablehub.deployments.sklearn import TeachableDeployment
# ... training logic here ...
deployment = TeachableDeployment(
teachable="user/teachable",
environment="production",
deploy_key="your-deploy-key-here",
)
deployment.model(clf)
deployment.deploy(
summary="Automatic deployment from our CI via sklearn-deploy.py",
activate=True
)
Other deployment examples
We have prepared a couple of simple and advanced examples to show you some standard ways to integrate the TeachableHub platform very easily inside your training process. Also, there are ideas on how you can deploy your already trained and stored models to TeachableHub.
In the advanced examples, you will find some excellent tips and tricks on sharing knowledge between the training environment and the deployments via the Context API or creating and enforcing Features Schema with Validation to make your Model Serving API more understandable and secure.
Take a look at the examples here:
- Ludwig example
- Deploy existing model example
- Deploy advanced example
- Sklearn Regression Advanced Example
Make predictions
Simple ndarray predictions
from teachablehub.clients import TeachableHubPredictAPI
teachable = TeachableHubPredictAPI(
teachable="user/teachable",
environment="production",
serving_key="your-serving-key-here"
)
predictions = teachable.predict([[0.03, 0.05, -0.002, -0.01, 0.04, 0.01, 0.08, -0.04, 0.005, -0.1]])
print(predictions)
Advanced predictions with Features Validation
from teachablehub.clients import TeachableHubPredictAPI
teachable = TeachableHubPredictAPI(
teachable="user/teachable",
environment="production",
serving_key="your-serving-key-here"
)
features = {
"age": 0.03,
"sex": 0.05,
"bmi": -0.002,
"bp": -0.01,
"s1": 0.04,
"s2": 0.01,
"s3": 0.08,
"s4": -0.04,
"s5": 0.005,
"s6": -0.1
}
predictions = teachable.predict(features, order='desc', limit=10, threshold=0.5)
print(predictions)
Supported Tools & Frameworks
- Uber's Luwdig - Ludwig is a toolbox on top of TensorFlow that allows to train and evaluate deep learning models without the need to write code.
- scikit-learn - Machine Learning in Python
- Google's Teachablemachine Image Classification
Requirements
- Python 3.7.7+ (probably could work with Python 3.4+ as well.)
- Create a teachable here:
https://app.teachablehub.com/create
- Create a deploy key here:
https://app.teachablehub.com/<user>/<teachable>/settings/deploy-keys
- Create a Serving key here:
https://app.teachablehub.com/<user>/<teachable>/settings/serving-keys
Installation
from source
git clone https://github.com/teachablehub/python-sdk.git
cd python-sdk
python setup.py install
with pip
pip install teachablehub
Contributing
Thanks for looking at this section. We're open to any cool ideas, so if you have one and are willing to share - fork the repo, apply changes and open a pull request. :)
Copyright
Copyright (c) 2021 CloudStrap AD. See LICENSE for further details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file teachablehub-1.0.40.tar.gz
.
File metadata
- Download URL: teachablehub-1.0.40.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f555297e2fd73b8ec8466cae8cc055288a54c332dce782605636c687cf0827b |
|
MD5 | 9f0369462b26469340e813d52cb7fe53 |
|
BLAKE2b-256 | c693e411b3b981a46d835f312b1ad4e2d6a2ba14a2ef2727afb68d2820ddb566 |
File details
Details for the file teachablehub-1.0.40-py3-none-any.whl
.
File metadata
- Download URL: teachablehub-1.0.40-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8005e909d25a1cf98108cb1b6de9cd01edc4d298900966ade6b4425a202464b9 |
|
MD5 | a7a1c76bca5dd9e632ccdbdab6d94ccb |
|
BLAKE2b-256 | 1abe973c0276b9e5918d6dd69c2680f4dfb2adbc91f0470ab4425cde64343a3b |