Skip to content

Provider

Circuit providers that supply pre-built or parameterized circuits.

Providers expose external circuit libraries (e.g., benchmark suites, standard tests) with a simple interface: list available circuits and retrieve them by name. Each provider must define a unique name identifier.

CircuitProvider

Bases: ABC

Abstract interface for circuit providers.

Subclasses must define the name class attribute (unique string identifier). The __init_subclass__ hook validates this at class definition time.

Key methods: - list_available(): returns list of circuit names provided by this source. - get_circuit(): returns a circuit object for the given name and parameters.

get_circuit abstractmethod

get_circuit(
    circuit_name: str, params: Dict[str, Any]
) -> Any

Get a circuit by name with the given parameters.

list_available abstractmethod

list_available() -> List[str]

List available circuit names from this provider.