【发布时间】:2023-01-13 02:32:51
【问题描述】:
尝试使用 sagemaker 创建多模型。 执行以下操作:
boto_seasson = boto3.session.Session(region_name='us-east-1')
sess = sagemaker.Session(boto_session=boto_seasson)
iam = boto3.client('iam')
role = iam.get_role(RoleName='sagemaker-role')['Role']['Arn']
huggingface_model = HuggingFaceModel(model_data='s3://bucket/path/model.tar.gz',
transformers_version="4.12.3",
pytorch_version="1.9.1",
py_version='py38',
role=role,
sagemaker_session=sess)
mme = MultiDataModel(name='model-name',
model_data_prefix='s3://bucket/path/',
model=huggingface_model,
sagemaker_session=sess)
predictor = mme.deploy(initial_instance_count=1, instance_type="ml.t2.medium")
如果我尝试预测:
predictor.predict({"inputs": "test"}, target_model="model.tar.gz")
我收到以下错误:
{ModelError}An error occurred (ModelError) when calling the InvokeEndpoint operation: Received client error (400) from primary with message "{
"code": 400,
"type": "InternalServerException",
"message": "[Errno 30] Read-only file system: \u0027/opt/ml/models/d8379026esds430426d32321a85878f6b/model/config.json\u0027"
}
如果我通过 huggingfacemodel 部署单个模型:
huggingface_model = HuggingFaceModel(model_data='s3://bucket/path/model.tar.gz',
transformers_version="4.12.3",
pytorch_version="1.9.1",
py_version='py38',
role=role,
sagemaker_session=sess)
predictor = huggingface_model.deploy(initial_instance_count=1, instance_type="ml.t2.medium")
然后predict 正常工作没有错误。
所以我想知道我在MultiDataModel部署上获得“只读”的原因可能是什么?
提前致谢。
【问题讨论】:
标签: python amazon-web-services boto3 amazon-sagemaker