- The MLflow Evaluate API has had extensive feature development in this release to support LLM workflows and multiple new evaluation modalities. See the new documentation, guides, and tutorials for MLflow LLM Evaluate to learn more.
- The MLflow Docs modernization effort has started. You will see a very different look and feel to the docs when visiting them, along with a batch of new tutorials and guides. More changes will be coming soon to the docs!
- 4 new LLM providers have been added! Google PaLM 2, AWS Bedrock, AI21 Labs, and HuggingFace TGI can now be configured and used within the AI Gateway. Learn more in the new AI Gateway docs!
Features:
- [Gateway] Add support for AWS Bedrock as a provider in the AI Gateway (9598, andrew-christianson)
- [Gateway] Add support for Huggingface Text Generation Inference as a provider in the AI Gateway (10072, SDonkelaarGDD)
- [Gateway] Add support for Google PaLM 2 as a provider in the AI Gateway (9797, arpitjasa-db)
- [Gateway] Add support for AI21labs as a provider in the AI Gateway (9828, 10168, zhe-db)
- [Gateway] Introduce a simplified method for setting the configuration file location for the AI Gateway via environment variable (9822, danilopeixoto)
- [Evaluate] Introduce default provided LLM evaluation metrics for MLflow evaluate (9913, prithvikannan)
- [Evaluate] Add support for evaluating inference datasets in MLflow evaluate (9830, liangz1)
- [Evaluate] Add support for evaluating single argument functions in MLflow evaluate (9718, liangz1)
- [Evaluate] Add support for Retriever LLM model type evaluation within MLflow evaluate (10079, liangz1)
- [Models] Add configurable parameter for external model saving in the ONNX flavor to address a regression (10152, daniellok-db)
- [Models] Add support for saving inference parameters in a logged model's input example (9655, serena-ruan)
- [Models] Add support for `completions` in the OpenAI flavor (9838, santiagxf)
- [Models] Add support for inference parameters for the OpenAI flavor (9909, santiagxf)
- [Models] Introduce support for configuration arguments to be specified when loading a model (9251, santiagxf)
- [Models] Add support for integrated Azure AD authentication for the OpenAI flavor (9704, santiagxf)
- [Models / Scoring] Introduce support for model training lineage in model serving (9402, M4nouel)
- [Model Registry] Introduce the `copy_model_version` client API for copying model versions across registered models (9946, 10078, 10140, jerrylian-db)
- [Tracking] Expand the limits of parameter value length from 500 to 6000 (9709, serena-ruan)
- [Tracking] Introduce support for Spark 3.5's SparkConnect mode within MLflow to allow logging models created using this operation mode of Spark (9534, WeichenXu123)
- [Tracking] Add support for logging system metrics to the MLflow fluent API (9557, 9712, 9714, chenmoneygithub)
- [Tracking] Add callbacks within MLflow for Keras and Tensorflow (9454, 9637, 9579, chenmoneygithub)
- [Tracking] Introduce a fluent login API for Databricks within MLflow (9665, 10180, chenmoneygithub)
- [Tracking] Add support for customizing auth for http requests from the MLflow client via a plugin extension (10049, lu-ohai)
- [Tracking] Introduce experimental asynchronous logging support for metrics, params, and tags (9705, sagarsumant)
- [Auth] Modify the behavior of user creation in MLflow Authentication so that only admins can create new users (9700, gabrielfu)
- [Artifacts] Add support for using `xethub` as an artifact store via a plugin extension (9957, Kelton8Z)
- [UI] Add new opt-in Model Registry UI that supports model aliases and tags (10163, hubertzub-db, jerrylian-db)
Bug fixes:
- [Evaluate] Fix a bug with Azure OpenAI configuration usage within MLflow evaluate (9982, sunishsheth2009)
- [Models] Fix a data consistency issue when saving models that have been loaded in heterogeneous memory configuration within the transformers flavor (10087, BenWilson2)
- [Models] Fix an issue in the transformers flavor for complex input types by adding dynamic dataframe typing (9044, wamartin-aml)
- [Models] Fix an issue in the langchain flavor to provide support for chains with multiple outputs (9497, bbqiu)
- [Docker] Fix an issue with Docker image generation by changing the default env-manager to virtualenv (9938, Beramos)
- [Auth] Fix an issue with complex passwords in MLflow Auth to support a richer character set range (9760, dotdothu)
- [R] Fix a bug with configuration access when running MLflow R in Databricks (10117, zacdav-db)
Documentation updates:
- [Docs] Introduce the first phase of a larger documentation overhaul (10197, BenWilson2)
- [Docs] Add guide for LLM eval (10058, 10199, chenmoneygithub)
- [Docs] Add instructions on how to force single file serialization within the onnx flavor's save and log functions (10178, BenWilson2)
- [Docs] Add documentation for the relevance metric for MLflow evaluate (10170, sunishsheth2009)
- [Docs] Add a style guide for the contributing guide for how to structure pydoc strings (9907, mberk06)
- [Docs] Fix issues with the pytorch lightning autolog code example (9964, chenmoneygithub)
- [Docs] Update the example for `mlflow.data.from_numpy()` (9885, chenmoneygithub)
- [Docs] Add clear instructions for installing MLflow within R (9835, darshan8850)
- [Docs] Update model registry documentation to add content regarding support for model aliases (9721, jerrylian-db)
Small bug fixes and documentation updates:
10202, 10189, 10188, 10159, 10175, 10165, 10154, 10083, 10082, 10081, 10071, 10077, 10070, 10053, 10057, 10055, 10020, 9928, 9929, 9944, 9979, 9923, 9842, annzhang-db; 10203, 10196, 10172, 10176, 10145, 10115, 10107, 10054, 10056, 10018, 9976, 9999, 9998, 9995, 9978, 9973, 9975, 9972, 9974, 9960, 9925, 9920, prithvikannan; 10144, 10166, 10143, 10129, 10059, 10123, 9555, 9619, bbqiu; 10187, 10191, 10181, 10179, 10151, 10148, 10126, 10119, 10099, 10100, 10097, 10089, 10096, 10091, 10085, 10068, 10065, 10064, 10060, 10023, 10030, 10028, 10022, 10007, 10006, 9988, 9961, 9963, 9954, 9953, 9937, 9932, 9931, 9910, 9901, 9852, 9851, 9848, 9847, 9841, 9844, 9825, 9820, 9806, 9802, 9800, 9799, 9790, 9787, 9791, 9788, 9785, 9786, 9784, 9754, 9768, 9770, 9753, 9697, 9749, 9747, 9748, 9751, 9750, 9729, 9745, 9735, 9728, 9725, 9716, 9694, 9681, 9666, 9643, 9641, 9621, 9607, harupy; 10200, 10201, 10142, 10139, 10133, 10090, 10086, 9934, 9933, 9845, 9831, 9794, 9692, 9627, 9626, chenmoneygithub; 10110, wenfeiy-db; 10195, 9895, 9880, 9679, BenWilson2; 10174, 10177, 10109, 9706, jerrylian-db; 10113, 9765, smurching; 10150, 10138, 10136, dbczumar; 10153, 10032, 9986, 9874, 9727, 9707, serena-ruan; 10155, shaotong-db; 10160, 10131, 10048, 10024, 10017, 10016, 10002, 9966, 9924, sunishsheth2009; 10121, 10116, 10114, 10102, 10098, B-Step62; 10095, 10026, 9991, daniellok-db; 10050, Dennis40816; 10062, 9868, Gekko0114; 10033, Anushka-Bhowmick; 9983, 10004, 9958, 9926, 9690, liangz1; 9997, 9940, 9922, 9919, 9890, 9888, 9889, 9810, TomeHirata; 9994, 9970, 9950, lightnessofbein; 9965, 9677, ShorthillsAI; 9906, jessechancy; 9942, 9771, Sai-Suraj-27; 9902, remyleone; 9892, 9865, 9866, 9853, montanarograziano; 9875, Raghavan-B; 9858, Salz0; 9878, maksboyarin; 9882, lukasz-gawron; 9827, Bncer; 9819, gabrielfu; 9792, harshk461; 9726, Chiragasourabh; 9663, Abhishek-TyRnT; 9670, mberk06; 9755, simonlsk; 9757, 9775, 9776, 9774, AmirAflak; 9782, garymm; 9756, issamarabi; 9645, shichengzhou-db; 9671, zhe-db; 9660, mingyu89; 9575, akshaya-a; 9629, pnacht; 9876, C-K-Loan