Skip to main content
IBM Quantum Platform

BasePrimitiveJob

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

GitHub

Bases: ABC, Generic[ResultT, StatusT]

Classe base abstrata de trabalho primitivo.

Isso define a funcionalidade do objeto “job handle” obtido por meio de uma chamada para primitive.run(). Normalmente, esse objeto representa um identificador para uma tarefa assíncrona, em que os métodos status(), done(), running()in_final_state() , cancelled() e retornam informações não bloqueantes sobre o estado da tarefa.

O método result() é normalmente implementado como uma chamada de bloqueio que aguarda o retorno do resultado da execução. O uso desse objeto de trabalho quase invariavelmente termina em uma chamada para result().

Nota

Esta é uma classe base abstrata, que define uma interface. Cada provedor de primitivas (por exemplo, qiskit_aer ou qiskit_ibm_runtime) terá sua própria subclasse desse objeto, que pode fornecer funcionalidades adicionais além dessa interface.


Subclassificação

Cada implementador das primitivas deve fornecer uma implementação concreta dessa interface. Não há métodos fornecidos na implementação base, além do job_id() getter, uma vez que uma chave de string que identifica exclusivamente os trabalhos é um requisito de todas as primitivas.

O tipo ResultT genérico deve ser definido como uma subclasse do resultado primitivo versionado apropriado. Isso normalmente significa defini-lo como PrimitiveResult (para V2 ) ou uma subclasse específica da implementação.

O tipo StatusT genérico é totalmente livre; sua implementação pode fornecer qualquer objeto de status que desejar e não há interface definida. Em vez disso, os métodos done(), running(), cancelled()in_final_state() e desta interface devem ser implementados para fornecer ao usuário acesso programático simples a informações de status de alto nível. Você pode fornecer detalhes adicionais no genérico StatusT completo.

Espera-se convencionalmente (mas não é estritamente necessário) que a criação desse identificador de “tarefa” seja rápida e sem bloqueio, e que esse objeto mantenha um identificador interno assíncrono para a tarefa real. O result() método normalmente deve bloquear até estar pronto, se chamado antes da conclusão da tarefa.

Inicializa o trabalho primitivo.

param job_id

Um identificador único no contexto do primitivo usado para executar o trabalho.

parâmetros kwargs

Qualquer metadado de valor-chave a ser associado a este trabalho.


Métodos

cancel

abstractmethod cancel()

GitHub

Tentativa de cancelar o trabalho.

cancelled

abstractmethod cancelled()

GitHub

Retorna se o trabalho foi cancelado.

Tipo de retorno

bool

done

abstractmethod done()

GitHub

Retorna se o trabalho foi executado com êxito.

Tipo de retorno

bool

in_final_state

abstractmethod in_final_state()

GitHub

Retorna se o trabalho está em um estado de trabalho final, como DONE ou ERROR.

Tipo de retorno

bool

job_id

job_id()

GitHub

Retorna um ID exclusivo que identifica o trabalho.

Tipo de retorno

str

result

abstractmethod result()

GitHub

Retorna os resultados do trabalho.

Tipo de retorno

ResultT

running

abstractmethod running()

GitHub

Retorna se o trabalho está sendo executado ativamente.

Tipo de retorno

bool

status

abstractmethod status()

GitHub

Retorna o status do trabalho.

Tipo de retorno

StatusT

Parâmetros

job_id (str)

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.