本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
错误排查
此部分包含的信息介绍如何了解和预防常见错误,这些错误所生成的错误消息,以及如何解决这些错误的指南。在继续之前,请问自己以下问题:
在部署模型之前是否遇到过错误? 如果遇到过,请参阅对 Neo 编译错误进行问题排查。
在编译模型之后是否遇到过错误? 如果遇到过,请参阅对 Neo 推理错误进行问题排查。
您在尝试为 Ambarella 设备编译模型时是否遇到过错误? 如果遇到过,请参阅 排查 Ambarella 错误。
错误分类类型
此列表对您可能从 Neo 收到的用户错误 进行了分类。这包括各个所支持框架的访问和权限错误以及加载错误。所有其他错误为系统错误。
Neo 直接传递来自相关服务的这些错误。
调用 st@@ s 时访问被拒绝:AssumeRole
调用 Amazon S3 以下载或上传客户端模型时的任何 400 错误。
PassRole 错误
假设 Neo 编译器从 Amazon S3 成功加载了 .tar.gz,请检查 tarball 是否包含编译所必需的文件。检查标准特定于框架:
-
TensorFlow: 只需要使用 protobuf 文件(*.pb 或 *.pbtxt)。对于保存的模型,需要一个变量文件夹。
-
Pytorch:仅需要一个 pytorch 文件 (*.pth)。
-
MXNET:仅需要一个符号文件 (*.json) 和一个参数文件 (*.params)。
-
XGBoost: 预计只有一个 XGBoost 模型文件 (*.model)。输入模型有大小限制。
假设 Neo 编译器成功从 Amazon S3 加载了 .tar.gz,并且 tarball 包含编译所必需的文件。检查标准是:
-
OperatorNotImplemented: 尚未实现运算符。
-
OperatorAttributeNotImplemented: 指定运算符中的属性尚未实现。
-
OperatorAttributeRequired:内部符号图需要属性,但用户输入模型图表中未列出该属性。
-
OperatorAttributeValueNotValid: 特定运算符中的属性值无效。