You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The default shot number for qiskit’s Sampler is 0, whereas that for BraketLocalBackend is 1000, see the code example below. This could cause some confusion. Ideally, the default shot values should be the same.
from qiskit import QuantumCircuit
from qiskit_braket_provider import BraketLocalBackend
from qiskit.primitives import Sampler
circuit = QuantumCircuit(1)
circuit.h(0)
circuit.measure_all()
# Run with qiskit backend
Sampler().run(circuit).result().quasi_dists[0]
# Qiskit local backend return probability calculated
# from state vector, which has no shot noise and the
# result is fixed for different runs
# {0: 0.5, 1: 0.5}
# Run with braket backend
BraketLocalBackend().run(circuit).result().results[0].data.counts
# Braket local backend return sampled probability with shot noise
# and the result vary from run to run
# {'1': 537, '0': 487}
The text was updated successfully, but these errors were encountered:
I'm actually surprised that the sampler accepts 0 shots, and returns probabilities as the counts. In any case, the Braket provider doesn't have a native sampler, but just a classic Qiskit backend, which is a different interface. However, it might be worth considering writing native primitives in this package.
I don't think we need a native sampler to resolve the discrepancy shown above. We can simply set the default shot to zero for "BraketLocalBackend().run(...)" and use the state vector simulator, right?
What is the expected enhancement?
The default shot number for qiskit’s Sampler is 0, whereas that for BraketLocalBackend is 1000, see the code example below. This could cause some confusion. Ideally, the default shot values should be the same.
The text was updated successfully, but these errors were encountered: