Qiskit Pulse에서 분수 게이트로 마이그레이션
분수 게이트의 도입으로 인해, 모든 IBM Quantum® 프로세서에서의 펄스 수준 제어는 사용 중단(deprecated)되었으며 2025년 초에 제거될 예정이에요. 또한, qiskit.pulse 모듈은 Qiskit SDK v1.3.0부터 사용 중단되었으며 Qiskit SDK v2.0.0에서 제거될 예정이에요. 이번 변경은 유틸리티 규모 실험에 지속적으로 집중하고, 양자 우위로 이어질 수 있는 응용 분야를 탐색하는 사용자를 지원하기 위한 것이에요.
분수 게이트를 사용하여 단일 큐비트 및 2-큐비트 회전을 직접 실행하기
펄스 수준 제어의 가장 일반적인 사용 사례는 ECR 또는 RX 펄스를 수정하여 단일 큐비트 및 2-큐비트 회전을 직접 실행하는 사용자 정의 펄스 스케줄을 구성하는 것이었어요. 일반적인 과정은 RXCalibrationBuilder와 RZXCalibrationBuilder(또는 RZXCalibrationBuilderNoEcho)를 사용하고, QPU의 target에 RXGate 또는 RZXGate 명령을 추가한 다음, 지정된 각도에 대해 단일 큐비트 및 2-큐비트 회전을 캘리브레이션하는 캘리브레이션 빌더 패스를 포함하는 트랜스파일(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에서 제공하는 많은 기능에 대한 유사한 표현을 자체적으로 갖추고 있습니다. 이 패키지의 문서에는 도움이 될 수 있는 몇 가지 튜토리얼이 포함되어 있습니다: