Vai al contenuto principale

Specifica le opzioni di Executor

Versioni dei pacchetti

Il codice in questa pagina è stato sviluppato con i seguenti requisiti. Ti consigliamo di usare queste versioni o versioni più recenti.

qiskit-ibm-runtime~=0.46.1

Puoi usare le opzioni per personalizzare la primitiva Executor. A differenza di Sampler ed Estimator, Executor ha pochissime opzioni poiché la maggior parte delle intenzioni di design è codificata nel samplex.

Note
  • Puoi vedere le opzioni disponibili e aggiornare i valori delle opzioni durante o dopo l'inizializzazione della primitiva.

  • Usa il metodo update() per applicare le modifiche all'attributo options.

    • L'attributo options è il tipo Python dataclass. Puoi usare il metodo integrato asdict per convertirlo in un dizionario.
  • Executor può elaborare solo informazioni codificate in samplex. Consulta le guide di Samplomatic per comprendere le restrizioni.

Imposta le opzioni di Executor​

Se un'opzione è specificata sia durante che dopo l'inizializzazione della primitiva, viene usato il valore impostato dopo l'inizializzazione della primitiva.

Inizializzazione della primitiva​

Puoi passare un'istanza della classe delle opzioni o un dizionario quando inizializzi Executor, che poi crea una copia di quelle opzioni. Quindi, modificare il dizionario originale o l'istanza delle opzioni non influisce sulle opzioni di proprietà della primitiva.

Classe delle opzioni​

Quando crei un'istanza della classe Executor, puoi passare un'istanza della classe delle opzioni. Tali opzioni vengono poi applicate quando usi run() per eseguire il calcolo. Specifica le opzioni in questo formato: options.option.sub-option.sub-sub-option = choice. Ad esempio: options.environment.log_level = INFO.

Esempio:

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

Dizionario​

Puoi specificare le opzioni come dizionario quando inizializzi 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},
},
)

Opzioni disponibili​

La tabella seguente documenta le opzioni dell'ultima versione di qiskit-ibm-runtime. Per vedere versioni precedenti delle opzioni, visita il riferimento API di qiskit-ibm-runtime e seleziona una versione precedente.

environment

Documentazione API di environment

environment.job_tags

Elenco di tag.

Scelte: Nessuna

Predefinito: Nessuna

environment.log_level

Scelte: DEBUG, INFO, WARNING, ERROR, CRITICAL

Predefinito: WARNING

environment.private

Scelte: True, False

Predefinito: False

environment.max_execution_time

Scelte: Numero intero di secondi nell'intervallo [1, 10800]

Predefinito: 10800 (3 ore)

execution

Documentazione API di execution

execution.init_qubits

Se reimpostare i qubit allo stato fondamentale per ogni shot.

Scelte: True, False

Predefinito: True

execution.rep_delay

Il ritardo tra una misurazione e il circuito quantistico successivo.

Scelte: Valore nell'intervallo fornito da backend.rep_delay_range

Predefinito: Fornito da backend.default_rep_delay

execution.meas_type

Scelte: classified, kerneled, avg_kerneled

Predefinito: classified

experimental

Opzioni sperimentali, quando disponibili.

Passi successivi​

Raccomandazioni