python - 在 Azure Container Regisrty 上使用自定义 Docker 映像部署 Azure 机器学习模型
问题描述
我想使用Azure 机器学习服务在 Azure 上训练Azure 机器学习模型。但我想使用自定义 Docker 映像在 azure 上部署模型。我无法理解如何使用自定义 Docker 映像部署机器学习模型。
如果有任何关于使用自定义图像部署 ml 模型的教程或博客,请与我分享。
请检查以下 Docker 文件命令:-
# Set locale
RUN apt-get update
RUN apt-get install locales
RUN locale-gen en_US.UTF-8
RUN update-locale LANG=en_US.UTF-8
# Install MS SQL v13 driver for PyOdbc
RUN apt-get install -y curl
RUN apt-get install apt-transport-https
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN exit
RUN apt-get update
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql
RUN apt-get install -y unixodbc-dev
我想使用Azure Container Registry推送 Docker 映像并使用自定义 Docker 映像。请让我知道是否有任何方法。
有什么方法可以使用自定义 docker 映像部署 Azure ML 模型?
解决方案
您可以执行以下操作:
- 使用在 Docker 部分中指定的自定义 Docker 映像的坐标创建一个 [Environment][1]。
- 使用该 Environment 作为参数创建 [InferenceConfig][2],并在部署模型时使用它。
例如,假设您已经有一个模型并省略了其他参数:
from azureml.core.environment import Environment
from azureml.core.model import InferenceConfig
env = Environment(name="myenv")
env.docker.base_image = "mybaseimage"
env.docker.base_image_registry.address = "ip-address"
env.docker.base_image_registry.username = "my-username"
env.docker.base_image_registry.password = "my-password"
ic = InferenceConfig(…,environment = env)
model.deploy(…,inference_config = ic)
[1]: https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.environment?view=azure-ml-py
[2]: https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.model.inferenceconfig?view=azure-ml-py
推荐阅读
- javascript - 无法在 ComponentDidMount 中使用 redux 数据
- javascript - 取消静音背景视频的按钮
- python-3.x - 如何从 MainWindow 隐藏或删除 NavigationToolbar
- c - 将程序功能从字段更改为结构
- reactjs - 在 nextjs 中使用持久布局
- c++ - 从 powershell 编译 C++ 项目不起作用
- asp.net-core - asp.net核心中URL中的控制器名称?
- c# - 从 azure 函数应用程序将文件上传到 azure 文件共享
- sql - Unique constrains on different type
- sql - T-SQL 将算术公式转换为其组件