Skip to content

Hopsworks Model Management#

Hopsworks Community Hopsworks Model Management Documentation PyPiStatus Scala/Java Artifacts Downloads CodeStyle License

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.

Getting Started On Hopsworks#

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#

Documentation is available at Hopsworks Model Management Documentation.

Issues#

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.

Contributing#

If you would like to contribute to this library, please see the Contribution Guidelines.