在 Amazon 中建立模型評估任務時解決錯誤 SageMaker - Amazon SageMaker

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

在 Amazon 中建立模型評估任務時解決錯誤 SageMaker

重要

若要使用 SageMaker Clarify Foundation Model Evaluations (FMEval),您必須升級至新的 Studio 體驗。

截至 2023 年 11 月 30 日,先前的 Amazon SageMaker Studio 體驗現在已命名為 Amazon SageMaker Studio Classic。FMEval 不適用於 Amazon SageMaker Studio Classic。

如需有關如何升級至新 Studio 體驗的資訊,請參閱 從 Amazon SageMaker Studio Classic 遷移。如需有關使用 Studio Classic 應用程式的資訊,請參閱 Amazon SageMaker Studio Classic

如果您在建立模型評估任務時遇到錯誤,請使用下列清單對評估進行疑難排解。如果您需要進一步協助,請聯絡 AWS SupportAWS Amazon 的開發人員論壇 SageMaker

從 Amazon S3 儲存貯體上傳資料時發生錯誤

建立基礎模型評估時,您必須為要存放模型輸入和輸出的 S3 儲存貯體設定正確的許可。如果跨來源資源共用 (CORS) 許可設定不正確, SageMaker 會產生下列錯誤:

錯誤:無法將物件放入 s3:將物件上傳至 s3Error 時發生錯誤:嘗試擷取資源 NetworkError 時,無法將物件放入 S3:。

若要設定正確的儲存貯體許可,請遵循在 中設定環境下的指示在 Studio 中建立自動模型評估任務

處理任務無法完成

處理任務無法完成的最常見原因包括:

請參閱下列各節,以協助您緩解每個問題。

配額不足

當您為未部署 JumpStart的模型執行基礎模型評估時, SageMaker Clarify 會將您的大型語言模型 (LLM) 部署到您帳戶中的 SageMaker 端點。如果您的 帳戶沒有足夠的配額來執行選取的 JumpStart 模型,則任務會失敗,但使用 ClientError。若要增加配額,請遵循下列步驟:

請求提高 AWS Service Quotas
  1. 從螢幕上的錯誤訊息中擷取執行個體名稱、目前配額和必要的配額。例如,在下列錯誤中:

    • 執行個體名稱為 ml.g5.12xlarge

    • 下列號碼的目前配額current utilization0 instances

    • 下列號碼中其他必要的配額request delta1 instances

    範例錯誤如下:

    ClientError: An error occurred (ResourceLimitExceeded) when calling the CreateEndpoint operation: The account-level service limit 'ml.g5.12xlarge for endpoint usage' is 0 Instances, with current utilization of 0 Instances and a request delta of 1 Instances. Please use AWS Service Quotas to request an increase for this quota. If AWS Service Quotas is not available, contact AWS support to request an increase for this quota

  2. 登入 AWS Management Console 並開啟 Service Quotas 主控台

  3. 在導覽窗格中的管理配額 下,輸入 Amazon SageMaker

  4. 選擇 檢視配額

  5. 服務配額 下的搜尋列中,從步驟 1 輸入執行個體的名稱。例如,使用步驟 1 錯誤訊息中包含的資訊,輸入 ml.g5.12xlarge

  6. 選擇執行個體名稱旁出現的配額名稱,並以端點用量 結尾。例如,使用步驟 1 錯誤訊息中包含的資訊,為端點用量 選擇 ml.g5.12xlarge。

  7. 選擇帳戶層級 的請求增加

  8. 增加配額值 下,從步驟 1 錯誤訊息中提供的資訊輸入必要的配額。輸入 current utilization和 的總數request delta。在先前的錯誤範例中, current utilization0 Instances,而 request delta1 Instances。在此範例中,請求 的配額1來提供所需的配額。

  9. 選擇請求

  10. 從導覽窗格中選擇配額請求歷史記錄

  11. 狀態待定變更為已核准時,請重新執行您的任務。您可能需要重新整理瀏覽器才能查看變更。

如需請求提高配額的詳細資訊,請參閱請求提高配額。

記憶體不足

如果您在記憶體不足,無法執行評估演算法的 Amazon EC2執行個體上啟動基礎模型評估,任務會失敗,並出現下列錯誤:

