我看了很多关于在本地部署SageMaker模型的帖子,但它们必须绑定到一个亚马逊网络服务笔记本实例,才能在本地运行预测/服务(亚马逊网络服务SageMaker Python SDK)。这违背了完全脱机运行Sagemaker训练模型的实际意图。还有一些人尝试在S3上取消对tar.gz文件的筛选,然后包装要在本地部署的内容。然而,该过程似乎非常局限于某些类型的模型,如XGBoost和MXnet。因此,有没有办法脱机部署SageMaker训练过的模型,而不依赖于Sagemaker笔记本实例?任何形式的建议都将不胜感激。谢谢。
发布于 2020-04-03 11:34:30
我已经通过Amazon SageMaker Local Mode在本地部署了PyTorch模型。我相信同样的过程也适用于其他拥有官方SageMaker容器的ML框架。您可以在本地运行与SageMaker在亚马逊网络服务基础设施上部署模型时使用的相同的Docker容器。
用于在本地部署Sagemaker端点以进行推理的文档有点分散。摘要:
Python客户端使用本地版本:通常,您可以使用botocore.client.SageMaker和botocore.client.SageMakerRuntime类来使用
sagemaker.local.LocalSagemakerClient()和sagemaker.local.LocalSagemakerRuntimeClient()。
tar.gz模型文件。
instance_type设置为local。<代码>H214<代码>G215我写了How to setup a local AWS SageMaker environment for PyTorch,其中详细介绍了它是如何工作的。
发布于 2020-02-25 20:45:27
一旦你使用亚马逊SageMaker训练了一个模型,你就有了一个模型条目。模型将指向S3中的模型工件。此tag.gz文件具有模型权重。文件的格式取决于框架(tensorflow/pytorch/mxnet/...)你已经训练过模型了。如果您使用过SageMaker内置算法,则大多数算法都是用MXNet或XGBoost实现的,因此您可以使用相关的模型服务软件来运行模型。
如果您需要服务软件,您可以在本地推理服务器上以推理模式运行SageMaker深度学习容器。或者使用像TFServing这样的开源服务软件,或者在内存中加载模型。
https://stackoverflow.com/questions/60310964
复制相似问题