Skip to content

Fix(ExpManager): Resolve MLflow run_name duplicate argument error#15261

Open
chaosido wants to merge 2 commits intoNVIDIA-NeMo:mainfrom
chaosido:fix/mlflow-run-name-conflict
Open

Fix(ExpManager): Resolve MLflow run_name duplicate argument error#15261
chaosido wants to merge 2 commits intoNVIDIA-NeMo:mainfrom
chaosido:fix/mlflow-run-name-conflict

Conversation

@chaosido
Copy link
Contributor

@chaosido chaosido commented Jan 6, 2026

What does this PR do ?
This PR resolves a TypeError in
exp_manager
when initializing the MLFlowLogger. The error occurs because MLFlowLogger is called with an explicit run_name=version argument while **mlflow_kwargs (serialized from a DictConfig schema) also contains a default run_name: None field, leading to a "multiple values for keyword argument" conflict.

Collection: Core / Utils

Changelog
Modified
nemo/utils/exp_manager.py
to convert mlflow_kwargs to a native dictionary and pop('run_name') before passing it to the MLFlowLogger constructor.
Usage
no changes

exp_manager:
create_mlflow_logger: true
mlflow_logger_kwargs:
experiment_name: my_experiment
tracking_uri: file://./mlruns
GitHub Actions CI
The GitHub Actions CI will run automatically when the "Run CICD" label is added to the PR.

Before your PR is "Ready for review"
Pre checks:

Make sure you read and followed Contributor guidelines
Did you write any new necessary tests? (Benign fix to logging initialization)
Did you add or update any necessary documentation?
Does the PR affect components that are optional to install? (Ex: Numba, Pynini, Apex etc)
Reviewer: Does the PR have correct import guards for all optional libraries? (MLflow is optional but already handled by existing imports)
PR Type:

New Feature
Bugfix
Documentation
Who can review?
@titu1994, @ericharper

Additional Information
Related to reported issues with MLflow integration in NeMo 2.x where Hydra schemas serialize default None values into keyword arguments.

chaosido and others added 2 commits January 6, 2026 13:45
Removes run_name from mlflow_kwargs before unpacking into MLFlowLogger. Also ensures DictConfig is converted to container first.

Signed-off-by: chaosido <wonnink.jesse@gmail.com>
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.

1 participant