【问题标题】:Copying Experiments from a MLFlow server to another MLFlow server将实验从 MLFlow 服务器复制到另一个 MLFlow 服务器
【发布时间】:2021-08-16 14:27:55
【问题描述】:

我在 Linux 机器上有一个用户,我从这个用户运行一个 mlflow 服务器。工件存储在本地 mlruns 文件夹中。让我们将此用户称为用户 A。然后我从另一个 Linux 用户运行另一个 mlflow 服务器并将此用户称为用户 B。我想将驻留在用户 A 的 mlruns 目录中的旧实验移动到在用户 B 中运行的 mlflow。我只是将用户 A 的 mlruns 目录移动到用户 B 的主目录,然后再次从那里运行 mlflow。当我通过浏览器访问 mlflow UI 时,我看到工件位置已正确配置为用户 B 的 mlruns 文件夹,但我看不到从用户 A 的 mlruns 目录移动的实验。我怎样才能在 UI 中也看到它们?

【问题讨论】:

    标签: mlflow


    【解决方案1】:

    您想使用官方 MLflow API 来迁移实验并在跟踪服务器之间运行。 见:https://github.com/amesar/mlflow-export-import

    【讨论】:

    • 哦,太好了。我会看看那个回购谢谢。
    • 它没有用,但我设法以不同的方式做到了。
    【解决方案2】:

    我通过以下步骤成功地将实验和运行从旧服务器迁移到新服务器:

    • 我将 mlruns 目录复制到了新服务器的位置。
    • 我创建了一个不同的 PostgreSQL 数据库,其内容与旧服务器完全相同。
    • 我更改了数据库中 RUNS 表的 artifact_uri 字段和 EXPERIMENTS 表的 artifact_location 字段,以反映实验和运行的新位置。
    • 这样启动服务器:mlflow server --backend-store-uri <postgresql-db> <db-pass>@<db> --default-artifact-root <new-artifact-location> -h 0.0.0.0 -p 8000

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-12
      • 2020-06-07
      • 2020-11-16
      • 2020-03-16
      • 2020-04-12
      • 2020-06-18
      • 2020-08-04
      • 1970-01-01
      相关资源
      最近更新 更多