Skip to main content
IBM Quantum Platform

BasePrimitiveJob

class qiskit.primitives.BasePrimitiveJob(job_id, **kwargs)

GitHub

Bases: ABC, Generic[ResultT, StatusT]

Clase base abstracta de trabajo primitivo.

Esto define la funcionalidad del objeto «job handle» que se obtiene mediante una llamada a primitive.run(). Normalmente, este objeto representa un identificador de una tarea asíncrona, donde los métodos status(), done(), running()in_final_state() , cancelled() y devuelven información no bloqueante sobre el estado de la tarea.

El método result() se implementa normalmente como una llamada de bloqueo que espera a que se devuelva el resultado de la ejecución. El uso de este objeto de trabajo casi siempre termina en una llamada a result().

Nota

Esta es una clase base abstracta que define una interfaz. Cada proveedor de primitivas (por ejemplo, qiskit_aer o qiskit_ibm_runtime) tendrá su propia subclase de este objeto, que puede proporcionar funcionalidad adicional además de esta interfaz.


Subclasificación

Cada implementador de las primitivas debe proporcionar una implementación concreta de esta interfaz. No hay métodos proporcionados en la implementación base, aparte del job_id() getter, ya que una clave de cadena que identifique de forma única los trabajos es un requisito de todos los primitivos.

El tipo ResultT genérico debe establecerse en una subclase del resultado primitivo versionado adecuado. Esto normalmente significará establecerlo en PrimitiveResult (par V2 ), o una subclase específica de la implementación de esto.

El tipo StatusT genérico es completamente libre; su implementación puede proporcionar cualquier objeto de estado que desee y no hay una interfaz definida. En su lugar, deben implementarse los métodos done(), running(), cancelled()in_final_state() y de esta interfaz para proporcionar al usuario un acceso programático sencillo a información de estado de grano grueso. Puede proporcionar detalles adicionales en el genérico StatusT completo.

Se espera convencionalmente (aunque no es estrictamente necesario) que la creación de este identificador de «trabajo» sea rápida y sin bloqueos, y que este objeto contenga un identificador interno asíncrono del trabajo real. El result() método normalmente debería bloquearse hasta que esté listo, si se llama antes de que el trabajo haya finalizado.

Inicializa el trabajo primitivo.

param job_id

Un identificador único en el contexto de la primitiva utilizada para ejecutar el trabajo.

parámetros kwargs

Cualquier metadato de valor clave que se desee asociar a este trabajo.


Métodos

cancel

abstractmethod cancel()

GitHub

Intento de cancelar el trabajo.

cancelled

abstractmethod cancelled()

GitHub

Devuelve si el trabajo ha sido cancelado.

Tipo de retorno

bool

done

abstractmethod done()

GitHub

Devuelve si el trabajo se ha ejecutado correctamente.

Tipo de retorno

bool

in_final_state

abstractmethod in_final_state()

GitHub

Devuelve si el trabajo está en un estado de trabajo final como DONE o ERROR.

Tipo de retorno

bool

job_id

job_id()

GitHub

Devuelve un id único que identifica el trabajo.

Tipo de retorno

str

result

abstractmethod result()

GitHub

Devuelve los resultados del trabajo.

Tipo de retorno

ResultT

running

abstractmethod running()

GitHub

Devuelve si el trabajo se está ejecutando activamente.

Tipo de retorno

bool

status

abstractmethod status()

GitHub

Devuelve el estado del trabajo.

Tipo de retorno

StatusT

Parámetros

job_id (str)

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