Executor 옵션 지정
패키지 버전
이 페이지의 코드는 다음 요구 사항을 사용하여 개발되었습니다. 이 버전 이상을 사용하는 것을 권장합니다.
qiskit-ibm-runtime~=0.46.1
옵션을 사용하여 Executor Primitive를 사용자 정의할 수 있습니다.
- Primitive 초기화 중 또는 이후에 사용 가능한 옵션을 보고 옵션 값을 업데이트할 수 있습니다.
update()메서드를 사용하여options속성에 변경 사항을 적용하세요.options속성은 Pythondataclass유형입니다. 내장된asdict메서드를 사용하여 딕셔너리로 변환할 수 있습니다.
Executor 옵션 설정
옵션이 Primitive 초기화 중과 이후 모두에 지정된 경우, Primitive 초기화 이후에 설정된 값이 사용됩니다.
Primitive 초기화
Executor를 초기화할 때 옵션 클래스의 인스턴스 또는 딕셔너리를 전달할 수 있으며, 그러면 해당 옵션의 복사본을 만듭니다. 따라서 원래 딕셔너리 또는 옵션 인스턴스를 변경해도 Primitive가 소유한 옵션에는 영향이 없습니다.
옵션 클래스
Executor 클래스의 인스턴스를 만들 때 옵션 클래스의 인스턴스를 전달할 수 있습니다. 그러면 run()을 사용하여 계산을 수행할 때 해당 옵션이 적용됩니다. 다음 형식으로 옵션을 지정합니다: options.option.sub-option.sub-sub-option = choice. 예를 들어: options.environment.log_level = INFO.
예제:
# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService, Executor
from qiskit_ibm_runtime.options import ExecutorOptions
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)
options = ExecutorOptions(
environment={"log_level": "INFO"},
execution={"init_qubits": True},
)
# or use the following instead:
options = ExecutorOptions()
options.environment.log_level = "INFO"
options.execution.init_qubits = True
executor = Executor(mode=backend, options=options)
딕셔너리
Executor를 초기화할 때 딕셔너리로 옵션을 지정할 수 있습니다.
from qiskit_ibm_runtime import QiskitRuntimeService, Executor
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)
# Setting options during primitive initialization
executor = Executor(
backend,
options={
"environment": {"log_level": "INFO"},
"execution": {"init_qubits": True},
},
)
사용 가능한 옵션
다음 표는 최신 버전의 qiskit-ibm-runtime의 옵션을 문서화합니다. 이전 옵션 버전을 보려면 qiskit-ibm-runtime API 참조를 방문하여 이전 버전을 선택하세요.
environment
environment.job_tags
태그 목록.
선택값: 없음
기본값: 없음
environment.log_level
선택값: DEBUG, INFO, WARNING, ERROR, CRITICAL
기본값: WARNING
environment.private
선택값: True, False
기본값: False
environment.max_execution_time
선택값: [1, 10800] 범위의 정수 초
기본값: 10800 (3시간)
execution
execution.init_qubits
각 샷에 대해 Qubit을 기저 상태로 초기화할지 여부.
선택값: True, False
기본값: True
execution.rep_delay
측정과 후속 양자 Circuit 사이의 지연.
선택값: backend.rep_delay_range가 제공하는 범위의 값
기본값: backend.default_rep_delay에 의해 지정됨
execution.meas_type
선택값: classified, kerneled, avg_kerneled
기본값: classified
experimental
실험적 옵션 (사용 가능한 경우).
기능 호환성
특정 런타임 기능은 단일 Job에서 함께 사용할 수 없습니다. 선택한 기능과 호환되지 않는 기능 목록은 적절한 탭을 클릭하세요:
- 동적 Circuit
- 동적 분리
- 분수 게이트
- Gate 폴딩 ZNE
- Gate 트월링
- PEA
- PEC
호환되지 않는 기능:
- Gate 폴딩 ZNE
- PEA
- PEC
- 동적 분리
기타 참고 사항:
- Gate 트월링은 동적 Circuit에 적용될 수 있지만 조건부 블록 내부의 게이트에는 적용할 수 없습니다.
- 측정 트월링은 터미널 측정에만 적용할 수 있습니다.
- 측정 트월링은
store명령어와 호환되지 않습니다. qiskit-ibm-runtimev0.42.0 이상을 사용할 때 분수 게이트와 호환됩니다.
동적 Circuit과 호환되지 않습니다.
호환되지 않는 기능:
- Gate 트월링
- PEA
- PEC
qiskit-ibm-runtime v0.42.0 이상을 사용할 때 동적 Circuit과 호환됩니다.
호환되지 않는 기능:
- 동적 Circuit
- PEA
- PEC
사용자 정의 게이트를 사용할 때 작동하지 않을 수 있습니다.
분수 게이트 또는 스트레치와 호환되지 않습니다.
기타 참고 사항:
- Gate 트월링은 동적 Circuit에 적용될 수 있지만 조건부 블록 내부의 게이트에는 적용할 수 없습니다. 측정 트월링은 터미널 측정에만 적용할 수 있습니다.
- 비Clifford 인탱글러와는 작동하지 않습니다.
호환되지 않는 기능:
- 동적 Circuit
- 분수 게이트
- Gate 폴딩 ZNE
- PEC
호환되지 않는 기능:
- 동적 Circuit
- 분수 게이트
- Gate 폴딩 ZNE
- PEA
다음 단계
- ExecutionOptionsV2 API 문서를 검토하세요.
- EnvironmentOptions API 문서를 검토하세요.