Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Specify host and port in mlflow.yml and run "kedro mlflow ui", but host and port still default (localhost:5000) not change

Tags:

mlflow

kedro

I build sample kedro project refer to this page, and specify host as my global ip address in mlflow.yml. but when I hit "kedro mlflow ui" command, it still listen to local. even I only specify port to 5001 (not default) in mlflow.yml, it does not work. Can anyone help me.

python version: 3.6.8 (anaconda) kedro version: 0.17.0 kedro mlflow version: 0.6.0

like image 352
RCheng Avatar asked Sep 05 '25 03:09

RCheng


1 Answers

(Disclaimer: I am the author of kedro-mlflow)

Hi,

you are not doing anything wrong, it appears to be a bug (thanks for reporting it!): the kedro mlflow ui command does not retrieve the ui and port parameters from the configuration, as we can see in the source code (this regression probably fell of the cracks during a refactoring).

Short term solution: Use directly the mlflow ui function as described in mlflow documentation , e.g.:

mlflow ui --mlflow-tracking-uri <your-tracking-uri> --port <your-port> --host <your-host>

Keep in mind that depending on the version of mlflow you use and the location of your runs (a local filesystem or a database) the tracking uri must be a valid uri (i.e. for old mlflow versions you cannot use "mlruns" relative path, but rather file:///<absolute/path/to/mlruns even if you are in the right folder). According to mlflow documentation using a relative path should work in most recent versions though, but I have never tried it.

Long term solution: The bug will be fixed in kedro-mlflow==0.7.1 which will be released in the coming weeks. From this version on, you will be able to declare port and host directly in mlflow.yml as you are currently doing. It will be compatible only with kedro>=0.17.1 though, so you will need to update your project template.

like image 158
Galileo-Galilei Avatar answered Sep 07 '25 23:09

Galileo-Galilei