我构建示例 kedro 项目请参考此页面, 并在 mlflow.yml 中将主机指定为我的全局 IP 地址。 但是当我点击"kedro mlflow ui"命令时,它仍然会监听本地。 即使我只在 mlflow.yml 中指定端口为 5001(不是默认值),它也不起作用。 谁能帮我。
Python 版本: 3.6.8 (Anaconda) 凯德罗版本:0.17.0 凯德罗 MLFLOW 版本:0.6.0
(免责声明:我是kedro-mlflow的作者)
你好
你没有做错任何事,它似乎是一个错误(感谢您报告它!):kedro mlflow ui
命令不会从配置中检索ui
和port
参数,正如我们在源代码中看到的那样(这种回归可能在重构过程中掉落了裂缝)。
短期解决方案:直接使用 mlflow 文档中描述的mlflow ui
函数,例如:
mlflow ui --mlflow-tracking-uri <your-tracking-uri> --port <your-port> --host <your-host>
请记住,根据您使用的 mlflow 版本和运行位置(本地文件系统或数据库),跟踪 URI 必须是有效的 URI(即,对于旧的 mlflow 版本,您不能使用"mlruns"相对路径,而是file:///<absolute/path/to/mlruns
即使您位于正确的文件夹中)。根据 mlflow 文档,使用相对路径应该在最新版本中工作,但我从未尝试过。
长期解决方案:该错误将在kedro-mlflow==0.7.1
中修复,并将在未来几周内发布。从此版本开始,您将能够像当前一样直接在mlflow.yml
中声明port
和host
。不过,它仅与kedro>=0.17.1
兼容,因此您需要更新项目模板。