Skip to main content

QuEra

Aquila

Aquila is QuEra's 256-qubit neutral-atom quantum computer. It operates as an analog Hamiltonian simulator on a user-configurable architecture, executing programmable coherent quantum dynamics on up to 256 neutral-atom qubits.

Availability

DayTime
Monday01:00:00 - 23:59:59 UTC
Tuesday00:00:00 - 12:00:00 UTC
Wednesday00:00:00 - 12:00:00 UTC
Friday00:00:00 - 23:59:59 UTC
Saturday00:00:00 - 23:59:59 UTC
Sunday00:00:00 - 12:00:00 UTC

See here for availability and the most up-to-date information.

Solver

ModelBackend
AquilaNDArraybraket.aquila

Pricing

QuEra is available through the Braket Provider.

Hardware ProviderQPU familyPer-task pricePer-shot price
QuEraAquila$0.30000$0.01000

Prices are subject to change. Please refer to the Amazon Braket Pricing page for the most up-to-date information.

Usage

Status

Check the status through the Strangeworks Braket SDK. First make sure SDK is installed:

pip install -U pip && pip install strangeworks-braket

Then check the status of the device:

from strangeworks_braket import StrangeworksDevice
device = StrangeworksDevice("arn:aws:braket:us-east-1::device/qpu/quera/Aquila")
if device.status == "ONLINE":
solver = "braket.aquila"
else:
raise Exception(
"""
Device is not online,
visit https://www.quera.com/aquila for availability.
"""
)

Optimization Service

The Strangeworks Optimization Service can be used to solve the unit disk graph problem on the Aquila backend.

First make sure the Strangeworks Optimization SDK is installed:

pip install -U pip && pip install strangeworks-optimization

Then use the following code to solve the problem:

import strangeworks as sw
from strangeworks_optimization import StrangeworksOptimizer
from strangeworks_optimization_models.problem_models import AquilaNDArray
from strangeworks_optimization_models.parameter_models import AquilaParameterModel
import numpy as np

sw.authenticate('your-api-key')

model = AquilaNDArray(np.array([[1, 2], [0, 0], [1, 0], [1, 1], [2, 0], [2, 1]]))
options = AquilaParameterModel(unit_disk_radius=1.68, shots=1000)
solver = "braket.aquila"

so = StrangeworksOptimizer(
model=model,
solver=solver,
options=options)
sw_job = so.run()

print(f"Job slug: {sw_job.slug}")
print(f"Job status: {so.status(sw_job.slug)}")

results = so.results(sw_job.slug)

AquilaNDArray

The AquilaNDArray model is a representation of a graph in the form of a NumPy array. Each row in the array represents an edge in the graph, with the first two columns representing the nodes connected by the edge.

import numpy as np
from strangeworks_optimization_models.problem_models import AquilaNDArray

model = AquilaNDArray(np.array([[1, 2], [0, 0], [1, 0], [1, 1], [2, 0], [2, 1]]))

AquilaParameterModel

ParameterDescription
unit_disk_radiusRadius of interactions for specified graph
shotsNumber of shots to run