braket.device_schema.ionq.ionq_device_capabilities_v1 module

class braket.device_schema.ionq.ionq_device_capabilities_v1.IonqDeviceCapabilities[source]

Bases: braket.schema_common.schema_base.BraketSchemaBase, braket.device_schema.device_capabilities.DeviceCapabilities

This defines the capabilities of an IonQ device.

action

Actions that an IonQ device can support

Type:Dict[DeviceActionType, JaqcdDeviceActionProperties]
paradigm

Paradigm properties

Type:GateModelQpuParadigmProperties
provider

IonQ provider specific properties

Type:Optional[IonqProviderProperties]

Examples

>>> import json
>>> input_json = {
...    "braketSchemaHeader": {
...        "name": "braket.device_schema.ionq.ionq_device_capabilities",
...        "version": "1",
...    },
...    "service": {
...        "braketSchemaHeader": {
...            "name": "braket.device_schema.device_service_properties",
...            "version": "1",
...        },
...        "executionWindows": [
...            {
...                "executionDay": "Everyday",
...                "windowStartHour": "09:00",
...                "windowEndHour": "09:05",
...            }
...        ],
...        "shotsRange": [1, 10],
...        "deviceCost": {
...             "price": 0.25,
...             "unit": "minute"
...         },
...         "deviceDocumentation": {
...             "imageUrl": "image_url",
...             "summary": "Summary on the device",
...             "externalDocumentationUrl": "external doc link",
...         },
...         "deviceLocation": "us-east-1",
...         "updatedAt": "2020-06-16T19:28:02.869136"
...    },
...    "action": {
...        "braket.ir.jaqcd.program": {
...            "actionType": "braket.ir.jaqcd.program",
...            "version": ["1"],
...            "supportedOperations": ["x", "y"],
...            "supportedResultTypes": [{
...                 "name": "resultType1",
...                 "observables": ["observable1"],
...                 "minShots": 0,
...                 "maxShots": 4,
...             }],
...        }
...    },
...    "paradigm": {
...        "braketSchemaHeader": {
...            "name": "braket.device_schema.gate_model_qpu_paradigm_properties",
...            "version": "1",
...        },
...        "qubitCount": 11,
...        "nativeGateSet": ["ccnot", "cy"],
...        "connectivity": {
...            "fullyConnected": False,
...            "connectivityGraph": {"1": ["2", "3"]},
...        },
...    },
...    "deviceParameters": {IonqDeviceParameters.schema_json()},
... }
>>> IonqDeviceCapabilities.parse_raw_schema(json.dumps(input_json))

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.