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

# BaseSamplerV2

*class* `qiskit.primitives.BaseSamplerV2`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.0/qiskit/primitives/base/base_sampler.py#L156-L180)

Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC)

Sampler V2 base class.

A Sampler returns samples of quantum circuit outputs.

All sampler implementations must implement default value for the `shots` in the [`run()`](#qiskit.primitives.BaseSamplerV2.run "qiskit.primitives.BaseSamplerV2.run") method if `None` is given both as a `kwarg` and in all of the pubs.

## Methods

### run

*abstract* `run(pubs, *, shots=None)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/1.0/qiskit/primitives/base/base_sampler.py#L165-L180)

Run and collect samples from each pub.

**Parameters**

- **pubs** (*Iterable\[SamplerPubLike]*) – An iterable of pub-like objects. For example, a list of circuits or tuples `(circuit, parameter_values)`.
- **shots** ([*int*](https://docs.python.org/3/library/functions.html#int) *| None*) – The total number of shots to sample for each sampler pub that does not specify its own shots. If `None`, the primitive’s default shots value will be used, which can vary by implementation.

**Returns**

The job object of Sampler’s result.

**Return type**

[BasePrimitiveJob](/docs/api/qiskit/1.0/qiskit.primitives.BasePrimitiveJob "qiskit.primitives.BasePrimitiveJob")\[[PrimitiveResult](/docs/api/qiskit/1.0/qiskit.primitives.PrimitiveResult "qiskit.primitives.PrimitiveResult")\[[PubResult](/docs/api/qiskit/1.0/qiskit.primitives.PubResult "qiskit.primitives.PubResult")]]
