【问题标题】:Deploy ML Model on Azure ACI (Container) or AKS (Kubernetes)在 Azure ACI(容器)或 AKS(Kubernetes)上部署 ML 模型
【发布时间】:2020-12-06 07:02:03
【问题描述】:

我正在探索以最具成本效益的方式为我训练有素的机器学习模型提供服务的方法。

我目前有 4 个不同的模型,其中第一个模型的输出构成第二个模型的输入的一部分,依此类推。

当前的用户群非常小,所需的推理数量很少且零星。 IE。每隔几个小时 2 到 3 次,有时甚至是 0 推理。

首先我使用 ACI 进行部署,但由于某种原因,即使没有人访问端点,容器实例仍保持运行。我的印象是实例应该自行停止以避免对未使用的时间计费。

这与部署为实时端点的模型有关吗?当端点/模型未使用时,Kubernetes 部署是否会更合适(比如它会缩减到 0 个节点)吗?

【问题讨论】:

    标签: azure azure-aks azure-machine-learning-service azure-container-instances cost-management


    【解决方案1】:

    我必须仔细检查,但我相当肯定您无法通过在 AKS 上部署的模型缩减到零节点。或许考虑部署到 Azure Functions?

    https://docs.microsoft.com/en-us/azure/machine-learning/how-to-deploy-functions

    【讨论】:

    • Kubernetes 基础架构让我感到困惑。用户节点可以缩小到 0,但听起来无论如何,至少会有 1 个“系统节点”。
    【解决方案2】:

    Kubernetes 仅通过 API 调用支持缩放到零,因为 Horizo​​ntal Pod Autoscaler 确实仅支持缩减到 1 个副本。请在下面找到详细说明..

    In Kubernetes, how can I scale a Deployment to zero when idle

    对于机器学习模型部署,AKS(Kubernetes) 优于 Azure 容器实例。可以将 AKS 连接到 ACI,并使用 Kubernetes 来处理编排和扩展 ..

    如果您正在寻找 Azure 容器实例上的多模型部署,请参考下面的 github 链接...

    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-multi-model/multi-model-register-and-deploy.ipynb

    【讨论】:

      猜你喜欢
      • 2021-06-30
      • 1970-01-01
      • 2020-05-28
      • 1970-01-01
      • 1970-01-01
      • 2021-12-13
      • 2021-09-11
      • 1970-01-01
      • 2022-08-25
      相关资源
      最近更新 更多