【问题标题】:How to copy local MLflow run to remote tracking server?如何将本地 MLflow 运行复制到远程跟踪服务器?
【发布时间】:2020-06-07 07:41:17
【问题描述】:

我目前正在跟踪我的 MLflow 运行到本地文件路径 URI。我还想设置一个远程跟踪服务器与我的合作者共享。我想避免的一件事是将所有内容记录到服务器,因为它可能很快就会被失败的运行淹没。

理想情况下,我想保留我的本地跟踪器,然后能够只将有希望的运行发送到服务器。

将运行从本地跟踪器复制到远程服务器的推荐方法是什么?

【问题讨论】:

    标签: mlflow


    【解决方案1】:

    要将经过训练的模型发布到远程 MLflow 服务器,您应该使用“register_model”API。例如,如果您使用的是 MLflow 的 spacy 风格,您可以如下使用,其中 'nlp' 是经过训练的模型:

        mlflow.spacy.log_model(spacy_model=nlp, artifact_path='mlflow_sample')
        model_uri = "runs:/{run_id}/{artifact_path}".format(
            run_id=mlflow.active_run().info.run_id, artifact_path='mlflow_sample'
        )
        mlflow.register_model(model_uri=model_uri, name='mlflow_sample')
    

    确保应设置以下环境变量。在下面的示例中使用了 S3 存储:

    SET MLFLOW_TRACKING_URI=https://YOUR-REMOTE-MLFLOW-HOST
    SET MLFLOW_S3_BUCKET=s3://YOUR-BUCKET-NAME
    SET AWS_ACCESS_KEY_ID=YOUR-ACCESS-KEY
    SET AWS_SECRET_ACCESS_KEY=YOUR-SECRET-KEY
    

    【讨论】:

    • 我的问题是如何将模型从本地 MLflow 注册表“发布”到 MLflow 的集中实例,而无需再次运行训练或验证。
    猜你喜欢
    • 2019-10-14
    • 1970-01-01
    • 2020-04-12
    • 2016-09-13
    • 1970-01-01
    • 2020-03-11
    • 2020-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多