本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
对 Amazon Braket 进行故障排除
使用本节中的疑难解答信息和解决方案来帮助解决与 Amazon Braket 有关的问题。
本节内容:
AccessDeniedException
如果您AccessDeniedException在启用或使用 Braket 时收到 Braket,则您可能正在尝试在您的受限角色无权访问的区域启用或使用 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
检查您是否未包含s3://
在 Amazon S3 存储桶路径中。
某项SDK功能不起作用
你的 Python 版本必须是 3.9 或更高版本。对于 Amazon Braket 混合任务,我们推荐 Python 3.10。
请验证您的SDK和架构是否正确。 up-to-date要SDK从笔记本或 python 编辑器中更新,请运行以下命令:
pip install amazon-braket-sdk --upgrade --upgrade-strategy eager
要更新架构,请运行以下命令:
pip install amazon-braket-schemas --upgrade
如果您通过自己的客户访问亚马逊 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
您还可以使用亚马逊 CloudWatch 指标查看针对设备创建的量子任务:Braket > B y Device。
为避免遇到这些错误,请执行以下操作:
-
申请增加模拟器设备的并发量子任务数量的服务配额。这仅适用于 SV1 设备。
-
处理代码中的
ServiceQuotaExceeded
异常并重试。
组件在笔记本实例中停止工作
如果笔记本电脑的某些组件无法正常工作,请尝试以下方法:
-
将您创建或修改的所有笔记本下载到本地驱动器。
-
停止您的笔记本实例。
-
删除您的笔记本实例。
-
使用不同的名称创建新的笔记本实例。
-
将笔记本上传到新实例。