如何在 mlflow 命令行中设置 run_name?

How can I set run_name in mlflow command line?

MLFlow 版本:1.4.0 Python版本:3.7.4

我运行将 UI 设置为 mlflow server... 以及所有必需的命令行选项。

我将 MLFlow 作为 MLFlow 项目登录到 MLFlow,并带有适当的 MLproject.yaml 文件。该项目在 Docker 容器上 运行,因此 CMD 如下所示:

mlflow run . -P document_ids=${D2V_DOC_IDS} -P corpus_path=... --no-conda --experiment-name=${EXPERIMENT_NAME}

运行这样的实验结果是空白run_name。我知道有一个 run_id,但我也想看到 run_name 并将其设置在我的代码中——在命令行中,或者在我的代码中设置为 mlflow.log....

我看过 ,但我想以编程方式设置 运行 名称,而不是在 UI 上手动更改它。

mlflow.start_run() 的参数之一是 run_name。这将使您能够以编程方式访问以在每次迭代中设置 运行 名称。请参阅文档 here

这是一个例子:

from datetime import datetime

## Define the name of our run
name = "this run is gonna be bananas" + datetime.now()

## Start a new mlflow run and set the run name
with mlflow.start_run(run_name = name):

    ## ...train model, log metrics/params/model...

    ## End the run
    mlflow.end_run()

如果要将名称设置为 MLflow 项目的一部分,则必须将其指定为项目入口点中的参数。这位于 MLproject file 中。然后,您可以从命令行将这些值传递给 mlflow.start_run() 函数。