用于预训练模型的SageMaker端点

时间:2020-07-20 17:13:46

标签: amazon-sagemaker

我有一个经过预先训练的模型,现在尝试使用Sagemaker创建一个端点,我的文件夹结构像这样的“ model.tar.gz”看起来像这样:

model
 |- config.json
 |- pytorch_model.bin
 |- special_tokens_map.json
 |- spiece.model
 |- tokenizer_config.json
 |- training_args.bin
code
 |- inference.py
 | - requirements.txt

运行以下脚本来创建端点:

pytorch_model = PyTorchModel(
    model_data='s3://mck-dl-ai-studio/answer_card/answercard.tar.gz', 
    role=role, 
    entry_point='inference.py',
    framework_version="1.3.1")

predictor = pytorch_model.deploy(instance_type='ml.t2.medium', initial_instance_count=1)

调用InvokeEndpoint操作时发生错误(ModelError):从模型收到消息为“ No module named'transformers'”的服务器错误(500)。有关更多信息,请参见帐户xxxxxx中的https://us-west-2.console.aws.amazon.com/cloudwatch/home?region=us-west-2#logEventViewer:group=/aws/sagemaker/Endpoints/pytorch-inference-2020-07-20-16-45-51-564

我在这里缺少的内容尝试添加source_dir和py_version但没有成功

2 个答案:

答案 0 :(得分:1)

code/requirements.txt应该指定除割炬,割炬视觉和颠簸之外所需的任何第三方库。

参考:https://sagemaker.readthedocs.io/en/stable/frameworks/pytorch/using_pytorch.html#using-third-party-libraries

答案 1 :(得分:0)

我有一个类似的错误。最后,我的model.tar.gz文件夹结构不正确。 (model.pth和/ code不在我的模型文件夹的根目录中)

正如Yoav Zimmerman所述,code / requirements.txt可以指定第三方库。这适用于framework_version =“ 1.3.1”。

帮助我的是在本地运行sagemaker进行调试。请参阅本教程:aws-sagemaker-pytorch-local-dev-flow