在预留期间运行混合作业
将 Python 函数作为混合作业运行后,您可以通过传递 reservation_arn 关键字参数在预留中运行混合作业。混合作业中的所有任务都使用预留 ARN。重要的是,只有在您的预留开始后,带 reservation_arn 的混合作业才会启动经典计算。
注意
预留期间运行的混合作业只能成功运行预留设备上的量子任务。如果尝试使用其他按需 Braket 设备,将会导致错误。如果您需要在同一个混合作业中同时在按需模拟器和预留设备上运行任务,请改用 DirectReservation。
以下代码演示了如何在预留期间运行混合作业。
from braket.aws import AwsDevice from braket.devices import Devices from braket.jobs import get_job_device_arn, hybrid_job @hybrid_job(device=Devices.IonQ.Aria1, reservation_arn="<my_reservation_arn>") def example_hybrid_job(): # declare AwsDevice within the hybrid job device = AwsDevice(get_job_device_arn()) bell = Circuit().h(0).cnot(0, 1) task = device.run(bell, shots=10)
对于使用 Python 脚本的混合作业(参见开发者指南中有关创建第一个混合作业的部分),您可以在创建作业时传递 reservation_arn 关键字参数,从而在预留中运行它们。
from braket.aws import AwsQuantumJob from braket.devices import Devices job = AwsQuantumJob.create( Devices.IonQ.Aria1, source_module="algorithm_script.py", entry_point="algorithm_script:start_here", reservation_arn="<my_reservation_arn>" )