【问题标题】:MLflow artifacts on S3 but not in UIS3 上的 MLflow 工件,但 UI 中没有
【发布时间】:2022-07-29 23:50:33
【问题描述】:

我正在本地机器上运行 mlflow,并通过远程跟踪服务器记录所有内容,并将我的工件存储到 S3 存储桶中。我已经确认它们在运行后存在于 S3 中,但是当我查看 UI 时,工件部分完全是空白的。没有错误,只是空白。 知道这是为什么吗?我在 UI 中添加了一张图片。

【问题讨论】:

  • 我也有同样的问题。我认为 MLFlow UI 正确连接到工件所在的位置(否则,它只会说“没有记录工件”。它只是不显示它们......你解决了吗?
  • @Requin 还没有。我在解决其他问题时把它放在一边,但我又开始研究它了。如果我找到答案,我会发布。
  • 我解决了这个问题;就我而言,MLFlow 服务器的工件位置错误。此连接指向一个不存在的地址。

标签: amazon-s3 mlflow


【解决方案1】:

您应该在对 MLflow 跟踪服务器的工件请求中看到 500 响应,例如通过单击感兴趣的模型页面(在浏览器控制台中)。 UI 服务不知道位置(因为您将其设置为 S3 存储桶)并尝试加载默认值。

您需要为您的mlflow server 命令指定--artifacts-destination s3://yourPathToArtifacts 参数。此外,在您的环境中运行服务器时,不要忘记提供一些常见的 AWS 凭证提供程序(例如 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 环境变量)以及 MLFLOW_S3_ENDPOINT_URL 环境变量以指向您的 S3 端点。

【讨论】:

  • 感谢您的回复。您能否澄清一下您所说的 S3 端点 url 是什么意思?您是指 S3 存储桶的文字 URL:s3.console.aws.amazon.com/etc....?我正在尝试这个,但我似乎仍然有问题。当我进入我的存储桶的 UI 以查找 URL 时,它们复制 URL 和复制 URI 按钮都是灰色的。
  • 这仅适用于您在需要指定其所在位置的自定义环境中运行 S3。 F.e.,如果您有本地模拟 S3 设置,则可以将 env var 传递为 MLFLOW_S3_ENDPOINT_URL=http://localhost:4566
猜你喜欢
  • 2020-09-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-24
  • 1970-01-01
  • 2020-09-10
  • 2020-03-29
  • 1970-01-01
相关资源
最近更新 更多