Run experiments with any ML library, framework, or language, and automatically keep track of parameters, metrics, code, and models from each experiment. By using MLflow on Databricks, you can securely share, manage, and compare experiments results, along with corresponding artifacts and code versions, thanks to built-in integrations with the Databricks Workspace and notebooks.
Use one central place to discover and share ML models, collaborate on moving them from experimentation to online testing and production, integrate with approval and governance workflows and CI/CD pipelines, and monitor ML deployments and their performance. The MLflow Model registry facilitates sharing of expertise and knowledge, and helps you stay in control.
Quickly deploy production models for batch inference on Apache SparkTM, or as REST APIs using built-in integration with Docker containers, Azure ML, or Amazon SageMaker. With Managed MLflow on Databricks, you can operationalize and monitor production models using Databricks Jobs Scheduler and auto-managed Clusters to scale as needed based on business needs.
MLflow Tracking Server: Get started quickly with a built-in tracking server to log all runs and experiments in one place. No configuration needed on Databricks.
Experiment Management: Create, secure, organize, search, and visualize experiments from within the Workspace with access control and search queries.
MLflow Run Sidebar: Automatically track runs from within notebooks and capture a snapshot of your notebook for each run, so that you can always go back to previous versions of your code.
Logging Data with Runs: Log parameters, data sets, metrics, artifacts and more as runs to local files, to a SQLAlchemy compatible database, or remotely to a tracking server.
Delta Lake Integration: Track large-scale data sets that fed your models with Delta Lake snapshots.
Artifact Store: Store large files such as S3 buckets, shared NFS file system, and models in Amazon S3, Azure Blob Storage, Google Cloud Storage, SFTP server, NFS, and local file paths.
MLflow Projects: MLflow projects allow to specify the software environment that is used to execute your code. MLflow currently supports the following project environments: Conda environment, Docker container environment, and system environment. Any Git repo or local directory can be treated as an MLflow project.
Remote Execution Mode: Run MLflow Projects from Git or local sources remotely on Databricks clusters using the Databricks CLI to quickly scale your code.
Central Repository: Register MLflow models with the MLflow Model Registry. A registered model has a unique name, version, stage, and other metadata.
Model Versioning: Automatically keep track of versions for registered models when updated.
Model Stage: Assigned preset or custom stages to each model version, like “Staging” and “Production” to represent the lifecycle of a model.
CI/CD Workflow Integration: Record stage transitions, request, review and approve changes as part of CI/CD pipelines for better control and governance.
Model Stage Transitions: Record new registration events or changes as activities that automatically log users, changes, and additional metadata such as comments.
MLflow Models: A standard format for packaging machine learning models that can be used in a variety of downstream tools—for example, real-time serving through a REST API or batch inference on Apache Spark.
Built-In Model Flavors: MLflow provides several standard flavors that might be useful in your applications, like Python and R functions, H20, Keras, MLeap, PyTorch, Scikit-learn, Spark MLlib, TensorFlow, and ONNX.Built-In Deployment Tools: Quickly deploy on Databricks via Apache Spark UDF for, a local machine, or several other production environments such as Microsoft Azure ML, Amazon SageMaker, and building Docker Images for Deployment.
|MLflow tracking API|
|MLflow tracking server||Self-hosted||Fully managed|
|Git & Conda integration|
|Scalable cloud/clusters for project runs|
|MLflow Model Registry|
|ACL-based Stage Transition|
|CI/CD Workflows Integration|
|Built-in batch inference|
|Built-in streaming analytics|
Security & Management
|Role-based access control|
MLflow is a lightweight set of APIs and user interfaces that can be used with any ML framework throughout the Machine Learning workflow. It includes four components:
Managed MLflow on Databricks is a fully managed version of MLflow providing practitioners with reproducibility and experiment management across Databricks Notebooks, Jobs, and data stores, with the reliability, security, and scalability of the Unified Data Analytics Platform.