【发布时间】:2019-12-23 10:03:47
【问题描述】:
使用 sagemaker-python-sdk 将部署代码执行到 sagemaker 时,出现以下错误:
UnexpectedStatusException: Error hosting endpoint tensorflow-inference-eia-XXXX-XX-XX-XX-XX-XX-XXX:
Failed. Reason: The image '763104351884.dkr.ecr.us-east-1.amazonaws.com/tensorflow-inference-eia:1.14
-gpu' does not exist..
我用来部署的代码如下:
predictor = model.deploy(initial_instance_count=1,
instance_type='ml.p2.xlarge', accelerator_type='ml.eia1.medium')
如果我删除 accelerator_type 参数,那么端点将被部署而没有错误。知道为什么会这样吗? Sagemaker 似乎指的是不存在的图像。我该如何解决这个问题?
此外,我确保从此处支持该版本:https://github.com/aws/sagemaker-python-sdk#tensorflow-sagemaker-estimators'。我在 TensorFlow:1.14。
编辑: 事实证明,这行得通:
predictor = model.deploy(initial_instance_count=1,
instance_type='ml.m4.xlarge', accelerator_type='ml.eia1.medium')
那么,我猜 GPU 实例无法使用弹性推理?
注意:我将端点部署到的所有实例都没有使用 GPU。 (如果您熟悉或已经成功,请提出一些想法。)
【问题讨论】:
-
这不是一个新问题。我不知道您的特定设置的确切问题,因为我看不到几个移动部件,但这可能会对您有所帮助github.com/aws/sagemaker-python-sdk/issues/912
-
嗨@MatusDubrava,感谢您的回复。我已经检查了您提供的链接。问题是如果我不提及
accelerator_type参数,我可以成功部署端点。该链接侧重于instance_type参数。我愿意尝试其他的东西,有什么建议吗? -
如果你在GPU实例上运行,为什么要添加弹性接口? GPU 已经提供了您需要的加速。
-
@Guy,嘿,谢谢你的回复。在我将模型部署到端点后,我发现推理没有使用 GPU。所以,我想用弹性推理来测试这个。对此有什么想法吗?
-
@PrameshBajracharya,从您的问题编辑看来,当您将弹性接口附加到基于 CPU 的机器(例如 M4)时,您设法让它工作。对吗?
标签: python amazon-web-services tensorflow deployment amazon-sagemaker