HSML is the library to interact with the Hopsworks Model Registry and Model Serving. The library makes it easy to export, manage and deploy models.
The library automatically configures itself based on the environment it is run. However, to connect from an external Python environment additional connection information, such as host and port, is required. For more information about the setup from external environments, see the setup section.
Instantiate a connection and get the project model registry and serving handles
import hsml
# Create a connection
connection = hsml.connection()
# Get the model registry handle for the project's model registry
mr = connection.get_model_registry()
# Get the model serving handle for the current model registry
ms = connection.get_model_serving()
Create a new model
model = mr.tensorflow.create_model(name="mnist",
version=1,
metrics={"accuracy": 0.94},
description="mnist model description")
model.save("/tmp/model_directory") # or /tmp/model_file
Download a model
model = mr.get_model("mnist", version=1)
model_path = model.download()
Delete a model
model.delete()
Get best performing model
best_model = mr.get_best_model('mnist', 'accuracy', 'max')
Deploy a model
deployment = model.deploy()
Start a deployment
deployment.start()
Make predictions with a deployed model
data = { "instances": [ model.input_example ] }
predictions = deployment.predict(data)
You can find more examples on how to use the library in examples.hopsworks.ai.
Documentation is available at Hopsworks Model Management Documentation.
For general questions about the usage of Hopsworks Machine Learning please open a topic on Hopsworks Community. Please report any issue using Github issue tracking.
If you would like to contribute to this library, please see the Contribution Guidelines.