Přeskočit na hlavní obsah

Zadání možností Executor

Verze balíčků

Kód na této stránce byl vyvinut s použitím následujících požadavků. Doporučujeme používat tyto nebo novější verze.

qiskit-ibm-runtime~=0.46.1

Můžeš použít možnosti k přizpůsobení primitiva Executor. Na rozdíl od Sampler a Estimator má Executor jen velmi málo možností, protože většina návrhových záměrů je zakódována v samplexu.

Poznámky
  • Dostupné možnosti si můžeš zobrazit a aktualizovat hodnoty možností během inicializace primitivu nebo po ní.

  • K aplikaci změn atributu options použij metodu update().

    • Atribut options je typ Python dataclass. Pomocí vestavěné metody asdict ho můžeš převést na slovník.
  • Executor dokáže zpracovat pouze informace zakódované v samplexech. Podrobnosti o omezeních najdeš v průvodcích Samplomatic.

Nastavení možností Executor​

Pokud je možnost zadána jak během, tak i po inicializaci primitivu, použije se hodnota nastavená po inicializaci primitivu.

Inicializace primitivu​

Při inicializaci Executor můžeš předat instanci třídy možností nebo slovník, načež Executor vytvoří kopii těchto možností. Změna původního slovníku nebo instance možností tedy neovlivní možnosti vlastněné primitivem.

Třída možností​

Při vytváření instance třídy Executor můžeš předat instanci třídy možností. Tyto možnosti jsou pak aplikovány, když použiješ run() k provedení výpočtu. Možnosti zadej v tomto formátu: options.option.sub-option.sub-sub-option = choice. Například: options.environment.log_level = INFO.

Příklad:

# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService, Executor
from qiskit_ibm_runtime.options 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)

Slovník​

Možnosti můžeš zadat jako slovník při inicializaci 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},
},
)

Dostupné možnosti​

Následující tabulka dokumentuje možnosti z nejnovější verze qiskit-ibm-runtime. Starší verze možností najdeš v referenci API qiskit-ibm-runtime, kde si vybereš předchozí verzi.

environment

Dokumentace API environment

environment.job_tags

Seznam štítků.

Volby: None

Výchozí: None

environment.log_level

Volby: DEBUG, INFO, WARNING, ERROR, CRITICAL

Výchozí: WARNING

environment.private

Volby: True, False

Výchozí: False

environment.max_execution_time

Volby: Celé číslo sekund v rozsahu [1, 10800]

Výchozí: 10800 (3 hodiny)

execution

Dokumentace API execution

execution.init_qubits

Zda se mají qubity před každým shotem resetovat do základního stavu.

Volby: True, False

Výchozí: True

execution.rep_delay

Prodleva mezi měřením a následným kvantovým obvodem.

Volby: Hodnota v rozsahu dodaném backend.rep_delay_range

Výchozí: Dáno backend.default_rep_delay

execution.meas_type

Volby: classified, kerneled, avg_kerneled

Výchozí: classified

experimental

Experimentální možnosti, pokud jsou k dispozici.

Další kroky​

Doporučení