Amazon Braket 故障診斷 - Amazon Braket

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

Amazon Braket 故障診斷

使用本節中的疑難排解資訊和解決方案,以協助解決 Amazon Braket 的問題。

AccessDeniedException

如果您在啟用或停用 Braket 時收到 AccessDeniedException,您可能會嘗試在受限角色無法存取的區域中啟用或停用 Braket。

在這種情況下,請聯絡您的內部 AWS 管理員,以了解下列哪些條件適用:

  • 如果有防止存取區域的角色限制。

  • 如果您嘗試使用的角色允許使用 Braket。

如果您的角色在使用 Braket 時無法存取指定區域,則您將無法在該特定區域中使用裝置。

呼叫 CreateQuantumTask 操作時發生錯誤 (ValidationException)

如果您收到類似 的錯誤:An error occurred (ValidationException) when calling the CreateQuantumTask operation: Caller doesn't have access to amazon-braket-…​請檢查您指的是現有的 s3_folder。Braket 不會為您自動建立新的 Amazon S3 儲存貯體和字首。

如果您API直接存取 並收到類似 的錯誤:Failed to create quantum task: Caller doesn't have access to s3://MY_BUCKET請檢查您是否未包含在 Amazon S3 儲存貯體路徑s3://中。

SDK 功能無法運作

您的 Python 版本必須為 3.10 或更新版本。對於 Amazon Braket 混合任務,我們建議使用 Python 3.12。

確認您的 SDK 和結構描述是up-to-date。若要從筆記本或您的 python 編輯器更新 SDK,請執行下列命令:

pip install amazon-braket-sdk --upgrade --upgrade-strategy eager

若要更新結構描述,請執行下列命令:

pip install amazon-braket-schemas --upgrade

如果您是從自己的用戶端存取 Amazon Braket,請確認您的AWS 區域已設定為 Amazon Braket 支援的區域。

由於 ServiceQuotaExceededException,混合任務失敗

如果您超過目標模擬器裝置的並行量子任務限制,則針對 Amazon Braket 模擬器執行量子任務的混合任務可能無法建立。如需服務限制的詳細資訊,請參閱配額主題。

如果您在帳戶中的多個混合任務中對模擬器裝置執行並行任務,您可能會遇到此錯誤。

若要查看針對特定模擬器裝置的並行量子任務數量,請使用 search-quantum-tasks API,如下列程式碼範例所示。

DEVICE_ARN=arn:aws:braket:::device/quantum-simulator/amazon/sv1 task_list="" for status_value in "CREATED" "QUEUED" "RUNNING" "CANCELLING"; do tasks=$(aws braket search-quantum-tasks --filters name=status,operator=EQUAL,values=${status_value} name=deviceArn,operator=EQUAL,values=$DEVICE_ARN --max-results 100 --query 'quantumTasks[*].quantumTaskArn' --output text) task_list="$task_list $tasks" done; echo "$task_list" | tr -s ' \t' '[\n*]' | sort | uniq

您也可以使用 Amazon CloudWatch 指標來檢視針對裝置建立的量子任務:Raket > By Device

若要避免執行這些錯誤:
  1. 請求增加模擬器裝置的並行量子任務數量的服務配額。這僅適用於SV1裝置。

  2. 處理程式碼中的ServiceQuotaExceeded例外狀況,然後重試。

元件在筆記本執行個體中停止運作

如果筆記本的某些元件停止運作,請嘗試下列動作:

  1. 將您建立或修改的任何筆記本下載至本機磁碟機。

  2. 停止您的筆記本執行個體。

  3. 刪除您的筆記本執行個體。

  4. 使用不同的名稱建立新的筆記本執行個體。

  5. 將筆記本上傳至新的執行個體。