在Azure ACI(Container)或AKS(Kubernetes)上部署ML模型



我正在探索以最具成本效益的方式为我训练的ML模型提供服务的方法。

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

目前的用户基数非常小,所需推断的数量也很少,而且是零星的。Ie.每隔几个小时2-3次,甚至有几天推理为0。

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

这与作为实时端点部署的模型有关吗?当端点/模型未使用时,Kubernetes部署是否更合适(如中所示(?

我必须仔细检查,但我很确定,使用部署在AKS上的模型,不能将节点缩减为零。也许可以考虑部署到Azure功能?

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

Kubernetes只支持通过API调用将其缩放为零,因为Horizontal Pod Autoscaler只支持将其缩小到1个副本。请在下面找到详细的解释。。

在Kubernetes中,当空闲时,我如何将部署扩展到零

与Azure容器实例相比,AKS(Kubernetes(更适合用于机器学习模型部署。可以将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

最新更新