Pular para o conteúdo principal
Este projeto está em fase beta. Encontrou um bug? Abra uma issue no GitHub. Tem uma pergunta ou ideia? Pergunte no Discussions — adoraríamos receber seu feedback!
Como está a qualidade da tradução nesta página?

Especificar opções do Executor

Versões dos pacotes

O código desta página foi desenvolvido usando os seguintes requisitos. Recomendamos usar essas versões ou versões mais recentes.

qiskit-ibm-runtime~=0.47.0

Você pode usar opções para personalizar a primitiva Executor. Diferente do Sampler e do Estimator, o Executor tem muito poucas opções, já que a maioria das intenções de design está codificada no samplex.

Notas
  • Você pode ver as opções disponíveis e atualizar os valores das opções durante ou após a inicialização da primitiva.

  • Use o método update() para aplicar alterações ao atributo options.

  • O atributo options é do tipo Python dataclass. Você pode usar o método integrado asdict para convertê-lo em um dicionário.

  • O Executor só pode processar informações codificadas em samplexes. Consulte os guias do Samplomatic para entender as restrições.

Definir opções do Executor​

Se uma opção for especificada tanto durante quanto após a inicialização da primitiva, o valor definido após a inicialização da primitiva é usado.

Inicialização da primitiva​

Você pode passar uma instância da classe de opções ou um dicionário ao inicializar o Executor, que então faz uma cópia dessas opções. Assim, alterar o dicionário original ou a instância de opções não afeta as opções de propriedade da primitiva.

Classe de opções​

Ao criar uma instância da classe Executor, você pode passar uma instância da classe de opções. Essas opções são então aplicadas quando você usa run() para realizar o cálculo. Especifique as opções neste formato: options.option.sub-option.sub-sub-option = choice. Por exemplo: options.environment.log_level = INFO.

Exemplo:

# Added by doQumentation — installs the packages this notebook needs if they are missing
import importlib.util

_needed = {"qiskit_ibm_runtime": "qiskit-ibm-runtime"}
_missing = [pip for module, pip in _needed.items()
if importlib.util.find_spec(module) is None]
# One at a time, so a package that fails to install does not block the others
for _pip in _missing:
%pip install -q {_pip}
if not _missing:
print("\u2713 All required packages are installed")
from qiskit_ibm_runtime import QiskitRuntimeService, Executor
from qiskit_ibm_runtime.options_models import ExecutorOptions

service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

options = ExecutorOptions(
environment={"log_level": "INFO"},
execution={"init_qubits": True},
)

# or use the following instead:

options = ExecutorOptions()
options.environment.log_level = "INFO"
options.execution.init_qubits = True

executor = Executor(mode=backend, options=options)

Dicionário​

Você pode especificar opções como um dicionário ao inicializar o Executor.

from qiskit_ibm_runtime import QiskitRuntimeService, Executor

service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

# Setting options during primitive initialization
executor = Executor(
backend,
options={
"environment": {"log_level": "INFO"},
"execution": {"init_qubits": True},
},
)

Opções disponíveis​

A tabela a seguir documenta as opções da versão mais recente do qiskit-ibm-runtime. Para ver versões antigas de opções, visite a referência da API qiskit-ibm-runtime e selecione uma versão anterior.

environment

Documentação da API environment

environment.job_tags

Lista de tags.

Valores possíveis: Nenhum

Padrão: Nenhum

environment.log_level

Valores possíveis: DEBUG, INFO, WARNING, ERROR, CRITICAL

Padrão: WARNING

environment.private

Opções: True, False

Padrão: False

environment.max_execution_time

Valores possíveis: Número inteiro de segundos no intervalo [1, 10800]

Padrão: 10800 (3 horas)

execution

Documentação da API execution

execution.init_qubits

Se os qubits devem ser redefinidos para o estado fundamental para cada shot.

Opções: True, False

Padrão: True

execution.rep_delay

O atraso entre uma medição e o circuito quântico subsequente.

Valores possíveis: Valor no intervalo fornecido por backend.rep_delay_range

Padrão: Fornecido por backend.default_rep_delay

execution.meas_type

Opções: classified, kerneled, avg_kerneled

Padrão: classified

experimental

Opções experimentais, quando disponíveis.

Próximos passos​

Recomendações