PassManagerConfig
class qiskit.transpiler.PassManagerConfig(initial_layout=None, basis_gates=None, coupling_map=None, layout_method=None, routing_method=None, translation_method=None, scheduling_method=None, instruction_durations=None, approximation_degree=None, seed_transpiler=None, timing_constraints=None, unitary_synthesis_method='default', unitary_synthesis_plugin_config=None, target=None, hls_config=None, init_method=None, optimization_method=None, qubits_initially_zero=True)
Bases: object
Configuração do Gerenciador de Senhas.
Inicializar um objeto PassManagerConfig
Parâmetros
- initial_layout (Layout | None) – Posição inicial dos qubits virtuais nos qubits físicos.
- basis_gates (list[str] | None) – Lista dos nomes das portas de base para as quais se deve realizar o desenrolamento.
- coupling_map (CouplingMap | None) – Grafo direcionado que representa um mapa de acoplamento.
- layout_method (str | None) – o parâmetro a ser utilizado para escolher o posicionamento inicial dos qubits. Este será o nome do plug-in caso seja utilizado um plug-in externo de estágio de layout.
- routing_method (str | None) – o passador a ser utilizado para o roteamento de qubits na arquitetura. Esse será o nome do plug-in, caso seja utilizado um plug-in de etapa de roteamento externo.
- translation_method (str | None) – o parâmetro a ser usado para converter portas em portas de base. Este será o nome do plugin, caso seja utilizado um plugin externo de etapas de tradução.
- scheduling_method (str | None) – o passe a ser utilizado para agendar aulas. Este será o nome do plug-in, caso seja utilizado um plug-in externo de etapa de agendamento.
- instruction_durations (InstructionDurations | None) – Dicionário de duração (em dt) para cada instrução.
- approximation_degree (float | None) – Botão heurístico utilizado para a aproximação do circuito, em que
1.0significa que não há aproximação (dentro da tolerância numérica) e0.0significa a aproximação máxima. Setargetestiver disponível, um valor deNoneindica que é permitida uma aproximação até a taxa de erro relatada para uma operação no destino. - seed_transpiler (int | None) – Define uma semente aleatória para as partes estocásticas do transpiler.
- timing_constraints (TimingConstraints | None) – Restrições de alinhamento temporal do hardware.
- unitary_synthesis_method (str) – O método de string a ser usado para a
UnitarySynthesispassagem. Procurará um método válido nos plugins instalados. Você pode ver uma lista dos plugins instalados comunitary_synthesis_plugin_names(). - unitary_synthesis_plugin_config (dict | None) – O dicionário de configuração que será passado ao plug-in de síntese unitária especificado. Consulte a documentação do plugin para saber como usá-lo.
- target (Target | None) – O destino do backend
- hls_config (HLSConfig | None) – Uma classe de configuração opcional a ser usada para
HighLevelSynthesisopass. Especifica como sintetizar diversos objetos de alto nível. - init_method (str | None) – O nome do plug-in a ser utilizado na fase de inicialização
- optimization_method (str | None) – O nome do plug-in a ser utilizado na etapa de otimização.
- qubits_initially_zero (bool) – Indica se o circuito de entrada foi inicializado com zero.
Métodos
from_backend
classmethod from_backend(backend, _skip_target=False, **pass_manager_options)
Crie uma configuração com base no backend e nas informações fornecidas pelo usuário.
Este método gera automaticamente um objeto PassManagerConfig com base nas funcionalidades do backend. As opções do usuário podem ser usadas para substituir a configuração.
Parâmetros
- backend (BackendV2) – O backend que fornece a configuração.
- pass_manager_options – Pares de opções e valores definidos pelo usuário.
Retorna
A configuração gerada com base nos argumentos.
Tipo de retorno
Aumentos
AttributeError – Se o backend não suportar um método configuration().