iqm.iqm_client.iqm_client.RunRequest#

class iqm.iqm_client.iqm_client.RunRequest(*, circuits, custom_settings=None, calibration_set_id=None, qubit_mapping=None, shots, max_circuit_duration_over_t2=None, heralding_mode=HeraldingMode.NONE)#

Bases: BaseModel

Request for an IQM quantum computer to run a job that executes a batch of quantum circuits.

Note: all circuits in a batch must measure the same qubits otherwise batch execution fails.

Attributes

model_computed_fields

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

circuits

batch of quantum circuit(s) to execute

custom_settings

Custom settings to override default IQM hardware settings and calibration data.

calibration_set_id

ID of the calibration set to use, or None to use the latest calibration set

qubit_mapping

mapping of logical qubit names to physical qubit names, or None if using physical qubit names

shots

how many times to execute each circuit in the batch, must be greater than zero

max_circuit_duration_over_t2

Circuits are disqualified on the server if they are longer than this ratio of the T2 time of the qubits.

heralding_mode

which heralding mode to use during the execution of circuits in this request.

Methods

Parameters:
circuits: CircuitBatch#

batch of quantum circuit(s) to execute

custom_settings: dict[str, Any] | None#

Custom settings to override default IQM hardware settings and calibration data. Note: This field should be always None in normal use.

calibration_set_id: UUID | None#

ID of the calibration set to use, or None to use the latest calibration set

qubit_mapping: list[SingleQubitMapping] | None#

mapping of logical qubit names to physical qubit names, or None if using physical qubit names

shots: int#

how many times to execute each circuit in the batch, must be greater than zero

max_circuit_duration_over_t2: float | None#

Circuits are disqualified on the server if they are longer than this ratio of the T2 time of the qubits. If set to 0.0, no circuits are disqualified. If set to None the server default value is used.

heralding_mode: HeraldingMode#

which heralding mode to use during the execution of circuits in this request.

model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'calibration_set_id': FieldInfo(annotation=Union[UUID, NoneType], required=False, default=None), 'circuits': FieldInfo(annotation=list[Circuit], required=True), 'custom_settings': FieldInfo(annotation=Union[dict[str, Any], NoneType], required=False, default=None), 'heralding_mode': FieldInfo(annotation=HeraldingMode, required=False, default=<HeraldingMode.NONE: 'none'>), 'max_circuit_duration_over_t2': FieldInfo(annotation=Union[float, NoneType], required=False, default=None), 'qubit_mapping': FieldInfo(annotation=Union[list[SingleQubitMapping], NoneType], required=False, default=None), 'shots': FieldInfo(annotation=int, required=True, metadata=[Gt(gt=0)])}#

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.