

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 故障診斷錯誤
<a name="neo-troubleshooting"></a>

本節包含如何了解並防止常見錯誤、其所產生錯誤訊息的資訊，以及如何解決這些錯誤的指導方針。在繼續之前，請先問問自己下列問題：

 **在部署模型之前是否遇到錯誤？** 如果是，請參閱[故障診斷 Neo 編譯錯誤](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-troubleshooting-compilation.html)。

 **編譯模型後是否遇到錯誤？** 如果是，請參閱[故障診斷 Neo 推論錯誤](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-troubleshooting-inference.html)。

**您是否在嘗試編譯 Ambarella 裝置的模型時遇到錯誤？** 如果是，請參閱[故障診斷 Ambarella 錯誤](neo-troubleshooting-target-devices-ambarella.md)。

## 錯誤分類類型
<a name="neo-error-messages"></a>

本清單分類您會從 Neo 收到的*使用者錯誤*。它們包括存取和許可錯誤，以及每個支援架構的載入錯誤。所有其他錯誤皆為*系統錯誤*。

### 用戶端權限錯誤
<a name="neo-error-client-permission"></a>

 Neo 直接從相依服務傳遞這些錯誤。
+ 呼叫 sts:AssumeRole 時*拒絕存取*
+ 呼叫 Amazon S3 下載或上傳用戶端模型時出現*任何 400* 錯誤
+ *PassRole* 錯誤

### 載入錯誤
<a name="collapsible-section-2"></a>

假設 Neo 編譯器成功從 Amazon S3 載入 .tar.gz，檢查 tarball 是否包含編譯所需的檔案。檢查條件受架構限制：
+ **TensorFlow**：應只有 protobuf 檔案 (\*.pb 或 \*.pbtxt)。針對儲存的模型，應有一個變數資料夾。
+ **Pytorch**：應該只有一個 pytorch 檔案 (\*.pth)。
+ **MXNET**：應該只有一個符號檔案 (\*.json) 和一個參數檔案 (\*.params)。
+ **XGBoost**：應該只有一個 XGBoost 模型檔案 (\*.model)。輸入模型有大小限制。

### 編譯錯誤
<a name="neo-error-compilation"></a>

假設 Neo 編譯器成功從 Amazon S3 載入 .tar.gz，而該 tarball 包含編譯所需的檔案。則檢查條件為：
+ **OperatorNotImplemented**：尚未實作運算子。
+ **OperatorAttributeNotImplemented**：尚未實作指定運算子中的屬性。
+ **OperatorAttributeRequired**：內部符號圖形需要屬性，但未列在使用者輸入模型圖形中。
+ **OperatorAttributeValueNotValid**：特定運算子的屬性值無效。

**Topics**
+ [錯誤分類類型](#neo-error-messages)
+ [故障診斷 Neo 編譯錯誤](neo-troubleshooting-compilation.md)
+ [故障診斷 Neo 推論錯誤](neo-troubleshooting-inference.md)
+ [故障診斷 Ambarella 錯誤](neo-troubleshooting-target-devices-ambarella.md)