QmSaasProvider

class QmSaasProvider(email: str | None = None, password: str | None = None, host: str | None = None, version: str | None = None)[source][source]

Bases: object

Provider for the Quantum Machines SaaS simulation platform.

Connects to the QM SaaS cloud to simulate QUA programs. Like QMProvider, users should supply their own quam_cls and backend_cls to match their hardware.

Requires the qm_saas extras (pip install qiskit-qm-provider[qm_saas]).

Parameters:
  • email – QM SaaS account email.

  • password – QM SaaS account password.

  • host – QM SaaS platform host URL.

  • version – QOP version string (defaults to the latest available).

get_machine(quam_state_folder_path: str | None = None, quam_cls: Type[QuamRoot] | None = None) QuamRoot[source][source]

Load a QuAM machine.

Parameters:
  • quam_state_folder_path – Path to the QuAM state folder.

  • quam_clsQuamRoot subclass. Falls back to FluxTunableQuam from quam-builder when omitted, but users are encouraged to provide their own.

Returns:

The loaded QuAM machine instance.

get_backend(quam_state_folder_path: str | None = None, simulation_config: SimulationConfig | None = None, quam_cls: Type[QuamRoot] | None = None, backend_cls: Type[QMBackend] | None = None) QMBackend[source][source]

Create a backend connected to a SaaS simulator instance.

Parameters:
  • quam_state_folder_path – Path to the QuAM state folder.

  • simulation_config – Simulation configuration (defaults to 10 000 clock cycles).

  • quam_clsQuamRoot subclass for the machine.

  • backend_clsQMBackend subclass to instantiate. Defaults to the base QMBackend; pass e.g. FluxTunableTransmonBackend or a custom subclass to match your hardware.

Returns:

A QMBackend instance connected to the SaaS simulator.

property client: QmSaas

The underlying QmSaas client.

property version: QOPVersion

The QOP version used by this provider.

property instance: QmSaasInstance

The active SaaS simulator instance.

close_all()[source][source]

Close all SaaS instances and QuantumMachinesManager connections.

spawn()[source][source]

Spawn a new SaaS simulator instance.