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 は、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サービス上で、量子回路とハイブリッドワークロードを構築・送信・管理するための本格的なツールキットです。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト