You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复MLflow服务器上显示的HDFS模型/制品路径错误问题

MLflow UI Artifact Path Bug with HDFS (Version 1.2.0)

问题背景

你在使用MLflow 1.2.0时碰到了一个UI路径渲染的问题,具体操作和现象如下:

  • 启动MLflow服务器的命令:
    mlflow server --host myhost -p myport --backend-store-uri mysql://user@localhost/mlflow --default-artifact-root hdfs://myhost/user/myid/mlflow_test
    
  • 运行实验:
    mlflow run sklearn_elasticnet_wine -P alpha=0.5 --no-conda
    
  • 通过mlflow.sklearn.log_model(lr, "model")将模型日志到HDFS存储
  • 在UI中,model目录的路径显示正确(run_id/artifacts/model),但点击该目录下的MLmodel文件时,路径错误地变为run_id/artifacts/MLmodel,缺失了关键的model子目录

问题原因

这是MLflow 1.2.0版本中一个已知的bug,当使用HDFS作为artifact存储后端时,UI在生成子目录下文件的访问路径时,会错误地省略中间的目录层级。这个问题已经在MLflow 1.3.0及后续的版本中被官方修复。

解决方案

1. 升级MLflow到稳定版本(推荐方案)

最彻底的解决方式是升级MLflow到最新的稳定版本,这样可以直接修复这个UI路径问题。执行以下命令完成升级:

pip install --upgrade mlflow

升级完成后,重启你的MLflow服务器,重新运行实验,此时UI中点击MLmodel文件时,路径会正确显示为run_id/artifacts/model/MLmodel。

2. 临时 workaround(无法升级时)

如果暂时无法升级MLflow版本,你可以通过以下两种方式访问MLmodel文件:

  • 手动拼接HDFS路径访问:正确的HDFS路径为hdfs://myhost/user/myid/mlflow_test/<你的run_id>/artifacts/model/MLmodel,你可以使用HDFS命令直接查看内容:
    hdfs dfs -cat hdfs://myhost/user/myid/mlflow_test/<run_id>/artifacts/model/MLmodel
    
  • 直接构造UI访问URL:在浏览器地址栏中手动补全缺失的model路径,将错误的URLmyhost:myport/#/experiments/0/runs/run_id/artifacts/MLmodel修改为myhost:myport/#/experiments/0/runs/run_id/artifacts/model/MLmodel,即可正确查看文件内容。

另外需要确认的是,你的模型日志代码mlflow.sklearn.log_model(lr, "model")是完全符合标准的,没有语法或逻辑错误,所以问题的核心确实是MLflow 1.2.0版本的UI渲染bug。

内容的提问来源于stack exchange,提问作者Kyle Chen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:03:32