Skip to main content
IBM Quantum Platform

BaseSamplerV1

class qiskit.primitives.BaseSamplerV1(*, options=None)

GitHub

Bases: BasePrimitiveV1, Generic[T]

Clase base Sampler V1

Clase base de Sampler que calcula cuasi-probabilidades de cadenas de bits a partir de circuitos cuánticos.

Un muestreador se inicializa con un conjunto de parámetros vacío. El muestreador se utiliza para crear un JobV1mediante el método qiskit.primitives.Sampler.run() . Este método se llama con los siguientes parámetros

  • circuitos cuánticos ( ψi(θ)\psi_i(\theta) ): lista de circuitos cuánticos (parametrizados). (una lista de QuantumCircuit objetos)
  • valores de parámetros ( θk\theta_k ): lista de conjuntos de valores de parámetros que deben vincularse a los parámetros de los circuitos cuánticos. (lista de lista de float)

El método devuelve un JobV1 la llamada a qiskit.providers.JobV1.result() devuelve un objeto SamplerResult que contiene probabilidades o cuasiprobabilidades de cadenas de bits, además de metadatos opcionales como barras de error en las muestras.

He aquí un ejemplo de cómo se utiliza el muestreador.

# This is a fictional import path.
# There are currently no Sampler implementations in Qiskit.
from sampler_v1_location import SamplerV1
from qiskit import QuantumCircuit
from qiskit.circuit.library import RealAmplitudes

# a Bell circuit
bell = QuantumCircuit(2)
bell.h(0)
bell.cx(0, 1)
bell.measure_all()

# two parameterized circuits
pqc = RealAmplitudes(num_qubits=2, reps=2)
pqc.measure_all()
pqc2 = RealAmplitudes(num_qubits=2, reps=3)
pqc2.measure_all()

theta1 = [0, 1, 1, 2, 3, 5]
theta2 = [0, 1, 2, 3, 4, 5, 6, 7]

# initialization of the sampler
sampler = Sampler()

# Sampler runs a job on the Bell circuit
job = sampler.run(circuits=[bell], parameter_values=[[]], parameters=[[]])
job_result = job.result()
print([q.binary_probabilities() for q in job_result.quasi_dists])

# Sampler runs a job on the parameterized circuits
job2 = sampler.run(
    circuits=[pqc, pqc2],
    parameter_values=[theta1, theta2],
    parameters=[pqc.parameters, pqc2.parameters])
job_result = job2.result()
print([q.binary_probabilities() for q in job_result.quasi_dists])

Inicializar SamplerV1.

Parámetros

options (dict | None) – Opciones por defecto.


Atributos

options

Devuelve los valores de las opciones para el estimador.

Devuelve

opciones


Métodos

run

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

GitHub

Ejecuta el trabajo de muestreo de cadenas de bits.

Parámetros

Devuelve

El objeto de trabajo del resultado del muestreador. El i-ésimo resultado corresponde a circuits[i] evaluado con parámetros acotados como parameter_values[i].

Eleva

ValueError - Se han dado argumentos no válidos.

Tipo de retorno

T

set_options

set_options(**fields)

GitHub

Establecer valores de opciones para el estimador.

Parámetros

** campos - Los campos para actualizar las opciones

¿Le ha resultado útil esta página?
Informe de un error, de una errata o solicite contenido en GitHub.