IQMClient

class IQMClient

Bases: QuantumBaseClient[AlgoType, BraketJobMeta, QiskitCircuit]

Client that executes quantum circuits on IQM hardware via Amazon Braket.

Connects to IQM superconducting devices through the Amazon Braket service and runs circuits on the specified device. Accepts any algorithm conforming to QuantumAlgoProtocol via the algo parameter.

Methods

__init__

Initialize an IQMClient.

solve

Call the solver service to solve the given optimization problem.

version

Return the backend version string.

Attributes

acceptable_degrees

Polynomial degrees accepted by the algorithm for the objective and constraints.

algo

The algorithm class used by this client.

device

Name of the target IQM device.

provider

Provider used to connect to the IQM device.

parameters

Algorithm parameters instance.

__init__(
algo: type[AlgoType],
device: str = 'Garnet',
provider: AwsSession | None = None,
) None

Initialize an IQMClient.

Parameters:
  • algo (type[AlgoType]) – The algorithm class to use (e.g., QAOA).

  • device (str) – Name or ARN of the IQM device. Defaults to the first non-underscore member of braket.devices.Devices.IQM.

  • provider (AwsSession | None) – Provider used to connect to the IQM device. Currently only Braket connection is supported; set to an braket.aws.AwsSession to configure credentials.

solve(objective: Poly | Matrix, constraints: ConstraintList | None, dry_run: bool = False) CustomClientResultProtocol | None

Call the solver service to solve the given optimization problem.

Parameters:
  • objective (Poly | Matrix) – The objective function to minimize.

  • constraints (ConstraintList | None) – Constraints for the problem. If None, no constraints are applied.

  • dry_run (bool) – If True, validate inputs without executing circuits and return None.

Returns:

The algorithm result, or None if dry_run is True.

Return type:

CustomClientResultProtocol | None

version() str

Return the backend version string.

property acceptable_degrees: AcceptableDegrees

Polynomial degrees accepted by the algorithm for the objective and constraints.

property algo: type[AlgoType]

The algorithm class used by this client.

property device: str

Name of the target IQM device.

parameters

Algorithm parameters instance. The concrete type depends on the algorithm; for QAOA this is QAOA.Parameters. Modify this to configure the algorithm before calling solve().

property provider: AwsSession | None

Provider used to connect to the IQM device.

Currently only Braket connection is supported; set to an braket.aws.AwsSession to configure credentials. Set to None to clear configured credentials.