mqt.core.plugins.qiskit.provider¶
QDMI Provider for Qiskit integration.
This module provides a provider interface for discovering and accessing QDMI devices through Qiskit’s BackendV2 interface.
Module Contents¶
- class QDMIProvider¶
Provider for registered QDMI devices.
This provider discovers registered QDMI devices lazily and adapts Qiskit-compatible devices as backends.
Examples
List all available backends:
>>> from mqt.core.plugins.qiskit import QDMIProvider >>> provider = QDMIProvider() >>> for backend in provider.backends(): ... print(f"{backend.name}: {backend.target.num_qubits} qubits")
Get a specific backend by name:
>>> backend = provider.get_backend("MQT Core DDSIM QDMI Device")
Configure credentials through the selected device’s persistent configuration or provider-specific environment.
- backends(name: str | None = None) list[QDMIBackend]¶
Return all available backends, optionally filtered by name substring.
- Parameters:
name – If provided, return only backends whose name contains this substring.
- Returns:
Compatible QDMI backends. The list is empty when no name matches.
Examples
Get all backends:
>>> provider = QDMIProvider() >>> all_backends = provider.backends()
Filter backends by name substring:
>>> ddsim_backends = provider.backends(name="DDSIM") >>> qdmi_backends = provider.backends(name="QDMI")
- get_backend_by_device_id(device_id: str, **session_parameters: Unpack[QDMISessionParameters]) QDMIBackend¶
Open one fresh backend for an exact stable QDMI device ID.
- Returns:
A backend for a fresh device session.
- get_backend(name: str) QDMIBackend¶
Get a single backend by name.
- Parameters:
name – Name of the backend to retrieve.
- Returns:
The matching QDMI backend.
- Raises:
ValueError – If no matching backend found.
Examples
Get a specific backend:
>>> provider = QDMIProvider() >>> backend = provider.get_backend("MQT Core DDSIM QDMI Device")