我正在使用 Azure 机器学习服务将 ML 模型部署为 Web 服务。
我注册了一个model
,现在想将它部署为指南中的 ACI Web 服务。
为此,我定义
from azureml.core.webservice import Webservice, AciWebservice
from azureml.core.image import ContainerImage
aciconfig = AciWebservice.deploy_configuration(cpu_cores=4,
memory_gb=32,
tags={"data": "text", "method" : "NB"},
description='Predict something')
和
image_config = ContainerImage.image_configuration(execution_script="score.py",
docker_file="Dockerfile",
runtime="python",
conda_file="myenv.yml")
并创建一个图像
image = ContainerImage.create(name = "scorer-image",
models = [model],
image_config = image_config,
workspace = ws
)
图像创建成功
创建图像图像评分器图像的图像创建操作已完成:5,操作“成功”
此外,通过在 Azure VM 上本地运行映像来对映像进行故障排除
sudo docker run -p 8002:5001 myscorer0588419434.azurecr.io/scorer-image:5
允许我针对http://localhost:8002/score
.
但是,部署与
service_name = 'scorer-svc'
service = Webservice.deploy_from_image(deployment_config = aciconfig,
image = image,
name = service_name,
workspace = ws)
失败了
创建服务
运行。
FailedACI 服务创建操作已完成,操作“失败”
服务创建轮询已达到终端状态,当前服务状态:正在转换
服务创建轮询已达到终端状态,收到意外响应。过渡
我尝试设置aciconfig
更慷慨memory_gb
,但无济于事:部署保持在过渡状态(如果在 Azure 门户上监视,如下图所示):
此外,跑步service.get_logs()
给了我
WebserviceException:收到来自模型管理服务的错误响应:响应代码:404
什么可能是罪魁祸首?