Skip to main content
IBM Quantum Platform

BaseController

class qiskit.passmanager.BaseController(options=None)

GitHub

베이스: Task[IR, IR_OUT], ABC

컨트롤러의 베이스 클래스입니다.

컨트롤러는 패스 관리자 작업 모음으로 빌드되며, 하위 클래스는 실행할 다음 작업을 선택하는 사용자 지정 로직을 제공합니다. 컨트롤러는 다른 컨트롤러에 중첩될 수 있으며, 컨트롤러 자체는 입력 IR을 수정하는 서브루틴을 제공하지 않습니다.

새 플로우 컨트롤러를 만듭니다.

매개변수

options (dict[str, Any] | None) – 이 플로우 컨트롤러의 옵션입니다.


메소드

execute

execute(passmanager_ir, state, callback=None)

GitHub

입력된 키스킷 IR에 대한 최적화 작업을 실행합니다.

매개변수

  • passmanager_ir (IR) – 최적화할 Qiskit IR.
  • state (PassManagerState) – 패스 관리자 자체의 워크플로 실행과 관련된 상태입니다.
  • callback (Callable | None) – 최적화 작업이 실행될 때마다 호출되는 콜백 함수입니다.

리턴

최적화된 키스킷 IR 및 워크플로 상태.

리턴 유형

튜플 [ IR_OUT, PassManagerState ]

iter_tasks

abstractmethod iter_tasks(state)

GitHub

실행할 다음 작업을 선택하는 사용자 지정 로직입니다.

컨트롤러 서브클래스는 상태를 소비하여 적절한 작업 파이프라인을 구축할 수 있습니다. 작업 실행 후 업데이트된 상태는 yield 문의 '반환' 값으로 다시 피드백됩니다. 이는 작업 실행 순서가 런타임에만 결정된다는 것을 나타냅니다. 이 메서드는 지정된 상태 객체를 변경할 수 없습니다.

매개변수

  • state (PassManagerState) – 이 흐름 컨트롤러가 실행되기 시작할 때의 패스매니저 워크플로우 상태입니다.
  • 상태 - 마지막으로 산출된 작업을 실행한 후 패스 관리자의 상태입니다. 생성기는 로직과 관련이 없는 경우 이를 검사하거나 업데이트할 필요가 없습니다.

산출량

작업 - 실행할 다음 작업입니다.

리턴 유형

Generator [ Task [ Any, Any ], PassManagerState, None]

이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.