Sagemaker 无服务器推理和自定义容器:模型存档器子进程失败



我想使用新的无服务器推理在Sagemaker上托管一个模型。

我根据几个指南编写了自己的推理容器和处理程序。以下是要求:

mxnet
multi-model-server
sagemaker-inference
retrying
nltk
transformers==4.12.4
torch==1.10.0

在非无服务器端点上,这个容器运行得非常好。然而,对于无服务器版本,我在加载模型时收到以下错误消息:

ERROR - /.sagemaker/mms/models/model already exists.

错误由以下子流程引发

['model-archiver', '--model-name', 'model', '--handler', '/home/model-server/handler_service.py:handle', '--model-path', '/opt/ml/model', '--export-path', '/.sagemaker/mms/models', '--archive-format', 'no-archive']

所以这与model-archiver有关(我想这是MMS包中的一个过程?(。

一种可能性是,无服务器sagemaker版本正试图在您已经在推理容器中编写模型的同一位置编写模型。

也许检查一下你的自定义推理代码,不要在那里加载模型。

因此,问题实际上与使用sagemaker推理工具包和MMS托管模型有关,MMS始终使用无服务器推理不支持的多模型场景。

我最终编写了我自己的Flask API,它实际上几乎同样容易,而且更可定制。如果你感兴趣,请打电话给我了解详情。

最新更新