mlflow.lightgbm
The mlflow.lightgbm
module provides an API for logging and loading LightGBM models.
This module exports LightGBM models with the following flavors:
- LightGBM (native) format
This is the main flavor that can be loaded back into LightGBM.
mlflow.pyfunc
Produced for use by generic pyfunc-based deployment tools and batch inference.
-
mlflow.lightgbm.
autolog
()[source] Note
Experimental: This method may change or be removed in a future release without warning.
Enables automatic logging from LightGBM to MLflow. Logs the following.
parameters specified in lightgbm.train.
metrics on each iteration (if
valid_sets
specified).metrics at the best iteration (if
early_stopping_rounds
specified).feature importance (both “split” and “gain”) as JSON files and plots.
trained model.
Note that the scikit-learn API is not supported.
-
mlflow.lightgbm.
get_default_conda_env
()[source] - Returns
The default Conda environment for MLflow Models produced by calls to
save_model()
andlog_model()
.
-
mlflow.lightgbm.
load_model
(model_uri)[source] Load a LightGBM model from a local file or a run.
- Parameters
model_uri –
The location, in URI format, of the MLflow model. For example:
/Users/me/path/to/local/model
relative/path/to/local/model
s3://my_bucket/path/to/model
runs:/<mlflow_run_id>/run-relative/path/to/model
For more information about supported URI schemes, see Referencing Artifacts.
- Returns
A LightGBM model (an instance of lightgbm.Booster).
-
mlflow.lightgbm.
log_model
(lgb_model, artifact_path, conda_env=None, registered_model_name=None, **kwargs)[source] Log a LightGBM model as an MLflow artifact for the current run.
- Parameters
lgb_model – LightGBM model (an instance of lightgbm.Booster) to be saved. Note that models that implement the scikit-learn API are not supported.
artifact_path – Run-relative artifact path.
conda_env –
Either a dictionary representation of a Conda environment or the path to a Conda environment yaml file. If provided, this describes the environment this model should be run in. At minimum, it should specify the dependencies contained in
get_default_conda_env()
. IfNone
, the defaultget_default_conda_env()
environment is added to the model. The following is an example dictionary representation of a Conda environment:{ 'name': 'mlflow-env', 'channels': ['defaults'], 'dependencies': [ 'python=3.7.0', 'pip': [ 'lightgbm==2.3.0' ] ] }
registered_model_name – Note:: Experimental: This argument may change or be removed in a future release without warning. If given, create a model version under
registered_model_name
, also creating a registered model if one with the given name does not exist.kwargs – kwargs to pass to lightgbm.Booster.save_model method.
-
mlflow.lightgbm.
save_model
(lgb_model, path, conda_env=None, mlflow_model=<mlflow.models.Model object>)[source] Save a LightGBM model to a path on the local file system.
- Parameters
lgb_model – LightGBM model (an instance of lightgbm.Booster) to be saved. Note that models that implement the scikit-learn API are not supported.
path – Local path where the model is to be saved.
conda_env –
Either a dictionary representation of a Conda environment or the path to a Conda environment yaml file. If provided, this describes the environment this model should be run in. At minimum, it should specify the dependencies contained in
get_default_conda_env()
. IfNone
, the defaultget_default_conda_env()
environment is added to the model. The following is an example dictionary representation of a Conda environment:{ 'name': 'mlflow-env', 'channels': ['defaults'], 'dependencies': [ 'python=3.7.0', 'pip': [ 'lightgbm==2.3.0' ] ] }
mlflow_model –
mlflow.models.Model
this flavor is being added to.