Models overview

Cloudera AI allows data scientists to build, deploy, and manage models as REST APIs to serve predictions.

Challenge

Data scientists often develop models using a variety of open source Python and R packages. However, exposing those models to stakeholders for testing can be challenging. In many organizations, deploying a model requires involvement from a separate DevOps team, which typically has its own policies and processes for introducing a new code.

For example, a model developed in Python by data scientists might be rebuilt in another language by the DevOps team before deployment. This approach can be slow and error-prone, sometimes delaying model deployment for months. It also introduces compliance risks, since a redeveloped model might not accurately reproduce the original model.

Once a model has been deployed, you then need to ensure that the devops team has a way to rollback the model to a previous version if needed. This means the data science team also needs a reliable way to retain history of the models they build and ensure that they can rebuild a specific version if needed. At any time, data scientists (or any other stakeholders) must have a way to accurately identify which version of a model is/was deployed.

Solution

Cloudera AI allows data scientists to build and deploy their own models as REST APIs. Data scientists can now select a Python or R function within a project file, and Cloudera AI will:
  • Create a snapshot of model code, model parameters, and dependencies.
  • Package a trained model into an immutable artifact and provide basic serving code.
  • Add a REST endpoint that automatically accepts input parameters matching the function, and that returns a data structure that matches the function’s return type.
  • Save the model along with some metadata.
  • Deploy a specified number of model API replicas, automatically load balanced.