我正在尝试设置一个多模型端点(或者更准确地重新设置它,因为我很确定它不久前在 sagemaker 的早期版本上运行)来进行语言翻译。但我经常遇到同样的问题。这就是我正在尝试运行的内容(从 sagemaker 上的笔记本):
import sagemaker
from sagemaker.pytorch.model import PyTorchModel
from sagemaker.predictor import JSONSerializer, JSONDeserializer
role = 'role_name...'
pytorch_model = PyTorchModel(model_data='s3://foreign-language-models/opus-mt-ROMANCE-en.tar.gz',
role=role,
framework_version="1.3.1",
py_version="py3",
source_dir="code",
entry_point="deploy_multi_model.py")
x = pytorch_model.predictor_cls(endpoint_name='language-translation')
x.serializer = JSONSerializer()
x.deserializer = JSONDeserializer()
x.predict({'model_name': 'opus-mt-ROMANCE-en', 'text': ["Hola que tal?"]})
Run Code Online (Sandbox Code Playgroud)
我遇到了错误:
ModelError: An error occurred (ModelError) when calling the InvokeEndpoint operation: Received server error (500) from model with message "{
"code": 500,
"type": "InternalServerException",
"message": "Worker died."
}
Run Code Online (Sandbox Code Playgroud)
当我调查日志时,错误链接到唯一值得注意的一条:
epollEventLoopGroup-4-1 com.amazonaws.ml.mms.wlm.WorkerThread - 9000 Worker disconnected. WORKER_MODEL_LOADED
Run Code Online (Sandbox Code Playgroud)
但我不明白为什么会发生这种情况。任何帮助将不胜感激,因为这目前让我发疯!如果您需要我提供更多信息来提供帮助,请随时询问。
这个问题很老了,可能无法回答,但是,面对这些问题时的处理方法非常简单:
这是由于一般内部错误而导致的服务不可用消息。您应该从CloudWatch打开完整的端点日志并查看它在哪里发生故障。原因可以是任何类型。
要调试问题,请通过单击训练过程屏幕中的“查看日志”或转到以下路径的 CloudWatch 直接访问日志:
CloudWatch / Log groups /aws/sagemaker/TrainingJobs / <your_job_name>。
如果问题立即出现,则可能与模型数据加载不正确或推理数据传递不正确有关。
| 归档时间: |
|
| 查看次数: |
3104 次 |
| 最近记录: |