Skip to main content
IBM Quantum Platform

Opciones

class qiskit.providers.Options(**kwargs)

GitHub

Bases: Mapping

Objeto base de opciones

Esta clase es en la que se basan todas las opciones del backend. Se pretende que todas las propiedades de la clase sean ajustables dinámicamente para que un usuario pueda reconfigurar el backend bajo demanda. Si una propiedad es inmutable para el usuario (por ejemplo, algo como el número de qubits) que debe ser una configuración de la clase backend en sí en lugar de las opciones.

Las instancias de esta clase se comportan como diccionarios. Acceder a una opción con un valor por defecto puede hacerse con el método get():

>>> options = Options(opt1=1, opt2=2)
>>> options.get("opt1")
1
>>> options.get("opt3", default="hello")
'hello'

Los pares clave-valor de todas las opciones pueden recuperarse mediante el método items():

>>> list(options.items())
[('opt1', 1), ('opt2', 2)]

Las opciones pueden actualizarse por nombre:

>>> options["opt1"] = 3
>>> options.get("opt1")
3

Se pueden registrar validadores en tiempo de ejecución. Ver set_validator. Las actualizaciones a través de update_options e indexación (__setitem__) validan el nuevo valor antes de realizar la actualización y lanzan ValueError si el nuevo valor no es válido.

>>> options.set_validator("opt1", (1, 5))
>>> options["opt1"] = 4
>>> options["opt1"]
4
>>> options["opt1"] = 10
Traceback (most recent call last):
...
ValueError: ...

Atributos

validator


Métodos

get

get(k[, d]) → D[k] if k in D, else d.  d defaults to None.

items

items() → a set-like object providing a view on D's items

keys

keys() → a set-like object providing a view on D's keys

set_validator

set_validator(field, validator_value)

GitHub

Establecer un validador opcional para un campo en las opciones

Establecer un validador permite que los cambios en los valores de una opción se validen para comprobar que son correctos cuando se llama a update_options() . Por ejemplo, si tiene un campo numérico como shots , puede especificar una tupla de límites que establezca un límite superior e inferior en el valor como:

options.set_validator("shots", (1, 4096))

En este caso, cada vez que el usuario actualice la opción "shots" , se exigirá que el valor sea >=1 y <=4096. Si se sale de esos límites, aparecerá un mensaje en ValueError . Si ya existe un validador para el campo especificado, se anulará silenciosamente.

Parámetros

  • field (str) – El nombre del campo en el que se establecerá el validador
  • validator_value (list ortuple ortype) – El valor que se debe utilizar para el validador, en función del tipo, determina cómo se aplica el valor de un campo. Si se pasa una tupla, esta debe tener una longitud de dos y se aplicarán los valores mínimo y máximo (ambos incluidos) para las opciones de tipo entero o flotante. Si se trata de una lista, mostrará los valores válidos para un campo. Si se trata de un, type el validador simplemente se asegurará de que el valor sea de un tipo determinado.

Raises

  • KeyError - Si el campo no está presente en el objeto de opciones
  • ValueError - Si validator_value tiene un valor no válido para un tipo determinado
  • TypeError - Si validator_value no es un tipo válido

update_options

update_options(**fields)

GitHub

Actualizar opciones con kwargs

values

values() → an object providing a view on D's values

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