---
title: BackendSampler (v1.3)
description: API reference for qiskit.primitives.BackendSampler in qiskit v1.3
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit/1.3/qiskit.primitives.BackendSampler
---

# BackendSampler

*class* `qiskit.primitives.BackendSampler(backend, options=None, bound_pass_manager=None, skip_transpilation=False)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.3/qiskit/primitives/backend_sampler.py#L34-L222)

Bases: [`BaseSampler`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSampler "qiskit.primitives.base.base_sampler.BaseSampler")\[[`PrimitiveJob`](/docs/api/qiskit/1.3/qiskit.primitives.PrimitiveJob "qiskit.primitives.primitive_job.PrimitiveJob")\[[`SamplerResult`](/docs/api/qiskit/1.3/qiskit.primitives.SamplerResult "qiskit.primitives.base.sampler_result.SamplerResult")]]

A [`BaseSampler`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSampler "qiskit.primitives.BaseSampler") (V1) implementation that provides a wrapper for leveraging the Sampler V1 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`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSampler "qiskit.primitives.BaseSampler") V1 implementation in places that work with [`BaseSampler`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSampler "qiskit.primitives.BaseSampler") V1. However, if you’re using a provider that has a native implementation of [`BaseSamplerV1`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSamplerV1 "qiskit.primitives.BaseSamplerV1") ( [`BaseSampler`](/docs/api/qiskit/1.3/qiskit.primitives.BaseSampler "qiskit.primitives.BaseSampler")) or `BaseESamplerV2`, 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 (V1) instance

> **Deprecated since version 1.2**
>
> The class `qiskit.primitives.backend_sampler.BackendSampler` is deprecated as of qiskit 1.2. It will be removed no earlier than 3 months after the release date. All implementations of the BaseSamplerV1 interface have been deprecated in favor of their V2 counterparts. The V2 alternative for the BackendSampler class is BackendSamplerV2.

**Parameters**

- **backend** ([*BackendV1*](/docs/api/qiskit/1.3/qiskit.providers.BackendV1 "qiskit.providers.BackendV1")  *|*[*BackendV2*](/docs/api/qiskit/1.3/qiskit.providers.BackendV2 "qiskit.providers.BackendV2")) – (required) the backend to run the sampler primitive on
- **options** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict) *| None*) – Default options.
- **bound\_pass\_manager** ([*PassManager*](/docs/api/qiskit/1.3/qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") *| None*) – An optional pass manager to run after parameter binding.
- **skip\_transpilation** ([*bool*](https://docs.python.org/3/library/functions.html#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**](https://docs.python.org/3/library/exceptions.html#ValueError) – If backend is not provided

## Attributes

### backend

Returns: The backend which this sampler object based on

### options

Return options values for the estimator.

**Returns**

options

### preprocessed\_circuits

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

**Raises**

[**QiskitError**](/docs/api/qiskit/1.3/exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") – if the instance has been closed.

### transpile\_options

Return the transpiler options for transpiling the circuits.

### transpiled\_circuits

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

**Raises**

[**QiskitError**](/docs/api/qiskit/1.3/exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") – if the instance has been closed.

## Methods

### run

`run(circuits, parameter_values=None, **run_options)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.3/qiskit/primitives/base/base_sampler.py#L111-L142)

Run the job of the sampling of bitstrings.

**Parameters**

- **circuits** ([*QuantumCircuit*](/docs/api/qiskit/1.3/qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") *| Sequence\[*[*QuantumCircuit*](/docs/api/qiskit/1.3/qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]*) – One of more circuit objects.
- **parameter\_values** (*Sequence\[*[*float*](https://docs.python.org/3/library/functions.html#float)*] | Sequence\[Sequence\[*[*float*](https://docs.python.org/3/library/functions.html#float)*]] | None*) – 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**](https://docs.python.org/3/library/exceptions.html#ValueError) – Invalid arguments are given.

**Return type**

T

### set\_options

`set_options(**fields)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.3/qiskit/primitives/base/base_primitive.py#L39-L45)

Set options values for the estimator.

**Parameters**

**\*\*fields** – The fields to update the options

### set\_transpile\_options

`set_transpile_options(**fields)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.3/qiskit/primitives/backend_sampler.py#L130-L139)

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

**Returns**

self.

**Raises**

[**QiskitError**](/docs/api/qiskit/1.3/exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") – if the instance has been closed.
