本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
本節包含如何了解並防止常見錯誤、其所產生錯誤訊息的資訊,以及如何解決這些錯誤的指導方針。在繼續之前,請先問問自己下列問題:
在部署模型之前是否遇到錯誤? 如果是,請參閱故障診斷 Neo 編譯錯誤。
編譯模型後是否遇到錯誤? 如果是,請參閱故障診斷 Neo 推論錯誤。
您是否在嘗試編譯 Ambarella 裝置的模型時遇到錯誤? 如果是,請參閱故障診斷 Ambarella 錯誤。
錯誤分類類型
本清單分類您會從 Neo 收到的使用者錯誤。它們包括存取和許可錯誤,以及每個支援架構的載入錯誤。所有其他錯誤皆為系統錯誤。
Neo 直接從相依服務傳遞這些錯誤。
呼叫 sts: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:特定運算子的屬性值無效。