Source code for braket.aws.queue_information

# Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You
# may not use this file except in compliance with the License. A copy of
# the License is located at
#
#     http://aws.amazon.com/apache2.0/
#
# or in the "license" file accompanying this file. This file is
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
# ANY KIND, either express or implied. See the License for the specific
# language governing permissions and limitations under the License.

from dataclasses import dataclass
from enum import Enum
from typing import Optional


[docs] class QueueType(str, Enum): """Enumerates the possible priorities for the queue. Values: NORMAL: Represents normal queue for the device. PRIORITY: Represents priority queue for the device. """ NORMAL = "Normal" PRIORITY = "Priority"
[docs] @dataclass() class QueueDepthInfo: """Represents quantum tasks and hybrid jobs queue depth information. Attributes: quantum_tasks (dict[QueueType, str]): number of quantum tasks waiting to run on a device. This includes both 'Normal' and 'Priority' tasks. For Example, {'quantum_tasks': {QueueType.NORMAL: '7', QueueType.PRIORITY: '3'}} jobs (str): number of hybrid jobs waiting to run on a device. Additionally, for QPUs if hybrid jobs queue depth is 0, we display information about priority and count of the running hybrid jobs. Example, 'jobs': '0 (1 prioritized job(s) running)' """ quantum_tasks: dict[QueueType, str] jobs: str
[docs] @dataclass class QuantumTaskQueueInfo: """Represents quantum tasks queue information. Attributes: queue_type (QueueType): type of the quantum_task queue either 'Normal' or 'Priority'. queue_position (Optional[str]): current position of your quantum task within a respective device queue. This value can be None based on the state of the task. Default: None. message (Optional[str]): Additional message information. This key is present only if 'queue_position' is None. Default: None. """ queue_type: QueueType queue_position: Optional[str] = None message: Optional[str] = None
[docs] @dataclass class HybridJobQueueInfo: """Represents hybrid job queue information. Attributes: queue_position (Optional[str]): current position of your hybrid job within a respective device queue. If the queue position of the hybrid job is greater than 15, we return '>15' as the queue_position return value. The queue_position is only returned when hybrid job is not in RUNNING/CANCELLING/TERMINAL states, else queue_position is returned as None. message (Optional[str]): Additional message information. This key is present only if 'queue_position' is None. Default: None. """ queue_position: Optional[str] = None message: Optional[str] = None