Sari la conținutul principal

Specifică opțiunile Executor

Versiuni de pachete

Codul de pe această pagină a fost dezvoltat folosind următoarele cerințe. Recomandăm să folosești aceste versiuni sau mai noi.

qiskit-ibm-runtime~=0.46.1

Poți folosi opțiuni pentru a personaliza primitiva Executor.

Note
  • Poți vedea opțiunile disponibile și actualiza valorile opțiunilor în timpul sau după inițializarea primitivei.
  • Folosește metoda update() pentru a aplica modificări atributului options.
  • Atributul options este de tipul Python dataclass. Poți folosi metoda built-in asdict pentru a-l converti într-un dicționar.

Setează opțiunile Executor

Dacă o opțiune este specificată atât în timpul, cât și după inițializarea primitivei, se folosește valoarea setată după inițializarea primitivei.

Inițializarea primitivei

Poți transmite o instanță a clasei de opțiuni sau un dicționar la inițializarea Executor, care face apoi o copie a acelor opțiuni. Astfel, modificarea dicționarului original sau a instanței de opțiuni nu afectează opțiunile deținute de primitivă.

Clasa Options

La crearea unei instanțe a clasei Executor, poți transmite o instanță a clasei de opțiuni. Acele opțiuni sunt apoi aplicate atunci când folosești run() pentru a efectua calculul. Specifică opțiunile în acest format: options.option.sub-option.sub-sub-option = alegere. De exemplu: options.environment.log_level = INFO.

Exemplu:

# 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)

Dicționar

Poți specifica opțiunile ca dicționar la inițializarea 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țiuni disponibile

Tabelul următor documentează opțiunile din cea mai recentă versiune a qiskit-ibm-runtime. Pentru a vedea versiuni mai vechi ale opțiunilor, vizitează referința API qiskit-ibm-runtime și selectează o versiune anterioară.

environment

Documentația API environment

environment.job_tags

Listă de etichete.

Valori posibile: None

Implicit: None

environment.log_level

Valori posibile: DEBUG, INFO, WARNING, ERROR, CRITICAL

Implicit: WARNING

environment.private

Valori posibile: True, False

Implicit: False

environment.max_execution_time

Valori posibile: Număr întreg de secunde în intervalul [1, 10800]

Implicit: 10800 (3 ore)

execution

Documentația API execution

execution.init_qubits

Dacă se resetează qubiții la starea fundamentală pentru fiecare shot.

Valori posibile: True, False

Implicit: True

execution.rep_delay

Întârzierea dintre o măsurătoare și circuitul cuantic ulterior.

Valori posibile: Valoare în intervalul furnizat de backend.rep_delay_range

Implicit: Dată de backend.default_rep_delay

execution.meas_type

Valori posibile: classified, kerneled, avg_kerneled

Implicit: classified

experimental

Opțiuni experimentale, când sunt disponibile.

Compatibilitate între funcționalități

Anumite funcționalități runtime nu pot fi folosite împreună într-un singur job. Apasă pe tab-ul corespunzător pentru o listă de funcționalități incompatibile cu funcționalitatea selectată:

Incompatibil cu:

  • Gate-folding ZNE
  • PEA
  • PEC
  • Dynamical decoupling

Alte note:

  • Gate twirling poate fi aplicat circuitelor dinamice, dar numai porților care nu se află în blocuri condiționale.
  • Measurement twirling poate fi aplicat numai măsurătorilor terminale.
  • Measurement twirling este incompatibil cu instrucțiunea store.
  • Compatibil cu porți fracționare când se folosește qiskit-ibm-runtime v0.42.0 sau mai nou.

Pașii următori

Recomandări