如何在Azure中的“ PythonScriptStep”中执行“ Model.deploy”?

问题描述

我有一个AutoML Pipeline的需求,需要做deploy models

ButtonA

我创建了以下脚本


train_step = AutoMLStep(name='AutoML_temporal',automl_config=automl_config,outputs=[metrics_data,model_data],enable_default_model_output=False,enable_default_metrics_output=False,allow_reuse=True)

extremidade_name = PipelineParameter("extremidade_name",default_value="extr001mgm")

deploy_step = PythonScriptStep(script_name="deploy.py",name="deploy",allow_reuse=False,arguments=["--extremidade_name",extremidade_name,"--model_path",inputs=[model_data],compute_target=compute_cluster,runconfig=aml_run_config)

但是我需要定义inference_config

#%% deploy.py
from azureml.core.model import Model,Dataset
from azureml.core.run import Run,_OfflineRun
from azureml.core import Workspace
from azureml.core.webservice import AksWebservice
import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--extremidade_name",required=True)
parser.add_argument("--model_path",required=True)
args = parser.parse_args()

print(f"model_name : {args.extremidade_name}")
print(f"model_path: {args.model_path}")

run = Run.get_context()
ws = Workspace.from_config() if type(run) == _OfflineRun else run.experiment.workspace

from azureml.core.webservice import LocalWebservice,Webservice

deployment_config = AksWebservice.deploy_configuration(cpu_cores = 1,memory_gb = 1)
service = Model.deploy(workspace=ws,name = args.extremidade_name,models=[args.model_path])
service.wait_for_deployment(show_output = True)
print(service.state)

如何读取“ path-to-score.py”?如何制作此脚本?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)