지시형 실행 모델(베타)
지시형 실행 모델의 모든 구성 요소는 현재 베타 버전이며 안정적이지 않을 수 있습니다. 샘플로매틱 또는 리포지토리에서 이슈를 열어 테스트하고 피드백을 제공할 수 있습니다 Qiskit Runtime GitHub 리포지토리에서 이슈를 열어 피드백을 제공하세요.
샘플러 및 추정기 기본 인터페이스는 알고리즘 개발자가 데이터 변환에 집중하지 않고 혁신에 더 집중할 수 있도록 더 높은 수준의 추상화를 제공합니다. 그러나 실용적인 규모의 실험을 위해 더 많은 제어와 유연성을 필요로 하는 양자 정보 과학자에게는 적합하지 않습니다. 현재 베타 버전으로 출시 중인 지시형 실행 모델은 이러한 요구를 해결합니다. 이 실행 모델은 클라이언트 측에서 설계 의도를 파악할 수 있는 요소를 제공하고, 비용이 많이 드는 회로 변형 생성을 서버 측으로 전환하여 성능 저하 없이 오류 완화 및 기타 기술을 미세 조정할 수 있도록 합니다. 이 명시적이고 구성 가능한 모델을 사용하면 새로운 기술을 실험하고, 결과를 재현하고, 방법을 공유하기가 더 쉬워집니다.
베타 버전에서 직접 실행 모델은 폴리 트월링, 노이즈 모델 학습 및 주입, 기준 변경 등 기존 샘플러 및 에스티메이터에 내장된 기술을 제어하는 데 중점을 둡니다. 다른 기능에 대한 지원은 시간이 지남에 따라 점진적으로 추가될 예정입니다.
워크플로우
지시 실행 모델의 주요 목표 중 하나는 오류 완화 방법을 적용할 수 있는 모듈식 방법을 제공하는 것입니다. 예를 들어 회로에서 완화할 레이어를 정의하거나 회로에 주입되는 노이즈 비율을 조정할 수 있습니다.
프레임워크에서 오류 완화를 회로에 적용하려면 일반적으로 워크플로에 다음 단계가 포함됩니다(여기에 언급된 도구는 다음 섹션에서 더 자세히 설명합니다):
-
지침을 상자로 그룹화하고 주석을 적용합니다. 주석은 실제로 회로 변형을 생성하지 않고도 의도한 변환을 캡처합니다.
필요한 경우 : 새로운 NoiseLearnerV3 를 사용하여 각 레이어의 노이즈 모델을 파악하세요.
-
박스형 회로에서 템플릿 회로와 샘플링을 구축합니다.
-
Executor 프리미티브를 사용하여 템플릿 회로와 samplex를 실행하면, 지시에 따라 회로 변형들이 생성되고 실행됩니다.
-
후처리 실행 결과. 예를 들어, 사후 선별을 적용하거나 실행 결과로부터 완화 기대값을 외삽할 수 있습니다.
지시형 실행 모델을 위한 도구
다음 도구를 함께 사용하여 지시형 실행 모델에서 오류 완화 기술을 구현할 수 있습니다.
샘플로매틱
샘플로매틱은 맞춤형 샘플링 무작위 추출을 지원하는 새로운 오픈 소스 라이브러리입니다. 박스 구조를 사용하여 안정적인 노이즈 컨텍스트가 있는 것으로 처리해야 하는 회로 연산 모음을 추론하고, 박스에서 주석을 사용하여 인텐트를 선언하고 구성할 수 있습니다. 예를 들어 다음 그림과 같이 회로를 상자로 계층화하고, 각 상자에 회전 주석을 추가하고, 사용할 회전 그룹을 지정할 수 있습니다:

주석이 달린 상자가 포함된 회로도를 사용하여 템플릿 회로도와 샘플렉스를 생성할 수 있습니다. 출력 템플릿 회로는 매개변수가 지정된 회로로, (다른 매개변수 값이 할당되는 경우를 제외하고는) 추가적인 변경 없이 그대로 실행됩니다. Samplomatic 라이브러리의 핵심 유형인 ‘samplex’는 템플릿 회로의 매개변수 및 기타 배열 값 필드에 대한 파라메트릭 확률 분포를 나타냅니다. 이 필드들은 바인딩된 템플릿 회로 실행을 통해 수집된 데이터를 후처리하는 데 사용할 수 있습니다. 다시 말해, 템플릿 회로와 샘플렉스는 함께 Executor 프리미티브에게 어떤 매개변수를 생성하고 어떤 바운드 회로를 실행해야 하는지 지시합니다. 이 두 구조체는 클라이언트 측에서 생성되므로, 하드웨어로 전송하여 실행하기 전에 로컬에서 검사하고 샘플링을 수행하여 결과를 확인할 수 있습니다.
주석이 달린 상자를 생성하는 과정을 간소화하기 위해 샘플로매틱 라이브러리는 사용자가 제공하는 전략에 따라 회로 명령어를 주석이 달린 상자로 자동 그룹화하는 트랜스파일러 패스도 제공합니다.
Samplomatic에 대해 자세히 알아보려면 가이드 와 API 참조 문서를 방문하세요. 언제든지 피드백을 제출하고 버그를 보고해 주세요 GitHub 저장소에 피드백을 제출하고 버그를 신고하세요.
실행자 기본형
Executor는 (템플릿 회로, samplex) 쌍을 입력으로 받아, samplex에 따라 매개변수 값을 생성 및 바인딩하고, 바인딩된 회로를 하드웨어에서 실행한 뒤, 실행 결과와 메타데이터를 반환하는 새로운 IBM Quantum 프리미티브입니다. 이 기능은 입력 쌍의 지침을 따르며 사용자를 대신해 암묵적인 결정을 내리지 않으므로, 프로세스가 투명하면서도 높은 성능을 발휘합니다.
NoiseLearnerV3
현재의 프로그램과 마찬가지로 NoiseLearner, 이 헬퍼 qiskit-ibm-runtime 프로그램은 PEC, PEA, PNA를 비롯한 많은 오차 완화 기법에서 사용되는 스파스 파울리-린드블라드 노이즈 모델을 반환합니다. 원본에서는 회로 목록을 입력으로 전달하면 NoiseLearner, 프로그램이 회로들을 레이어로 분류하고 각 고유한 레이어에 대한 노이즈 모델을 반환합니다. NoiseLearnerV3, 반면, 회로를 어떻게 계층화할지 사용자가 직접 제어할 수 있으며, 프로그램은 단순히 박스 처리된 회로 지시문 목록(예: 고유 레이어)을 입력으로 받아들입니다.
NoiseLearnerV3 또한 측정 잡음 학습을 지원합니다. 입력 목록에 포함된 각 명령어 세트에 대해, 해당 세트에 1큐비트 및 2큐비트 게이트가 포함되어 있으면 파울리-린드블라드 학습 프로토콜을 실행하고, 측정 명령어가 포함되어 있으면 TREX 프로토콜을 실행한다.
NoiseLearnerV3 와 함께 출시되었습니다 qiskit-ibm-runtimev0.47.0. 자세한 내용은 ‘Noise 학습 도우미’ 가이드를 확인하고, 해당 API 참조 문서를 참고하십시오.