Qiskit Pulse에서 분수 게이트로 마이그레이션
분수 게이트의 도입으로 인해, 모든 IBM Quantum® 프로세서에서의 펄스 수준 제어는 더 이상 사용 중단(deprecated)되었으 며 2025년 초에 제거될 예정입니다. 또한, qiskit.pulse 모듈은 Qiskit SDK v1.3.0부터 사용 중단되었으며 Qiskit SDK v2.0.0에서 제거될 예정입니다. 이 변경은 유틸리티 규모 실험에 대한 지속적인 집중과 양자 우위로 이어질 수 있는 응용 프로그램을 탐색하는 사용자 지원에 의해 이루어졌습니다.
분수 게이트를 사용하여 단일 및 2-Qubit 회전을 직접 실행하기
펄스 수준 제어의 가장 일반적인 사용 사례는 ECR 또는 RX 펄스를 수정하여 단일 및 2-Qubit 회전을 직접 실행하는 사용자 정의 펄스 스케줄을 구성하는 것이었습니다. 일반적인 과정은 RXCalibrationBuilder와 RZXCalibrationBuilder(또는 RZXCalibrationBuilderNoEcho)를 사용하여 QPU의 target에 RXGate 또는 RZXGate 명령을 추가한 다음, 지정된 각도에 대해 단일 및 2-Qubit 회전을 보정하는 캘리브레이션 빌더 패스를 포함하는 트랜스파일(transpilation) 파이프라인을 구성하는 것이었습니다. 백그라운드에서 이 과정은 캘리브레이션을 생성했는데, 이는 ScheduleBlock과 QuantumCircuit의 Gate 간의 매핑입니다.
이제 새로운 use_fractional_gates 플래그를 사용하여 Heron 프로세서에서 이를 수행할 수 있습니다. 분수 게이트 가 이드에 명시된 바와 같이, 와 모두 이 플래그를 사용하여 로드해야 하며, 이는 해당 Gate에 대한 정보를 포함하는 Target 속성을 가진 Backend를 반환합니다.
service = QiskitRuntimeService()
backend = service.backend('ibm_torino', use_fractional_gates=True)
Qiskit Dynamics 사용하기
qiskit.pulse 모듈은 단일 및 2-Qubit 회전을 더 효율적으로 실행하는 것 이상의 훨씬 더 많은 기능을 포함하고 있었습니다. 장치 물리학에 대한 많은 제어는 Qiskit 생태계에서 찾을 수 있는 Qiskit Dynamics 패키지를 사용하여 모델링할 수 있습니다. 특히, 이 패키지는 qiskit_dynamics.signals 모듈 형태로 qiskit.pulse에서 제공하는 많은 기능에 대한 유사한 표현을 자체적으로 갖추고 있습니다. 이 패키지의 문서에는 도움이 될 수 있는 몇 가지 튜토리얼이 포함되어 있습니다: