SageMaker 从 TF 脚本模式部署到 EIA Python3
SageMaker deploying to EIA from TF Script Mode Python3
我已经在 SageMaker 中安装了一个 Tensorflow Estimator,使用带有 framework_version='1.12.0'
和 python_version='py3'
的脚本模式,使用 GPU 实例。
如果我 select 部署实例类型也为 GPU,则直接在此估算器上调用部署是可行的。但是,如果我 select CPU 实例类型 and/or 尝试添加加速器,它会失败并出现错误 docker 找不到要拉取的相应图像。
有人知道如何使用脚本模式在 GPU 上训练 py3 模型,然后部署到 CPU+EIA 实例吗?
我找到了一个部分解决方法,即采取从估计器的训练工件创建 TensorFlowModel 然后从模型部署的中间步骤,但这似乎不支持 python 3(同样,不支持' 找到相应的容器)。如果我切换到 python_version='py2',它会找到容器,但无法通过健康检查,因为我所有的代码都是针对 python 3.
很遗憾,目前没有 TF + Python 3 + EI 服务图像。如果您想使用 TF + EI,您需要确保您的代码与 Python 2.
兼容
编辑:在我最初写这个之后,对TF + Python 3 + EI的支持已经发布。在撰写本文时,我相信 TF 1.12.0、1.13.1 和 1.14.0 都支持 Python 3 + EI。有关完整列表,请参阅 https://github.com/aws/sagemaker-python-sdk#tensorflow-sagemaker-estimators。
我已经在 SageMaker 中安装了一个 Tensorflow Estimator,使用带有 framework_version='1.12.0'
和 python_version='py3'
的脚本模式,使用 GPU 实例。
如果我 select 部署实例类型也为 GPU,则直接在此估算器上调用部署是可行的。但是,如果我 select CPU 实例类型 and/or 尝试添加加速器,它会失败并出现错误 docker 找不到要拉取的相应图像。
有人知道如何使用脚本模式在 GPU 上训练 py3 模型,然后部署到 CPU+EIA 实例吗?
我找到了一个部分解决方法,即采取从估计器的训练工件创建 TensorFlowModel 然后从模型部署的中间步骤,但这似乎不支持 python 3(同样,不支持' 找到相应的容器)。如果我切换到 python_version='py2',它会找到容器,但无法通过健康检查,因为我所有的代码都是针对 python 3.
很遗憾,目前没有 TF + Python 3 + EI 服务图像。如果您想使用 TF + EI,您需要确保您的代码与 Python 2.
兼容编辑:在我最初写这个之后,对TF + Python 3 + EI的支持已经发布。在撰写本文时,我相信 TF 1.12.0、1.13.1 和 1.14.0 都支持 Python 3 + EI。有关完整列表,请参阅 https://github.com/aws/sagemaker-python-sdk#tensorflow-sagemaker-estimators。