Skip to content

fix: pin mlflow<2.19 in cli-jobs-pipelines-with-components-pipeline_with_hyperparameter_sweep-pipeline - #3889

Merged
lavakumarrepala merged 1 commit into
mainfrom
fix/pin-mlflow-cli-pipeline-sweep
May 7, 2026
Merged

fix: pin mlflow<2.19 in cli-jobs-pipelines-with-components-pipeline_with_hyperparameter_sweep-pipeline#3889
lavakumarrepala merged 1 commit into
mainfrom
fix/pin-mlflow-cli-pipeline-sweep

Conversation

@Chakradhar886

@Chakradhar886 Chakradhar886 commented Apr 20, 2026

Copy link
Copy Markdown
Member

Description

Problem
The pipeline_with_hyperparameter_sweep notebook has been failing since December 16, 2025 with a JobException on the /score_data pipeline step:

Root Cause
Around December 16, 2025, the curated environment sklearn-1.5/labels/latest was updated to include MLflow 2.19+. This version introduced the logged-models API, which is not supported by the AzureML tracking server.

This breaks two things in the pipeline:

Train step: mlflow.autolog() fails to properly log/save the model via the AzureML backend
Predict/score_data step: mlflow.sklearn.load_model() fails to load the model output from the sweep step
The train step appeared to succeed but produced corrupted or incompatible model artifacts, causing the downstream score_data step to fail.

Fix
Pinned mlflow<2.19 at runtime in both component YAML commands:

train.yml — Added pip install 'mlflow<2.19' -q && before python train.py
predict.yml — Added pip install 'mlflow<2.19' -q && before python predict.py
This downgrades MLflow to a compatible version before executing the scripts, restoring compatibility with the AzureML tracking server.

Checklist

  • I have read the contribution guidelines.
  • I have coordinated with the docs team (mldocs@microsoft.com) if this PR deletes files or changes any file names or file extensions.
  • Pull request includes test coverage for the included changes.
  • This notebook or file is added to the CODEOWNERS file, pointing to the author or the author's team.

… predict_step failure

The sklearn-1.5/labels/latest curated environment updated to MLflow 2.19+
around Dec 16 2025. MLflow 2.19 uses the logged-models API which is not
supported by AzureML tracking server, breaking mlflow.autolog() in the
train step and mlflow.sklearn.load_model() in the predict step.

Pin mlflow<2.19 at runtime in both train.yml and predict.yml commands.

@sdgilley sdgilley left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

doc approval

@kingernupur kingernupur left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Chakradhar886 Thanks for the detailed explanation. It seems like this notebook is surfacing a deeper problem with our tracking server being incompatible with newer mlflow version.
@jayesh-tanna Do we need to work with the MLFlow service team to fix this instead of constraining the mlflow version here?

@lavakumarrepala lavakumarrepala changed the title fix: pin mlflow<2.19 in CLI pipeline_with_hyperparameter_sweep to fix… fix: pin mlflow<2.19 in cli-jobs-pipelines-with-components-pipeline_with_hyperparameter_sweep-pipeline May 5, 2026
@lavakumarrepala
lavakumarrepala dismissed kingernupur’s stale review May 7, 2026 05:36

Jayesh confirmed it is not required to work with mlflow

@lavakumarrepala
lavakumarrepala merged commit 993f212 into main May 7, 2026
7 checks passed
@lavakumarrepala
lavakumarrepala deleted the fix/pin-mlflow-cli-pipeline-sweep branch May 7, 2026 06:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants