Skip to main content
IBM Quantum Platform

Migrare da Qiskit Pulse alle porte frazionali

Con l'introduzione delle porte frazionali, il controllo a livello di impulsi su tutti i processori IBM Quantum® è stato deprecato e sarà rimosso all'inizio del 2025. Inoltre, il modulo qiskit.pulse è stato deprecato a partire da Qiskit SDK v1.3.0 e sarà rimosso in Qiskit SDK v2.0.0. Questo cambiamento è stato motivato dalla nostra costante attenzione agli esperimenti su scala di utilità e al supporto agli utenti che esplorano applicazioni che potrebbero portare a vantaggi quantistici.


Eseguire rotazioni a uno e due qubit direttamente con porte frazionarie

Il caso d'uso più comune del controllo a livello di impulsi è stato quello di costruire programmi di impulsi personalizzati che modificano gli impulsi ECR o RX per eseguire direttamente rotazioni a uno o due qubit. Il processo tipico consisteva nell'utilizzare le istruzioni RXCalibrationBuilder e RZXCalibrationBuilder (o RZXCalibrationBuilderNoEcho) e nell'aggiungere un'istruzione RXGate o RZXGate all'istruzione target di una QPU, per poi costruire una pipeline di transpilazione contenente i passaggi del costruttore di calibrazione per calibrare le rotazioni a uno e due qubit per un angolo specifico. Sullo sfondo è stata creata una calibrazione, che è una mappa tra un ScheduleBlock e un gate in un QuantumCircuit.

È ora possibile ottenere questo risultato sui processori Heron utilizzando il nuovo flag use_fractional_gates . Come specificato nella guida alle porte frazionarie, sia RX(θ)R_X(\theta) che RZZ(θ)R_ZZ(\theta) devono essere caricati utilizzando questo flag, che restituisce un backend il cui attributo Target contiene informazioni su queste porte.

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

Utilizza Qiskit Dynamics

Il modulo qiskit.pulse contiene molte più funzionalità della semplice esecuzione di rotazioni a uno o due qubit in modo più efficiente. Gran parte del controllo sulla fisica del dispositivo può essere modellato utilizzando il pacchetto Qiskit Dynamics presente nell'ecosistema Qiskit. In particolare, il pacchetto ha una propria rappresentazione analoga di molte delle funzionalità fornite da qiskit.pulse sotto forma di modulo qiskit_dynamics.signals . La documentazione di questo pacchetto contiene alcune esercitazioni che possono essere utili:

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.