本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon Braket 混合作业运行混合作业
要使用 Amazon Braket 混合作业运行混合作业,您首先需要定义算法。您可以通过使用 Amazon Braket Python 编写算法脚本以及其他依赖文件来定义它,也可以使用 Amazon Braket Python 或SDK
无论哪种情况,接下来都要使用 Amazon Braket 创建混合作业 API,您可以在其中提供算法脚本或容器,选择混合作业要使用的目标量子设备,然后从各种可选设置中进行选择。为这些可选设置提供的默认值适用于大多数用例。要让目标设备运行 Hybrid JobQPU,你可以在按需模拟器(例如 SV1, DM1 或者 TN1),或者经典的混合作业实例本身。使用按需模拟器或QPU,您的混合作业容器可以API调用远程设备。使用嵌入式仿真器,仿真器与算法脚本嵌入在同一个容器中。中的闪电模拟 PennyLane 器
如果您的目标设备是按需模拟器或嵌入式模拟器,Amazon Braket 会立即开始运行混合任务。它会启动混合作业实例(您可以在中自定义实例类型 API call),运行您的算法,将结果写入 Amazon S3,然后释放您的资源。此版本的资源可确保您只需为实际使用的资源付费。
每个量子处理单元 (QPU) 的并发混合作业总数受到限制。如今,任何给定时间都只能QPU在上运行一个混合作业。队列用于控制允许运行的混合作业的数量,以免超过允许的限制。如果您的目标设备是QPU,则您的混合作业将首先进入选定任务的任务队列QPU。Amazon Braket 启动所需的混合作业实例,并在设备上运行您的混合作业。在算法持续时间内,您的混合作业具有优先访问权限,这意味着混合作业中的量子任务优先于设备上排队的其他 Braket 量子任务,前提是该作业的量子任务每隔几分钟提交QPU一次。混合任务完成后,资源就会被释放,这意味着您只需为实际使用的资源付费。
注意
设备是区域性的,您的混合任务与主设备在 AWS 区域 同一设备上运行。
在模拟器和QPU目标场景中,您都可以选择将自定义算法指标(例如哈密顿能量)定义为算法的一部分。这些指标会自动报告给亚马逊, CloudWatch 然后在亚马逊Braket控制台中以近乎实时的方式显示。
注意
如果您想使用GPU基于的实例,请务必使用 Braket 上嵌入式模拟器中可用的GPU基于的模拟器之一(例如)。lightning.gpu
如果您选择其中一个CPU基于嵌入式模拟器(例如lightning.qubit
、或braket:default-simulator
),则GPU不会使用,并且可能会产生不必要的成本。