Permulaan Qubit
Versi pakej
Kod pada halaman ini dibangunkan menggunakan keperluan berikut. Kami mengesyorkan menggunakan versi ini atau yang lebih baharu.
qiskit-ibm-runtime~=0.46.1
Apabila Circuit dilaksanakan pada unit pemprosesan kuantum (QPU) IBM®, set semula tersirat biasanya dimasukkan pada permulaan Circuit untuk memastikan qubit dimulakan kepada sifar. Ini dikawal oleh bendera init_qubits, ditetapkan sebagai pilihan pelaksanaan primitif.
Walau bagaimanapun, ketidaksempurnaan dalam proses set semula boleh memperkenalkan ralat penyediaan keadaan. Untuk mengurangkan ralat, QPU juga memasukkan masa lengah pengulangan (atau rep_delay) antara Circuit. Setiap backend mempunyai rep_delay lalai yang berbeza, tetapi biasanya ditetapkan untuk mengimbangi kesetiaan set semula dengan jumlah masa pelaksanaan. Jalankan backend.default_rep_delay untuk mencari rep_delay lalai bagi QPU tertentu.
Kerana semua QPU IBM menggunakan pelaksanaan kadar pengulangan dinamik, anda boleh menukar rep_delay untuk setiap kerja. Circuit yang anda hantar dalam kerja primitif dibungkus bersama untuk dilaksanakan pada QPU. Circuit ini dilaksanakan dengan berulang ke atas Circuit untuk setiap shot yang diminta; pelaksanaan adalah mengikut lajur atas matriks Circuit dan shot, seperti yang ditunjukkan dalam rajah berikut.

Kerana rep_delay dimasukkan antara Circuit, setiap shot pelaksanaan menghadapi lengahan ini. Oleh itu, apabila anda menurunkan rep_delay, jumlah masa pelaksanaan QPU berkurang, dengan mengorbankan peningkatan kadar ralat penyediaan keadaan, seperti yang ditunjukkan oleh imej berikut:

Jika anda menetapkan kedua-dua rep_delay=0 dan init_qubits=False, Circuit "bergabung" bersama, kerana qubit akan bermula dalam keadaan akhir dari shot sebelumnya.
Perhatikan bahawa walaupun Circuit dalam kerja primitif dibungkus bersama untuk pelaksanaan QPU, tiada jaminan tentang urutan pelaksanaan Circuit dari PUB. Sebagai contoh, jika anda menghantar pubs=[pub1, pub2], Circuit dari pub1 mungkin tidak berjalan sebelum Circuit dari pub2. Juga tiada jaminan bahawa Circuit dari kerja yang sama akan berjalan sebagai satu kelompok pada QPU.
Tentukan rep_delay untuk kerja primitif
Sentiasa sahkan julat rep_delay yang disokong untuk QPU tertentu yang anda gunakan. Nilai-nilai ini tidak sama untuk setiap QPU dan juga boleh berubah dari masa ke masa.
Sila ambil perhatian bahawa peningkatan dalam rep_delay akan memberi kesan langsung kepada masa pelaksanaan dan penggunaan kapasiti anda.
# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService, SamplerV2 as Sampler
service = QiskitRuntimeService()
# Make sure your backend supports it
backend = service.least_busy(
operational=True, min_num_qubits=100, dynamic_reprate_enabled=True
)
# Determine the allowable range
backend.rep_delay_range
sampler = Sampler(mode=backend)
# Specify a value in the supported range
sampler.options.execution.rep_delay = 0.0005
Langkah seterusnya
- Cuba contoh dalam tutorial Algoritma pengoptimuman anggaran kuantum (QAOA).
- Semak cara memulakan dengan Estimator.
- Semak cara memulakan dengan Sampler.