Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplo: enviar una tarea cuántica a una QPU
Amazon Braket permite ejecutar un circuito cuántico en un dispositivo QPU. El siguiente ejemplo muestra cómo enviar una tarea cuántica a nuestros dispositivosRigetti. IonQ
Elige el Rigetti Ankaa-3 dispositivo y, a continuación, mira el gráfico de conectividad asociado
# import the QPU module from braket.aws import AwsDevice # choose the Rigetti device device = AwsDevice("arn:aws:braket:us-west-1::device/qpu/rigetti/Ankaa-3") # take a look at the device connectivity graph device.properties.dict()['paradigm']['connectivity']
{'fullyConnected': False, 'connectivityGraph': {'0': ['1', '7'], '1': ['0', '2', '8'], '2': ['1', '3', '9'], '3': ['2', '4', '10'], '4': ['3', '5', '11'], '5': ['4', '6', '12'], '6': ['5', '13'], '7': ['0', '8', '14'], '8': ['1', '7', '9', '15'], '9': ['2', '8', '10', '16'], '10': ['3', '9', '11', '17'], '11': ['4', '10', '12', '18'], '12': ['5', '11', '13', '19'], '13': ['6', '12', '20'], '14': ['7', '15', '21'], '15': ['8', '14', '22'], '16': ['9', '17', '23'], '17': ['10', '16', '18', '24'], '18': ['11', '17', '19', '25'], '19': ['12', '18', '20', '26'], '20': ['13', '19', '27'], '21': ['14', '22', '28'], '22': ['15', '21', '23', '29'], '23': ['16', '22', '24', '30'], '24': ['17', '23', '25', '31'], '25': ['18', '24', '26', '32'], '26': ['19', '25', '33'], '27': ['20', '34'], '28': ['21', '29', '35'], '29': ['22', '28', '30', '36'], '30': ['23', '29', '31', '37'], '31': ['24', '30', '32', '38'], '32': ['25', '31', '33', '39'], '33': ['26', '32', '34', '40'], '34': ['27', '33', '41'], '35': ['28', '36', '42'], '36': ['29', '35', '37', '43'], '37': ['30', '36', '38', '44'], '38': ['31', '37', '39', '45'], '39': ['32', '38', '40', '46'], '40': ['33', '39', '41', '47'], '41': ['34', '40', '48'], '42': ['35', '43', '49'], '43': ['36', '42', '44', '50'], '44': ['37', '43', '45', '51'], '45': ['38', '44', '46', '52'], '46': ['39', '45', '47', '53'], '47': ['40', '46', '48', '54'], '48': ['41', '47', '55'], '49': ['42', '56'], '50': ['43', '51', '57'], '51': ['44', '50', '52', '58'], '52': ['45', '51', '53', '59'], '53': ['46', '52', '54'], '54': ['47', '53', '55', '61'], '55': ['48', '54', '62'], '56': ['49', '57', '63'], '57': ['50', '56', '58', '64'], '58': ['51', '57', '59', '65'], '59': ['52', '58', '60', '66'], '60': ['59'], '61': ['54', '62', '68'], '62': ['55', '61', '69'], '63': ['56', '64', '70'], '64': ['57', '63', '65', '71'], '65': ['58', '64', '66', '72'], '66': ['59', '65', '67'], '67': ['66', '68'], '68': ['61', '67', '69', '75'], '69': ['62', '68', '76'], '70': ['63', '71', '77'], '71': ['64', '70', '72', '78'], '72': ['65', '71', '73', '79'], '73': ['72', '80'], '75': ['68', '76', '82'], '76': ['69', '75', '83'], '77': ['70', '78'], '78': ['71', '77', '79'], '79': ['72', '78', '80'], '80': ['73', '79', '81'], '81': ['80', '82'], '82': ['75', '81', '83'], '83': ['76', '82']}}
El diccionario anterior connectivityGraph
muestra los cúbits vecinos de cada qubit del Rigetti dispositivo.
Elija el dispositivo IonQ Aria-1
En el IonQ Aria-1 caso del dispositivo, connectivityGraph
está vacío, como se muestra en el siguiente ejemplo, porque el dispositivo ofrece all-to-allconectividad. Por lo tanto, no connectivityGraph
es necesario detallarlo.
# or choose the IonQ Aria-1 device device = AwsDevice("arn:aws:braket:us-east-1::device/qpu/ionq/Aria-1") # take a look at the device connectivity graph device.properties.dict()['paradigm']['connectivity']
{'fullyConnected': True, 'connectivityGraph': {}}
Como se muestra en el siguiente ejemplo, tiene la opción de ajustar la ubicación shots (por defecto = 1000), poll_timeout_seconds
(por defecto = 432000 = 5 días), poll_interval_seconds
(por defecto = 1) y la ubicación del depósito de S3 (s3_location
) en la que se almacenarán los resultados si decide especificar una ubicación distinta del depósito predeterminado.
my_task = device.run(circ, s3_location = 'amazon-braket-my-folder', shots=100, poll_timeout_seconds = 100, poll_interval_seconds = 10)
RigettiLos dispositivos IonQ y compilan automáticamente el circuito proporcionado en sus respectivos conjuntos de puertas nativas y asignan los qubit índices abstractos a físicos qubits en la QPU respectiva.
nota
Los dispositivos QPU tienen una capacidad limitada. Puede esperar tiempos de espera más largos cuando se alcance la capacidad.
Amazon Braket puede ejecutar tareas cuánticas de QPU dentro de determinados períodos de disponibilidad, pero puede enviar tareas cuánticas en cualquier momento (24 horas al día, 7 días a la semana), ya que todos los datos y metadatos correspondientes se almacenan de forma fiable en el depósito S3 correspondiente. Como se muestra en la siguiente sección, puede recuperar su tarea cuántica utilizando AwsQuantumTask
un identificador único de tarea cuántica.