试图部署本地预先培训的模型,通过萨吉梅克创建一个端点并使用它,我最近一直在学习AI/ML领域,我是这样一个菜鸟。需要帮助。
我部署了一个模型
from sagemaker.pytorch import PyTorchModel
pytorch_model = PyTorchModel(model_data='model.tar.gz',
role=role,
entry_point='inference.py',
framework_version="1.11.0",
py_version="py38")
predictor =
pytorch_model.deploy(instance_type='ml.g4dn.xlarge',
initial_instance_count=1)预测数据
from PIL import Image
data = Image.open('./samples/inputs/1.jpg')
result = predictor.predict(data)
img = Image.open(result)
img.show()因此,我得到了一个错误,无法加载我的模型。
您也可以在这里中看到错误日志。
发布于 2022-09-02 02:14:08
我没有完全做到,但装载模式现在运行良好。这与model.tar.gz和inference.py的结构有关。
我的model.tar.gz结构如下所示
model.tar.gz
|
( model.pt )
编号/
\x{e76f}-代码/
代码/要求.code
这种结构是必需的。
有时,model.pt在生成model.tar.gz时会以某种方式变为空文件,所以最好检查model.pt大小不是"0“b4 make tar.gz文件。
此外,如果inference.py (如input_fn、predict_fn和output_fn )出错,即使model_fn在我的经验中正常工作,也可能发生Backend worker process died。
我现在正在和request_body做斗争。即使输入JSON文件,我仍然将get request_body作为字节数组。我的期望是request_body必须是JSON,但它不是。
如果我解决了这个问题,我会更新。
=======================
最后,我成功地从sagemaker的端点进行推理。
问题是,在部署模型SageMaker SDK v2时,必须创建和输入序列化程序和反序列化器类实例。
您可以找到从这里上的sagemaker提供的序列化程序和反序列化器。
你也可以上自己的课。
https://stackoverflow.com/questions/73441001
复制相似问题