Note: The MLflow R package for 1.20.0 is not yet available but will be in a week because CRAN's submission system will be offline until September 1st.
MLflow 1.20.0 includes several major features and improvements:
Features:
- Autologging for scikit-learn now records post training metrics when scikit-learn evaluation APIs, such as
sklearn.metrics.mean_squared_error
, are called (#4491, #4628 #4638, @WeichenXu123) - Autologging for PySpark ML now records post training metrics when model evaluation APIs, such as
Evaluator.evaluate()
, are called (#4686, @WeichenXu123) - Add
pip_requirements
andextra_pip_requirements
tomlflow.*.log_model
andmlflow.*.save_model
for directly specifying the pip requirements of the model to log / save (#4519, #4577, #4602, @harupy) - Added
stdMetrics
entries to the training metrics recorded during PySpark CrossValidator autologging (#4672, @WeichenXu123) - MLflow UI updates:
- Improved scalability of the parallel coordinates plot for run performance comparison,
- Added support for filtering runs based on their start time on the experiment page,
- Added a dropdown for runs table column sorting on the experiment page,
- Upgraded the AG Grid plugin, which is used for runs table loading on the experiment page, to version 25.0.0,
- Fixed a bug on the experiment page that caused the metrics section of the runs table to collapse when selecting columns from other table sections (#4712, @dbczumar)
- Added support for distributed execution to autologging for PyTorch Lightning (#4717, @dbczumar)
- Expanded R support for Model Registry functionality (#4527, @bramrodenburg)
- Added model scoring server support for defining custom prediction response wrappers (#4611, @Ark-kun)
mlflow.*.log_model
andmlflow.*.save_model
now automatically infer the pip requirements of the model to log / save based on the current software environment (#4518, @harupy)- Introduced support for running Sagemaker Batch Transform jobs with MLflow Models (#4410, #4589, @YQ-Wang)
Bug fixes and documentation updates:
- Deprecate
requirements_file
argument formlflow.*.save_model
andmlflow.*.log_model
(#4620, @harupy) - set nextPageToken to null (#4729, @harupy)
- Fix a bug in MLflow UI where the pagination token for run search is not refreshed when switching experiments (#4709, @harupy)
- Fix a bug in the model scoring server that rejected requests specifying a valid
Content-Type
header with the charset parameter (#4609, @Ark-kun) - Fixed a bug that caused SQLAlchemy backends to exhaust DB connections. (#4663, @arpitjasa-db)
- Improve docker build procedures to raise exceptions if docker builds fail (#4610, @Ark-kun)
- Disable autologging for scikit-learn cross_val_* APIs, which are incompatible with autologging (#4590, @WeichenXu123)
- Deprecate MLflow Models support for fast.ai V1 (#4728, @dbczumar)
- Deprecate the old Azure ML deployment APIs
mlflow.azureml.cli.build_image
andmlflow.azureml.build_image
(#4646, @trangevi) - Deprecate MLflow Models support for TensorFlow < 2.0 and Keras < 2.3 (#4716, @harupy)
Small bug fixes and doc updates (#4730, #4722, #4725, #4723, #4703, #4710, #4679, #4694, #4707, #4708, #4706, #4705, #4625, #4701, #4700, #4662, #4699, #4682, #4691, #4684, #4683, #4675, #4666, #4648, #4653, #4651, #4641, #4649, #4627, #4637, #4632, #4634, #4621, #4619, #4622, #4460, #4608, #4605, #4599, #4600, #4581, #4583, #4565, #4575, #4564, #4580, #4572, #4570, #4574, #4576, #4568, #4559, #4537, #4542, @harupy; #4698, #4573, @Ark-kun; #4674, @kvmakes; #4555, @vagoston; #4644, @zhengjxu; #4690, #4588, @apurva-koti; #4545, #4631, #4734, @WeichenXu123; #4633, #4292, @shrinath-suresh; #4711, @jinzhang21; #4688, @murilommen; #4635, @ryan-duve; #4724, #4719, #4640, #4639, #4629, #4612, #4613, #4586, @dbczumar)