AzureML 模型注册
AzureML Model Register
我正尝试使用 Run
Class 注册模型,如下所示:
model = run.register_model(
model_name=model_name,
model_path=model_path)
消息错误:Could not locate the provided model_path ... in the set of files uploaded to the run...
我发现解决此问题的唯一方法是使用 Model
Class 代替:
model = Model.register(
workspace=ws,
model_name=model_name,
model_path=model_path,
model_framework=Model.Framework.SCIKITLEARN,
model_framework_version=sklearn.__version__,
description='Model Deescription',
tags={'Name' : 'ModelName', 'Type' : 'Production'},
model_framework=Model.Framework.SCIKITLEARN,
model_framework_version='1.0'
)
我认为问题在于您依赖 AML 后台进程自动将 ./outputs 下的内容上传到 AML 工作区。
但是当上传未完成并且我们立即调用 run.register_model 从 AML 工作区获取内容时,就会发生错误。
为避免这种情况,您可以这样做:
- 将模型 (joblib.dump) 保留到输出以外的自定义文件夹
- 手动运行 upload_file 上传模型 AML 工作区。将目的地命名为与您的模型文件相同的名称。
- 然后 运行 run.register_model.
我正尝试使用 Run
Class 注册模型,如下所示:
model = run.register_model(
model_name=model_name,
model_path=model_path)
消息错误:Could not locate the provided model_path ... in the set of files uploaded to the run...
我发现解决此问题的唯一方法是使用 Model
Class 代替:
model = Model.register(
workspace=ws,
model_name=model_name,
model_path=model_path,
model_framework=Model.Framework.SCIKITLEARN,
model_framework_version=sklearn.__version__,
description='Model Deescription',
tags={'Name' : 'ModelName', 'Type' : 'Production'},
model_framework=Model.Framework.SCIKITLEARN,
model_framework_version='1.0'
)
我认为问题在于您依赖 AML 后台进程自动将 ./outputs 下的内容上传到 AML 工作区。 但是当上传未完成并且我们立即调用 run.register_model 从 AML 工作区获取内容时,就会发生错误。 为避免这种情况,您可以这样做:
- 将模型 (joblib.dump) 保留到输出以外的自定义文件夹
- 手动运行 upload_file 上传模型 AML 工作区。将目的地命名为与您的模型文件相同的名称。
- 然后 运行 run.register_model.