Zum Hauptinhalt springen

Von Qiskit Pulse zu fraktionalen Gates migrieren

Mit der Einführung von fraktionalen Gates wurde die Steuerung auf Pulsebene für alle IBM Quantum®-Prozessoren als veraltet markiert und wird Anfang 2025 entfernt. Zudem wurde das Modul qiskit.pulse ab Qiskit SDK v1.3.0 als veraltet markiert und wird in Qiskit SDK v2.0.0 entfernt. Diese Änderung wurde durch unseren anhaltenden Fokus auf Experimente im Utility-Maßstab sowie die Unterstützung von Nutzern motiviert, die Anwendungen erkunden, die zu einem Quantenvorteil führen könnten.

Ein- und Zwei-Qubit-Rotationen direkt mit fraktionalen Gates ausführen

Der häufigste Anwendungsfall der Pulssteuerung war das Erstellen benutzerdefinierter Pulssequenzen, die die ECR- oder RX-Pulse modifizieren, um Ein- und Zwei-Qubit-Rotationen direkt auszuführen. Der typische Prozess bestand darin, den RXCalibrationBuilder und RZXCalibrationBuilder (oder RZXCalibrationBuilderNoEcho) zu verwenden und entweder eine RXGate- oder RZXGate-Instruktion zum target eines QPU hinzuzufügen. Anschließend wurde eine Transpilierungs-Pipeline mit Kalibrierungs-Builder-Passes erstellt, um die Ein- und Zwei-Qubit-Rotationen für einen bestimmten Winkel zu kalibrieren. Im Hintergrund wurde dabei eine Kalibrierung erstellt – eine Abbildung zwischen einem ScheduleBlock und einem Gate in einem QuantumCircuit.

Du kannst dies jetzt auf Heron-Prozessoren mithilfe des neuen use_fractional_gates-Flags erreichen. Wie im Leitfaden zu fraktionalen Gates beschrieben, müssen sowohl RX(θ)R_X(\theta) als auch RZZ(θ)R_ZZ(\theta) über dieses Flag geladen werden. Dadurch wird ein Backend zurückgegeben, dessen Target-Attribut Informationen über diese Gates enthält.

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

Qiskit Dynamics verwenden

Das Modul qiskit.pulse enthielt weit mehr Funktionalität als nur die effizientere Ausführung von Ein- und Zwei-Qubit-Rotationen. Ein Großteil der Kontrolle über die Gerätephysik lässt sich mit dem Paket Qiskit Dynamics aus dem Qiskit-Ökosystem modellieren. Insbesondere bietet das Paket in Form eines qiskit_dynamics.signals-Moduls eine analoge Darstellung vieler Funktionen, die qiskit.pulse bereitgestellt hat. Die Dokumentation dieses Pakets enthält einige Tutorials, die hilfreich sein könnten: