amazon-braket/amazon-braket-sdk-python

A Python SDK for interacting with quantum devices on Amazon Braket

Amazon Braket Python SDK

Amazon Braket Python SDK 是一个开源库,允许您使用 Python 代码在 Amazon Braket 上运行量子计算任务。它提供以下功能:

  • 设备抽象AwsDeviceDevices):支持 Amazon 托管的模拟器和实际量子处理器(如 Rigetti、IonQ 等)。
  • 电路构建:通过 braket.circuits.Circuit
  • 任务提交device.rundevice.run_batch)和结果获取。
  • 混合任务支持AwsQuantumJob):支持结合经典计算与量子计算的流程。
  • 本地模拟器:SDK 内置,无需 AWS 资源即可快速原型开发。

快速开始

# 从 PyPI 安装 SDK
pip install amazon-braket-sdk

您需要 Python 3.11+、Git、具有 Braket 权限的 AWS 账户(IAM 用户/角色),以及 AWS SDK for Python(boto3)。使用 SDK 前请配置好 AWS 凭证和区域。

简单示例 – 在 SV1 模拟器上生成贝尔态

from braket.aws import AwsDevice
from braket.circuits import Circuit
from braket.devices import Devices

# 选择托管的状态向量模拟器
device = AwsDevice(Devices.Amazon.SV1)

# 构建一个 2 量子比特的贝尔电路
bell = Circuit().h(0).cnot(0, 1)

# 提交任务(100 次测量)并打印测量直方图
task = device.run(bell, shots=100)
print(task.result().measurement_counts)

SDK 会自动处理任务创建、轮询和结果解析。

并行运行多个电路

circuits = [bell for _ in range(5)]
batch = device.run_batch(circuits, shots=100)
print(batch.results()[0].measurement_counts)

批量提交可显著提升模拟器上的大规模工作负载处理速度。

混合任务(经典 + 量子)

from braket.aws import AwsQuantumJob

job = AwsQuantumJob.create(
    device="arn:aws:braket:::device/quantum-simulator/amazon/sv1",
    source_module="job.py",
    entry_point="job:run_job",
    wait_until_complete=True,
)
print(job.result())

SDK 会启动一个基于 Docker 的任务,可同时运行多个量子任务和普通 Python 代码。

本地模拟

SDK 内置了 braket_sv,一个可在您的笔记本电脑上运行的快速状态向量模拟器,适合在提交到云端前进行快速调试。

文档与帮助

许可证

Apache-2.0。


简要总结:Amazon Braket Python SDK 是一个生产就绪的工具包,可在 AWS 的 Braket 服务上构建、提交和管理量子电路与混合工作负载,支持云端托管和本地模拟器。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目