Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Al trabajar con el servicio Azure Quantum, puede encontrarse con estos problemas comunes. Vea cómo puede resolverlos.
Conexión al área de trabajo
Problema: No se puede autenticar en Azure Quantum mediante pytket-azure CI
Al intentar autenticarse en Azure Quantum a través del pytket-azure
paquete en un entorno de CI mediante las variables de entorno "AZURE_TENANT_ID", "AZURE_CLIENT_ID" y "AZURE_CLIENT_SECRET", puede producirse el error:
Code: InsufficientPermissions
Message: There are not enough permissions to perform this operation.
Para resolver este problema, intente autenticarse usando una cadena de conexión y la variable de entorno "AZURE_QUANTUM_CONNECTION_STRING" en su lugar. Para obtener más información, consulte Conexión con una cadena de conexión.
connection_string = "[Copy connection string]"
import os
os.environ["AZURE_QUANTUM_CONNECTION_STRING"] = connection_string
Envío de trabajos
Problema: Falta targets
Si el target en el que quieres ejecutar tu trabajo no aparece en la lista disponible de target, probablemente necesites actualizar a la versión más reciente del Quantum Development Kit (QDK) para Visual Studio Code. Para obtener más información, consulte Actualización del QDK.
Problema: la operación ha devuelto un código de estado "No autorizado" no válido
Pasos para resolver este problema:
Abra Azure Portal (https://portal.azure.com) y autentique su cuenta.
En Navegar, seleccione Suscripciones y seleccione su suscripción.
Seleccione Control de acceso (IAM).
En Comprobar acceso, busque su dirección de correo electrónico y seleccione la cuenta.
En la lista no deberían aparecer los roles Propietario o Colaborador.
Seleccione la pestaña Asignaciones de roles.
Nota:
Si no aparece la pestaña Asignaciones de roles, es posible que tenga que expandir el portal a pantalla completa o cerrar el panel Asignaciones de <su nombre>.
Seleccione la lista desplegable Rol , seleccione Propietario o Colaborador y escriba la dirección de correo electrónico y seleccione su cuenta.
Seleccione Guardar.
Ahora debería aparecer su cuenta configurada con el rol Propietario o Colaborador.
Vuelva a crear el área de trabajo de Azure Quantum y, a continuación, envíe un trabajo para esta nueva área de trabajo.
Problema: "AuthorizationFailure: esta solicitud no está autorizada para realizar esta operación"
Si se produce un error en el envío de un trabajo con este mensaje aunque tenga una conexión válida al servicio Azure Quantum, es posible que la cuenta de almacenamiento esté configurada para bloquear el acceso a la red pública. El servicio Azure Quantum solo admite cuentas de almacenamiento a través del acceso público a Internet.
Para comprobar la cuenta de almacenamiento:
- En la página área de trabajo cuántica de Azure Portal, seleccione Información general y seleccione la cuenta de almacenamiento.
- En la página de la cuenta de almacenamiento, en Seguridad y redes, seleccione Redes.
- En la pestaña Firewalls y redes virtuales del acceso a la red pública, asegúrese de que la opción Habilitar todas las redes está seleccionada.
Problema: mensaje de error "No se ha podido compilar el programa" al intentar enviar un programa de Q# a través de la CLI
Al intentar enviar un trabajo en el símbolo del sistema mediante el comando az quantum submit
, puede que se muestre el siguiente mensaje de error:
az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)
Este error se produce cuando hay un problema con el programa Q# que hace que se produzca un error en la compilación.
Problema: Error del compilador "Número incorrecto de parámetros de puerta"
Al enviar un trabajo a Quantinuum desde un entorno local de Jupyter Notebook o de línea de comandos, y mediante el traductor de QASM (OPENQASM 2.0) heredado, puede producirse este error:
Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters
Este error se produce cuando se usa una coma "," u otro carácter que no sea de punto como separador decimal, como es habitual en muchos idiomas. Reemplace los separadores decimales que no son de período por puntos "."".
// replace this line:
rx(1,5707963267948966) q[0];
// with this:
rx(1.5707963267948966) q[0];
Nota:
Este problema no se produce en cuadernos hospedados en el portal de Azure Quantum, solo en entornos de desarrollo local.
Problema: Error del compilador "no disponible para la configuración de compilación actual"
Al ejecutar una celda de código de Q# en un cuaderno de Jupyter Notebook en VS Code, es posible que encuentre el error:
<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration
Este error indica que el perfil de target QIR (representación intermedia cuántica) está establecido en básico y la función en cuestión requiere el perfil sin restriccionestarget. Para establecer el target perfil en Sin restricciones:
- Mientras se encuentra en su programa de Q# de VS Code, seleccione Q#: QIR base en la barra de estado inferior.
- En las opciones que se muestran en la barra de estado superior, seleccione Q#: sin restricciones.
Problema: la operación ha devuelto un código de estado "Prohibido" no válido
Cuando envíe su primer trabajo, puede obtener un código de "error prohibido".
Este problema puede producirse durante la creación de un área de trabajo si Azure Quantum no puede completar la asignación de roles que vincula la nueva área de trabajo a la cuenta de almacenamiento que se ha especificado. Un escenario típico para esta situación se produce si la pestaña o la ventana del explorador web se cierra antes de que se complete la creación del área de trabajo.
Puede verificar que está encontrando este problema de asignación de roles siguiendo estos pasos:
- Vaya a la nueva área de trabajo cuántica en Azure Portal.
- En Información general>Elementos esenciales>Cuenta de almacenamiento, seleccione el vínculo de la cuenta de almacenamiento.
- En el panel de navegación izquierdo, seleccione Control de acceso (IAM) .
- Seleccione Asignaciones de roles.
- Compruebe que el área de trabajo aparezca como Colaborador.
- Si el área de trabajo no aparece como Colaborador, tiene una de las opciones siguientes:
- Cree un área de trabajo y asegúrese de que se haya completado el proceso de creación antes de cerrar la pestaña o ventana del explorador web.
- Añada la asignación de roles adecuada en la cuenta de almacenamiento
- Control de acceso (IAM) > Agregar asignación de roles
- Rol > Colaborador
- Asignar acceso a > usuario, grupo o entidad de servicio
- Seleccionar > [nombre del área de trabajo]
- Guardar
Problema: El trabajo falla con el código de error: QIRPreProcessingFailed
Al enviar un trabajo a un proveedor de Rigetti, se produce un error en el trabajo y se notifica en la consola de administración de trabajos en Azure Portal:
Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled
Este error puede deberse a un conflicto de dependencia con una versión anterior de pyqir o qiskit-qir. Desinstale todas las versiones de pyqir, pyqir-*y qiskit-qir en la máquina local y, a continuación, instale o actualice el paquete de Python de azure-quantum mediante el parámetro [qiskit]:
pip install --upgrade azure-quantum[qiskit]
Problema: Recuperación de información básica sobre trabajos con errores
Después de enviar un trabajo a un hardware target, el trabajo puede estar en la cola durante varias horas, o incluso uno o dos días, antes de que se produzca un error.
Para recuperar más información sobre el error:
- Para ver la salida o el mensaje de error devuelto, use el método
get_results()
con el objeto job:
job.get_results()
- En el área de trabajo de Azure Portal, seleccione > operaciones) y, a continuación, seleccione el nombre del trabajo para abrir un panel de detalles.
- En el área de trabajo de Azure Portal, seleccione Operaciones > Proveedores. Verificar la disponibilidad de la máquina target. Los trabajos enviados a targets con un estado de Degradado pueden permanecer en la cola durante más tiempo de lo habitual. A veces, los trabajos se procesan, pero a veces agotan el tiempo de espera y devuelven un error de target no disponible.
Problema: Se me pide autenticarme al conectarme de forma programática a mi área de trabajo.
Si está usando el SDK de Python de Azure Quantum, por ejemplo, dentro de Jupyter Notebook, y se está conectando a su espacio de trabajo usando la clase AzureQuantumProvider
, puede ver una ventana emergente para autenticarse en Azure cada vez que ejecute su script.
Este ventana emergente se produce porque el token de seguridad se restablece cada vez que usted ejecuta el script.
Para resolver este problema, ejecute az login
mediante la CLI de Azure. Para obtener más información, consulte az login.
Problema: Después de actualizar el paquete azure-quantum, obtengo el error "ModuleNotFoundError: no hay ningún módulo denominado qiskit.tools" al supervisar un trabajo.
A partir de Qiskit 1.0, el módulo qiskit.tools
, que es necesario para la función job_monitor()
, está en desuso. Para supervisar los trabajos, use las funciones wait_for_final_state()
o result
.
job = MyTarget.run(circuit, shots=100)
# to wait until the job is complete
job.wait_for_final_state()
# to return the results of the job
result = job.result()
Estimador de recursos de Azure Quantum
Los siguientes escenarios comunes pueden impedir que se completen los trabajos de estimación de recursos. Vea cómo resolverlos.
Problema: El algoritmo cuántico debe contener al menos un estado T o una medida
Para tener en cuenta la asignación de un programa cuántico arbitrario a una matriz 2D de cúbits lógicos, el estimador de recursos asume que Cálculo Secuencial de Síntesis Paralela Pauli (PSSPC) se realiza en el programa de entrada. En ese enfoque, todas las operaciones de Clifford se conmutan a través de todas las puertas T, las puertas de rotación y las operaciones de medición, dejando una sola operación Clifford que se puede evaluar clásicamente de forma eficaz. Por lo tanto, un programa cuántico que no contiene estados T, por ejemplo de puertas T o puertas de rotación, o operaciones de medición no requiere ningún recurso físico de computación cuántica. Para obtener más información sobre el cálculo secuencial de síntesis paralela de Pauli, vea arXiv:2211.07629, Apéndice D.
Error message: Algorithm requires at least one T state or measurement to estimate resources
Problema: La tasa de errores de puerta T física es demasiado alta
La tasa de errores de estado T lógico depende del presupuesto de errores y del número de estados T del programa cuántico. Los generadores de T se usan para crear estados T con la tasa de errores de estado T lógico necesaria a partir de puertas T físicas , que tienen una tasa de errores de puerta T física . Normalmente, la tasa de errores de puerta T física es mayor que la tasa de errores de puerta T lógica necesaria. En algunos escenarios, la tasa de errores de puerta T física es significativamente mayor en comparación con la tasa de errores de estado T lógico necesaria, de modo que no se puede encontrar ningún generador de T que pueda producir estados T lógicos de calidad suficiente.
Error message: No T factory can be found, because the required logical T state error rate is too low
Esto es lo que podría hacer en este escenario:
- Aumente el presupuesto de errores, ya sea total o en la parte correspondiente a los estados T.
- Reducir la tasa de errores de puerta T física en los parámetros de los cúbits.
- Reduzca el número de estados T en el programa cuántico reduciendo las puertas T, las puertas de rotación y las puertas toffoli.
Problema: La tasa de errores de puerta T física es demasiado baja
También hay el escenario opuesto, en el que la tasa de errores de puerta T física es inferior a la tasa de errores de estado T lógico necesaria. En tales casos, no se requiere ningún generador de T, ya que la tasa de errores de puerta T física ya es de calidad suficiente. Sin embargo, este escenario requiere una consideración cuidadosa del impacto de las unidades de transferencia que transfieren los estados T físicos desde la distancia del código 1 hasta la distancia de código del algoritmo (vea arXiv:2211.07629, Apéndice C). En general, en presencia de fábricas tipo T, el costo de las unidades de transferencia es insignificante.
Error message: No T factory can be found, because the required logical T state error rate is too high; transfer units are necessary to perform a resource estimation accurately. One possibility to circumvent this problem is to increase the physical T gate error rate of the qubit parameters.
Esto es lo que podría hacer en este escenario:
- Aumente la tasa de errores de la puerta física T en los parámetros del cúbit a la tasa de errores del estado lógico T necesaria.
- Reduzca el margen de error o solo la parte de los estados T.
Problema: La tasa de errores debe ser un número entre 0 y 1
Las tasas de error siempre deben ser valores entre 0 y 1. Además, para que la corrección de errores sea efectiva, la tasa de errores física para las puertas y las medidas debe estar por debajo de un valor que dependa de las propiedades del código de corrección de errores y de la tasa de errores lógica necesaria.
Esto es lo que podría hacer en este escenario:
- Aumente el presupuesto de errores, ya sea total o la parte para los errores lógicos.
- Reduzca las tasas de errores físicos en los parámetros de cúbit.
Problema: Las restricciones del tiempo de ejecución máximo y el número máximo de cúbits físicos son mutuamente excluyentes
El estimador de recursos solo acepta una de las restricciones maxDuration
o maxPhysicalQubits
a la vez, pero no dos. Si proporciona restricciones maxDuration
y maxPhysicalQubits
para un único trabajo, devuelve el BothDurationAndPhysicalQubitsProvided
error.
Problema: Ejecución del contenedor de recuentos de estimación de QIR: símbolo no definido __quantum__rt__result_record_output
Este error resulta de generar QIR para circuitos Qiskit a través del paquete de Python qiskit_qir sin establecer el parámetro record_output
a False
.
Para evitar este error, realice una de las siguientes acciones:
- Use el paquete de Python de azure_quantum para enviar circuitos Qiskit a Azure Quantum (recomendado).
- Al utilizar el paquete qiskit_qir de Python package, asegúrese de establecer el parámetro
record_output
parameter toFalse
antes de enviar su circuito.
Creación de un área de trabajo de Azure Quantum
Los siguientes problemas pueden producirse al usar Azure Portal para crear un área de trabajo.
Problema: no se puede acceder al formulario de creación del área de trabajo en Azure Portal; Se le pide que se registre en una suscripción en su lugar.
Este problema se produce porque no tiene una suscripción activa.
Por ejemplo, es posible que se haya registrado en la suscripción gratuita de evaluación gratuita de 30 días de Azure, que incluye créditos de Azure gratuitos de USD200 para usarlos en los servicios de Azure. Estos créditos de Azure no son aptos para usarse en proveedores de hardware cuántico. Después de 30 días de registro o una vez que consuma los 200 $ de créditos gratuitos de Azure (lo que ocurra primero), debe actualizar a una suscripción de pago por uso para seguir usando los servicios de Azure Quantum. Una vez que tenga una suscripción activa, Azure Portal le permite acceder al formulario de creación del área de trabajo.
Para ver una lista de las suscripciones y los roles asociados, consulte Comprobación de las suscripciones.
Problema: La opción Creación rápida no está disponible
Debe ser propietario de la suscripción que seleccione para poder usar la opción Creación rápida. Para ver una lista de las suscripciones y los roles asociados, consulte Comprobación de las suscripciones. Si es colaborador de la suscripción, puede usar la opción Creación avanzada para crear un área de trabajo.
Problema: No se puede crear o seleccionar un grupo de recursos o una cuenta de almacenamiento
Este problema se produce porque no tiene la autorización necesaria en el nivel de suscripción, grupo de recursos o cuenta de almacenamiento. Para obtener más información sobre los niveles de acceso necesarios, consulte Requisitos de rol para crear un área de trabajo.
Problema: aparece el mensaje de error "Error de validación de implementación" después de seleccionar Crear.
Este mensaje de error puede incluir más detalles, como "El cliente no tiene autorización para realizar la acción".
Este problema se produce porque no tiene la autorización necesaria en el nivel de suscripción, grupo de recursos o cuenta de almacenamiento. Para obtener más información sobre los niveles de acceso necesarios, consulte Requisitos de rol para crear un área de trabajo.
Si se concedió el acceso recientemente, es posible que tenga que actualizar la página. A veces, las nuevas asignaciones de roles pueden tardar hasta una hora en surtir efecto sobre los permisos almacenados en caché a lo largo del sistema.
Problema: no ve un proveedor de hardware cuántico específico en la pestaña Proveedores
Este problema se produce porque el proveedor no admite la región de facturación en la que está establecida la suscripción. Por ejemplo, si la suscripción está establecida en Israel, la pestaña Proveedores no enumera Rigetti como proveedor disponible. Para obtener una lista de proveedores y su disponibilidad por país o región, consulte Disponibilidad global de proveedores de Azure Quantum.
Problema: Fallo en la creación del área de trabajo o al añadir/eliminar proveedores con "ResourceDeploymentFailure" o "ProviderDeploymentFailure".
Este problema puede incluir más detalles, como "ResourceDeploymentFailure: la operación de recurso 'AzureAsyncOperationWaiting' se completó con el estado de aprovisionamiento terminal 'Fallido'", o "ProviderDeploymentFailure: error al crear el plan para el proveedor: <Nombre del proveedor>".
Este error se produce porque el inquilino no habilitó las compras de Azure Marketplace. Siga los pasos descritos en Habilitación de las compras de Azure Marketplace para habilitar las compras de Azure Marketplace.
Problema: la implementación de un área de trabajo cuántica o la implementación de una cuenta de almacenamiento produce uno de los siguientes errores:
- Área de trabajo: "La operación de escritura de recursos no se pudo completar correctamente, porque alcanzó el estado de aprovisionamiento de terminal 'Failed'".
- Cuenta de almacenamiento: "Error en la implementación de la plantilla debido a una infracción de directiva".
Este problema puede producirse si la directiva de seguridad de la suscripción bloquea la creación de cuentas de almacenamiento que tienen habilitado el acceso público. El servicio Azure Quantum solo admite cuentas de almacenamiento a través del acceso público a Internet.
Para resolverlo, trabaje con el administrador de la suscripción para obtener una excepción para la cuenta de almacenamiento que desea usar.
Portal de Azure Quantum
Problema: Los cuadernos guardados no se cargan
Después de seleccionar Cuadernos en el área de trabajo, la lista de los cuadernos guardados muestra una barra de progreso, pero nunca se carga.
Este escenario puede ocurrir por tres razones:
Si la cuenta de almacenamiento ya no existe. Esto puede ocurrir si se eliminó la cuenta de almacenamiento vinculada al área de trabajo. Para comprobarlo, seleccione la página Información general del área de trabajo y seleccione el vínculo a la cuenta de almacenamiento. Si se ha eliminado la cuenta de almacenamiento, verá un error 404: No encontrado.
Si la cuenta de almacenamiento no está habilitada para el acceso público a Internet. Consulte Error de autorización para obtener más información.
Si la identidad administrada del área de trabajo no es un Colaborador en la cuenta de almacenamiento. Compruebe que la identidad del área de trabajo (que utiliza el mismo nombre que el área de trabajo) todavía tiene la asignación de rol de Colaborador en la cuenta de almacenamiento. Para comprobarlo, seleccione la página Información general del área de trabajo y seleccione el vínculo a la cuenta de almacenamiento. En la página Información general de la cuenta de almacenamiento, seleccione Control de acceso (IAM) y compruebe que el área de trabajo aparece en Colaborador.