Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

BackendSampler

BackendSampler(backend, options=None, bound_pass_manager=None, skip_transpilation=False)

GitHub(opens in a new tab)

Bases: qiskit.primitives.base.base_sampler.BaseSampler

A BaseSampler implementation that provides an interface for leveraging the sampler interface from any backend.

This class provides a sampler interface from any backend and doesn’t do any measurement mitigation, it just computes the probability distribution from the counts. It facilitates using backends that do not provide a native BaseSampler implementation in places that work with BaseSampler, such as algorithms in qiskit.algorithms including SamplingVQE. However, if you’re using a provider that has a native implementation of BaseSampler, it is a better choice to leverage that native implementation as it will likely include additional optimizations and be a more efficient implementation. The generic nature of this class precludes doing any provider- or backend-specific optimizations.

Initialize a new BackendSampler

Parameters

  • backend (BackendV1 |BackendV2) – Required: the backend to run the sampler primitive on
  • options (dict | None) – Default options.
  • bound_pass_manager (PassManager | None) – An optional pass manager to run after parameter binding.
  • skip_transpilation (bool) – If this is set to True the internal compilation of the input circuits is skipped and the circuit objects will be directly executed when this objected is called.

Raises

ValueError – If backend is not provided


Methods

close

BackendSampler.close()

Close the session and free resources

run

BackendSampler.run(circuits, parameter_values=None, **run_options)

Run the job of the sampling of bitstrings.

Parameters

  • circuits – One of more circuit objects.
  • parameter_values – Parameters to be bound to the circuit.
  • run_options – Backend runtime options used for circuit execution.

Returns

The job object of the result of the sampler. The i-th result corresponds to circuits[i] evaluated with parameters bound as parameter_values[i].

Raises

ValueError – Invalid arguments are given.

set_options

BackendSampler.set_options(**fields)

Set options values for the estimator.

Parameters

**fields – The fields to update the options

set_transpile_options

BackendSampler.set_transpile_options(**fields)

Set the transpiler options for transpiler. :param **fields: The fields to update the options.

Returns

self.

Raises

QiskitError – if the instance has been closed.


Attributes

backend

Returns: The backend which this sampler object based on

Return type

BackendV1 | BackendV2

circuits

Quantum circuits to be sampled.

Returns

The quantum circuits to be sampled.

options

Return options values for the estimator.

Return type

Options

Returns

options

parameters

Parameters of quantum circuits.

Returns

List of the parameters in each quantum circuit.

preprocessed_circuits

Preprocessed quantum circuits produced by preprocessing :returns: List of the transpiled quantum circuit

Raises

QiskitError – if the instance has been closed.

transpile_options

Return the transpiler options for transpiling the circuits.

Return type

Options

transpiled_circuits

Transpiled quantum circuits. :returns: List of the transpiled quantum circuit

Raises

QiskitError – if the instance has been closed.

Was this page helpful?
Report a bug or request content on GitHub.