3

我是 databricks 和使用 mlflow 和 azureml 部署模型的新手,我正在尝试部署我的模型,但没有找到很多文档或示例。

我有我保存的模型:

mlflow.sklearn.save_model(model, model_path, 
                          conda_env=conda_env_file_name)

我创建了工作区和 aci webservice,下一步是创建图像和 webservice:

# image creation
from azureml.core.image import ContainerImage
myimage_config = ContainerImage.image_configuration(execution_script = driver_file, 
                                                    runtime = "python", 
                                                    conda_file = conda_env_file_name)

# Webservice creation
myservice = AciWebservice.deploy_from_model(
  workspace=ws, 
  name="service",
  deployment_config = aciconfig,
  models = [model_path],
  image_config = myimage_config)

myservice.wait_for_deployment(show_output=True)

但是,当我尝试创建 web 服务时,我收到一个错误并查看日志:

mlflow.exceptions.MlflowException: Could not find an "MLmodel" configuration file at "mode_path"

我的乐谱文件初始化函数是这样的:

def init():
    global model
    # retreive the path to the model file using the model name
    model_path = Model.get_model_path('model_path')
    model = joblib.load(model_path)

它似乎找不到模型的路径。我不确定在保存图像的那一刻,模型没有保存在其中,因此 sklearn.load_model 找不到它。我很困惑,因为我已经看到可以使用 mlflow 或 azureml 部署模型。我认为问题在于 mlflow.save_model 没有注册模型,然后就没有路径了。有人能够解决这个问题吗?部署模型的最佳方式是什么?

4

0 回答 0