Amazon Braket क्या है?
Amazon Braket एक पूर्णतः प्रबंधित क्वांटम कंप्यूटिंग सेवा है जो आपको कई प्रदाताओं के क्वांटम कंप्यूटरों के साथ अन्वेषण और प्रयोग करने देती है — यह सब एक सुसंगत Python SDK के माध्यम से। लोकल सिम्युलेटर पूरी तरह मुफ़्त है। क्लाउड सिम्युलेटर प्रति-टास्क एक छोटा शुल्क लेते हैं। वास्तविक QPU शॉट्स की कीमत प्रति-शॉट के आधार पर तय होती है।
लोकल सिम्युलेटर
आपकी मशीन पर चलता है
हमेशा के लिए मुफ़्त
क्लाउड सिम्युलेटर
SV1, DM1, TN1
~$0.075/टास्क + कंप्यूट
वास्तविक QPU
IonQ, OQC हार्डवेयर
$0.01–$0.90/शॉट
इंस्टॉलेशन और सेटअप
terminal
pip install amazon-braket-sdk
# AWS credentials (needed for cloud features)
# Option 1: AWS CLI
aws configure
# Option 2: Environment variables
export AWS_DEFAULT_REGION=us-east-1
export AWS_ACCESS_KEY_ID=your_key
export AWS_SECRET_ACCESS_KEY=your_secretमुफ़्त लोकल सिम्युलेटर
यह LocalSimulator पूरी तरह मुफ़्त है, आपकी मशीन पर चलता है, और इसके लिए किसी AWS अकाउंट की आवश्यकता नहीं है।
braket_local.py
from braket.circuits import Circuit, FreeParameter
from braket.devices import LocalSimulator
# Free — no AWS credentials needed
device = LocalSimulator()
# Build a Bell state circuit
circuit = Circuit()
circuit.h(0)
circuit.cnot(0, 1)
circuit.probability() # Return outcome probabilities
task = device.run(circuit, shots=0) # shots=0 for exact probabilities
result = task.result()
print(result.values) # [[0.5, 0, 0, 0.5]]
# With sampling (shots)
circuit2 = Circuit().h(0).cnot(0, 1)
task2 = device.run(circuit2, shots=1000)
counts = task2.result().measurement_counts
print(counts) # {'00': ~500, '11': ~500}पैरामीट्रिक सर्किट
braket_parametric.py
from braket.circuits import Circuit, FreeParameter
from braket.devices import LocalSimulator
# FreeParameters for variational circuits
theta = FreeParameter("theta")
phi = FreeParameter("phi")
circuit = Circuit()
circuit.ry(0, theta)
circuit.ry(1, phi)
circuit.cnot(0, 1)
circuit.expectation(observable=braket.Observable.Z() @ braket.Observable.Z(),
target=[0, 1])
device = LocalSimulator()
# Sweep parameters
import numpy as np
for t in np.linspace(0, 2 * np.pi, 20):
task = device.run(circuit, shots=200, inputs={"theta": t, "phi": 0.5})
result = task.result()
print(f"theta={t:.2f}: {result.values}")क्लाउड सिम्युलेटर (SV1, DM1, TN1)
braket_cloud_sim.py
from braket.aws import AwsDevice
from braket.circuits import Circuit
# SV1 — Statevector simulator (up to 34 qubits)
sv1 = AwsDevice("arn:aws:braket:::device/quantum-simulator/amazon/sv1")
# DM1 — Density matrix with noise (up to 17 qubits)
dm1 = AwsDevice("arn:aws:braket:::device/quantum-simulator/amazon/dm1")
# TN1 — Tensor network (up to 50 qubits, sparse circuits)
tn1 = AwsDevice("arn:aws:braket:::device/quantum-simulator/amazon/tn1")
circuit = Circuit().h(0).cnot(0, 1)
# Note: cloud sims have per-task + compute costs (~$0.075/task)
task = sv1.run(
circuit,
shots=1000,
s3_destination_folder=("your-s3-bucket", "results/")
)
print(task.result().measurement_counts)वास्तविक QPU हार्डवेयर
Braket QPUs are pay-per-shot — see the free real-hardware options and how Braket compares with IBM Quantum before spending anything.
braket_hardware.py
from braket.aws import AwsDevice
from braket.circuits import Circuit
# IonQ Aria (trapped-ion, ~$0.01/shot)
ionq_device = AwsDevice(
"arn:aws:braket:us-east-1::device/qpu/ionq/Aria-1"
)
# Oxford Quantum Circuits (superconducting)
oqc_device = AwsDevice(
"arn:aws:braket:eu-west-2::device/qpu/oqc/Lucy"
)
circuit = Circuit().h(0).cnot(0, 1)
# Check device availability before submitting
print(ionq_device.status)
print(ionq_device.properties.paradigm.qubitCount)
# Submit (costs apply per shot on real hardware)
task = ionq_device.run(circuit, shots=50)
print(task.result().measurement_counts)Keep exploring
💡
Also available via HLQuantum
Want to run the same circuit on multiple backends without rewriting your code? HLQuantum abstracts this SDK (and 5 others) behind a single unified API.
python
import hlquantum as hlq
qc = hlq.Circuit(2)
qc.h(0).cx(0, 1).measure_all()
# One line to switch between any backend
result = hlq.run(qc, shots=1024) # auto-detect
result = hlq.run(qc, shots=1024, backend="braket") # explicit