The actor is dead because its worker process has died. Worker exit type: SYSTEM_ERROR Worker exit detail: Worker unexpectedly exits with a connection error code 2. End of file. There are some potential root causes. (1) The process is killed by SIGKILL by OOM killer due to high memory usage. (2) ray stop --force is called. (3) The worker is crashed unexpectedly due to SIGSEGV or other unexpected errors. The actor never ran - it was cancelled before it started running.

若要增加評估任務可用的記憶體,請將您的執行個體變更為具有更多記憶體的執行個體。如果您使用使用者介面,您可以在步驟 2 處理器組態下選擇執行個體類型。如果您在主控台內 SageMaker執行任務,請使用記憶體容量增加的執行個體來啟動新的空間。

如需 Amazon EC2執行個體的清單,請參閱執行個體類型

如需記憶體容量較大的執行個體的詳細資訊,請參閱記憶體最佳化執行個體

未通過 ping 檢查

在某些情況下,您的基礎模型評估任務會失敗,因為它 SageMaker 在部署端點時未通過 ping 檢查。如果未通過 ping 測試,則會出現下列錯誤:

ClientError: Error hosting endpoint your_endpoint_name: Failed. Reason: The primary container for production variant AllTraffic did not pass the ping health check. Please check CloudWatch logs for this endpoint..., Job exited for model: your_model_name of model_type: your_model_type

如果您的任務產生此錯誤,請等待幾分鐘,然後再次執行任務。如果錯誤仍然存在,請聯絡 Amazon 的AWS 支援或開發人員論壇。 AWS SageMaker

您在 SageMaker 主控台中找不到基礎模型評估

若要使用 SageMaker Clarify Foundation Model Evaluations,您必須升級至新的 Studio 體驗。截至 2023 年 11 月 30 日,先前的 Amazon SageMaker Studio 體驗現在已命名為 Amazon SageMaker Studio Classic。基礎評估功能只能用於更新的 體驗。如需有關如何更新 Studio 的資訊,請參閱 從 Amazon SageMaker Studio Classic 遷移

您的模型不支援提示刻板印象

只有某些 JumpStart 模型支援提示刻板印象。如果您選擇不支援的 JumpStart 模型,則會出現下列錯誤:

{"evaluationMetrics":"This model does not support Prompt stereotyping evaluation. Please remove that evaluation metric or select another model that supports it."}

如果您收到此錯誤,您就無法在基礎評估中使用您選擇的模型。 SageMaker Clarify 目前正在更新所有 JumpStart 模型以進行提示刻板化任務,以便它們可用於基礎模型評估。

資料集驗證錯誤 (人工)

使用人工工作者的模型評估任務中的自訂提示資料集,必須使用.jsonl延伸模組的JSON行格式進行格式化。

當您啟動任務時,提示資料集中的每個JSON物件都會相互驗證。如果其中一個JSON物件無效,您會收到下列錯誤。

Customer Error: Your input dataset could not be validated. Your dataset can have up to 1000 prompts. The dataset must be a valid jsonl file, and each prompt valid json object.To learn more about troubleshooting dataset validations errors, see Troubleshooting guide. Job executed for models: meta-textgeneration-llama-2-7b-f, pytorch-textgeneration1-alexa20b.

若要讓自訂提示資料集通過所有驗證,下列內容對於資料JSON行檔案中的所有JSON物件都必須為 true

  • 提示資料集檔案中的每一行都必須是有效的JSON物件。

  • 必須正確逸出引號 (") 等特殊字元。例如,如果您的提示如下"Claire said to the crowd, "Bananas are the best!"",則需要使用 \、 逸出引號"Claire said to the crowd, \"Bananas are the best!\""

  • 有效的JSON物件必須至少包含prompt索引鍵/值對。

  • 提示資料集檔案在單一檔案中不能包含超過 1,000 個JSON物件。

  • 如果您在任何JSON物件中指定 responses金鑰,則它必須存在於所有JSON物件中。

  • responses 金鑰中的物件數目上限為 1。如果您有多個模型的回應要比較,則每個模型都需要單獨的BYOI資料集。

  • 如果您在任何JSON物件中指定responses金鑰,則也必須在所有responses物件中包含 modelIdentifiertext金鑰。