Migration guide
From 0.66.1 to 0.67.0
Announcement: Upcoming Java MOJO Runtime removal
The Java MOJO Runtime will be removed in the 0.69.0 MLOps release. Version 0.68.0 will be the last release to include the Java MOJO Runtime.
Users are advised to migrate to the C++ MOJO Runtime, which is a 1:1 mapping of the Java runtime that accepts a wider range of algorithms Driverless AI may use that the Java runtime does not support, including BERT, GrowNet, and TensorFlow models.
Scoring runtimes
MLflow Runtimes images are twice as large now. This means that deployments of these run-times can take longer due to longer pulling times.
Runtimes for DAI 1.10.4.3 and older are removed as of MLOps version 0.67.0.
MLflow runtimes support Python 3.8 and later starting with MLOps version 0.67.0.
For more information on scoring runtimes in H2O MLOps, see Scoring runtimes.
Python client
Starting with version 0.67.0, the official Python client of H2O MLOps is h2o-mlops
. The minimum Python version required for the client is Python 3.8.
Built on top of the legacy Python client, h2o-mlops
retains all previous functionalities. You can continue to access the legacy client's features through h2o-mlops
as needed. For more information, see Python client tutorials - Backend.
Note that users of the legacy client can switch to the new Python client (h2o-mlops
) by importing h2o-mlops
before using any features of the legacy client. This switch can be made without needing to modify any existing code or import statements.
Removal of Conda from Wave app
With the removal of Conda as of MLOps version 0.67.0, third-party models can no longer be uploaded to the MLOps frontend using serialized Pickle files. However, you can still upload models from frameworks like scikit-learn, PyTorch, XGBoost, LightGBM, and TensorFlow using MLflow packaged files.
Monitoring data retention
Starting with version 0.67.0, per project data retention duration can be set for monitoring data stored on InfluxDB. To enable this feature, set the
MONITOR_INFLUXDB_PER_PROJECT_DATA_RETENTION_PERIOD
env to the deployer with a correct duration string. Minimum retention period is 1h and the max isINF
.INF
will be the default IfMONITOR_INFLUXDB_PER_PROJECT_DATA_RETENTION_PERIOD
is not set,INF
is the default duration.-
monitor_influxdb_per_project_data_retention_period
is exposed for H2O MLOps helm charts to set theMONITOR_INFLUXDB_PER_PROJECT_DATA_RETENTION_PERIOD
for deployer.
Emissary
Switch from emissary to gateway-api:
- Emissary's CRDs are no longer used.
- For mapping deployments to http, Gateway API's HTTPRoute CRD is used.
- Gateway API implemented with [Envoy Gateway](https://gateway.envoyproxy.io/).
- (**Breaking change**) Gateway API doesn't support custom error responses. This means that if a deployment is scaled down, the following custom error body is no longer displayed: `Deployment is scaled down to zero replicas. Please increase the number of replicas to use the deployment.` For more information, see [Custom error responses](https://www.getambassador.io/docs/emissary/latest/topics/running/custom-error-responses).
- (**Breaking change**) - If a deployment is scaled down, error code **500** is thrown instead of **503**.
Other changes
- External model registry is removed as of version 0.67.0.
- Submit and view feedback for this page
- Send feedback about H2O MLOps to cloud-feedback@h2o.ai