BaseSamplerV1
class qiskit.primitives.BaseSamplerV1(*, options=None)
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 ( ): lista de circuitos cuánticos (parametrizados). (una lista de
QuantumCircuitobjetos) - valores de parámetros ( ): 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)
Ejecuta el trabajo de muestreo de cadenas de bits.
Parámetros
- circuits (QuantumCircuit |Sequence[QuantumCircuit]) – Uno o varios objetos de circuito.
- parameter_values (Sequence[float] | Sequence[Sequence[float]] | None) – Parámetros que se vincularán al circuito.
- run_options - Opciones de ejecución del backend utilizadas para la ejecución del circuito.
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)
Establecer valores de opciones para el estimador.
Parámetros
** campos - Los campos para actualizar las opciones