Lewati ke konten utama

Tentukan opsi Executor

Versi paket

Kode di halaman ini dikembangkan menggunakan persyaratan berikut. Kami menyarankan menggunakan versi ini atau yang lebih baru.

qiskit-ibm-runtime~=0.46.1

Kamu bisa menggunakan opsi untuk menyesuaikan primitif Executor.

Catatan
  • Kamu bisa melihat opsi yang tersedia dan memperbarui nilai opsi selama atau setelah inisialisasi primitif.
  • Gunakan metode update() untuk menerapkan perubahan pada atribut options.
  • Atribut options adalah tipe Python dataclass. Kamu bisa menggunakan metode bawaan asdict untuk mengubahnya menjadi dictionary.

Atur opsi Executor

Jika suatu opsi ditentukan baik saat maupun setelah inisialisasi primitif, nilai yang ditetapkan setelah menginisialisasi primitif yang digunakan.

Inisialisasi primitif

Kamu bisa meneruskan instansi kelas opsi atau dictionary saat menginisialisasi Executor, yang kemudian membuat salinan opsi tersebut. Jadi, mengubah dictionary atau instansi opsi asli tidak mempengaruhi opsi yang dimiliki primitif.

Kelas opsi

Saat membuat instansi kelas Executor, kamu bisa meneruskan instansi kelas opsi. Opsi tersebut kemudian diterapkan saat kamu menggunakan run() untuk melakukan perhitungan. Tentukan opsi dalam format ini: options.option.sub-option.sub-sub-option = choice. Misalnya: options.environment.log_level = INFO.

Contoh:

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

Dictionary

Kamu bisa menentukan opsi sebagai dictionary saat menginisialisasi 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},
},
)

Opsi yang tersedia

Tabel berikut mendokumentasikan opsi dari versi terbaru qiskit-ibm-runtime. Untuk melihat versi opsi yang lebih lama, kunjungi referensi API qiskit-ibm-runtime dan pilih versi sebelumnya.

environment

Dokumentasi API environment

environment.job_tags

Daftar tag.

Pilihan: None

Default: None

environment.log_level

Pilihan: DEBUG, INFO, WARNING, ERROR, CRITICAL

Default: WARNING

environment.private

Pilihan: True, False

Default: False

environment.max_execution_time

Pilihan: Bilangan bulat dalam satuan detik, rentang [1, 10800]

Default: 10800 (3 jam)

execution

Dokumentasi API execution

execution.init_qubits

Apakah akan mereset qubit ke ground state untuk setiap shot.

Pilihan: True, False

Default: True

execution.rep_delay

Penundaan antara pengukuran dan quantum circuit berikutnya.

Pilihan: Nilai dalam rentang yang diberikan oleh backend.rep_delay_range

Default: Diberikan oleh backend.default_rep_delay

execution.meas_type

Pilihan: classified, kerneled, avg_kerneled

Default: classified

experimental

Opsi eksperimental, jika tersedia.

Kompatibilitas fitur

Fitur-fitur runtime tertentu tidak bisa digunakan bersama dalam satu job. Klik tab yang sesuai untuk melihat daftar fitur yang tidak kompatibel dengan fitur yang dipilih:

Tidak kompatibel dengan:

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

Catatan lain:

  • Gate twirling bisa diterapkan pada dynamic circuit, tapi hanya pada gate yang tidak ada di dalam blok kondisional.
  • Measurement twirling hanya bisa diterapkan pada pengukuran terminal.
  • Measurement twirling tidak kompatibel dengan instruksi store.
  • Kompatibel dengan fractional gates saat menggunakan qiskit-ibm-runtime v0.42.0 atau lebih baru.

Langkah selanjutnya

Rekomendasi