Sari la conținutul principal

Migrează de la Qiskit Pulse la porți fracționare

Odată cu introducerea porților fracționare, controlul la nivel de puls pe toate procesoarele IBM Quantum® a fost depreciat și va fi eliminat la începutul anului 2025. În plus, modulul qiskit.pulse a fost depreciat începând cu Qiskit SDK v1.3.0 și va fi eliminat în Qiskit SDK v2.0.0. Această schimbare a fost motivată de concentrarea noastră continuă pe experimente la scară de utilitate și pe sprijinirea utilizatorilor care explorează aplicații ce ar putea conduce la avantaj cuantic.

Execută rotații cu un singur Qubit și cu doi Qubiți direct cu porți fracționare

Cel mai frecvent caz de utilizare a controlului la nivel de puls era construirea unor planificări de puls personalizate care modificau pulsurile ECR sau RX pentru a executa direct rotații cu un singur qubit și cu doi qubiți. Procesul tipic era să se folosească RXCalibrationBuilder și RZXCalibrationBuilder (sau RZXCalibrationBuilderNoEcho) și să se adauge fie o instrucțiune RXGate, fie RZXGate la target-ul unui QPU, apoi să se construiască un pipeline de transpilare care conținea pasele de calibrare pentru a calibra rotațiile cu un singur qubit și cu doi qubiți pentru un unghi specificat. În fundal, aceasta crea o calibrare, care este o mapare între un ScheduleBlock și un Gate dintr-un QuantumCircuit.

Acum poți realiza acest lucru pe procesoarele Heron folosind noul flag use_fractional_gates. Așa cum este specificat în ghidul porților fracționare, atât RX(θ)R_X(\theta), cât și RZZ(θ)R_ZZ(\theta) trebuie încărcate folosind acest flag, care returnează un Backend al cărui atribut Target conține informații despre aceste Gate-uri.

service = QiskitRuntimeService()
backend = service.backend('ibm_torino', use_fractional_gates=True)

Folosește Qiskit Dynamics

Modulul qiskit.pulse conținea mult mai multă funcționalitate decât simpla executare mai eficientă a rotațiilor cu un singur qubit și cu doi qubiți. O mare parte din controlul asupra fizicii dispozitivului poate fi modelată folosind pachetul Qiskit Dynamics din Ecosistemul Qiskit. În particular, pachetul are propria reprezentare analogă a multor funcționalități oferite de qiskit.pulse, sub forma unui modul qiskit_dynamics.signals. Documentația acestui pachet conține câteva tutoriale care pot fi utile: