qbraid.runtime.oqc.OQCDevice

class OQCDevice(profile, client)[source]

Device class for OQC devices.

Create a QuantumDevice object.

Parameters:
  • profile (TargetProfile) – The device runtime profile.

  • scheme (Optional[ConversionScheme]) – The conversion graph and options passed to the transpiler at runtime.

  • options (Optional[RuntimeOptions]) – Custom options to control the runtime behavior. Adds fields or overrides default values for transpile, transform, and validate. Note that while you can modify these values, their associated validators are fixed and cannot be changed.

__init__(profile, client)[source]

Create a QuantumDevice object.

Parameters:
  • profile (TargetProfile) – The device runtime profile.

  • scheme (Optional[ConversionScheme]) – The conversion graph and options passed to the transpiler at runtime.

  • options (Optional[RuntimeOptions]) – Custom options to control the runtime behavior. Adds fields or overrides default values for transpile, transform, and validate. Note that while you can modify these values, their associated validators are fixed and cannot be changed.

Methods

__init__(profile, client)

Create a QuantumDevice object.

apply_runtime_profile(run_input)

Process quantum program before passing to device run method.

avg_queue_time()

Return the average time (in seconds) a job spends in the queue for the device.

get_next_window()

Returns the start time of the next active window for the device.

metadata()

Returns a dictionary containing selected metadata about the device.

queue_depth()

Returns the number of tasks in the queue for the device.

run(run_input, *args, **kwargs)

Run a quantum job or a list of quantum jobs on this quantum device.

set_options(**fields)

Update the runtime options for the QuantumDevice.

status()

Returns the status of the device.

submit(run_input, **kwargs)

Submit one or more jobs to the device.

to_ir(run_input)

Convert the quantum program to an intermediate representation (IR) compatible with the submission format required for the target device and its provider API.

transform(run_input)

Transforms the input program before submitting it to the device.

transpile(run_input, run_input_spec)

Convert circuit to package compatible with target device and pass through any provider transpile methods to match topology of device and/or optimize as applicable.

update_scheme(**kwargs)

Update the conversion scheme with new values.

validate(run_input_batch[, ...])

Verifies run input compatibility with target device.

Attributes

client

Returns the client for the device.

id

Return the device ID.

num_qubits

The number of qubits supported by the device.

profile

Return the runtime profile.

scheme

Return the conversion scheme.

simulator

The device type, Simulator, Fake_device or QPU.