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.43.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, proses set semula tidak sempurna, yang membawa kepada ralat penyediaan keadaan. Untuk mengurangkan ralat, sistem juga memasukkan masa lengah pengulangan (atau rep_delay) antara Circuit. Setiap backend mempunyai rep_delay lalai yang berbeza, tetapi biasanya lebih lama daripada T1 untuk membolehkan persekitaran menetapkan semula Qubit. rep_delay lalai boleh ditanya dengan menjalankan backend.default_rep_delay.
Semua QPU IBM menggunakan pelaksanaan kadar pengulangan dinamik, yang membolehkan anda 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, menurunkan rep_delay mengurangkan jumlah masa pelaksanaan QPU, tetapi dengan mengorbankan peningkatan kadar ralat penyediaan keadaan, seperti yang dapat dilihat dalam imej berikut:

Menetapkan kedua-dua rep_delay=0 dan init_qubits=False pada asasnya "menggabungkan" Circuit 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. Oleh itu, walaupun anda menghantar pubs=[pub1, pub2], tiada jaminan Circuit dari pub1 akan 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​
# 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 primitif.