Présentation d’Azure Quantum

Azure Quantum, le service d’informatique quantique cloud d’Azure, contient un ensemble diversifié de solutions et de technologies quantiques. Azure Quantum garantit un parcours ouvert, flexible et évolutif vers l’informatique quantique qui s’adapte à votre façon de travailler, accélère votre progression et protège vos investissements technologiques.

Azure Quantum fournit le meilleur environnement de développement pour créer des algorithmes quantiques ciblant plusieurs plateformes à la fois, tout en offrant la flexibilité nécessaire pour régler les mêmes algorithmes en fonction de systèmes spécifiques. Vous pouvez écrire votre code une seule fois et l’exécuter avec peu ou pas de modifications par rapport à plusieurs cibles de la même famille, ce qui vous permet d’axer la programmation au niveau de l’algorithme.

  • Un écosystème ouvert, qui vous permet d’accéder à divers logiciels, matériels et solutions quantiques de Microsoft et ses partenaires. Vous avez le choix entre plusieurs langages de programmation quantique, comme Qiskit, Cirq et Q#, et vous pouvez exécuter vos algorithmes sur plusieurs systèmes quantiques.
  • Un impact quantique immédiat, vous permettant à la fois d’explorer les systèmes quantiques actuels et de vous préparer aux systèmes quantiques mis à l’échelle du futur, avec des solutions prédéfinies qui fonctionnent sur des ressources de calcul classiques et accélérées (également appelées solutions d’optimisation).

Conseil

Si vous n’avez pas de compte Azure, inscrivez-vous gratuitement et inscrivez-vous à un abonnement avec paiement à l’utilisation. Si vous êtes étudiant, vous pouvez tirer parti d’un compte Azure gratuit pour les étudiants.

Les parties d’Azure Quantum

Avec Azure Quantum, vous pouvez tirer parti des avantages de l’informatique quantique aujourd’hui dans un écosystème cloud ouvert à pile complète avec accès aux logiciels, au matériel et aux solutions prédéfinies. Azure Quantum propose deux types de solutions quantiques : l’informatique quantique et l’optimisation.

Informatique quantique

Si vous avez l’intention de simuler des problèmes mécaniques quantiques, tels que des réactions chimiques, des réactions biologiques ou des formations matérielles, les ordinateurs quantiques fonctionnent particulièrement bien, car ils utilisent des phénomènes quantiques dans leurs calculs. Les ordinateurs quantiques peuvent également aider à accélérer la progression dans divers domaines, tels que les services financiers, le Machine Learning et les recherches de données non structurées, où de nombreux calculs sont nécessaires.

Avec Azure Quantum, les chercheurs et les entreprises peuvent utiliser l’informatique quantique pour modéliser des scénarios complexes en matière de gestion des risques, de cybersécurité, d’analyse de réseau, de recherche de données, de développement de vaccins ou de science des matériaux. Pour en savoir plus sur l’utilisation de l’informatique et des algorithmes quantiques, consultez Fonctionnement de l’informatique quantique.

Optimisation

Des décennies de simulation des effets quantiques sur les ordinateurs classiques ont conduit au développement de nouveaux types de solutions quantiques appelées optimisation d’inspiration quantique. L’optimisation est le processus qui consiste à trouver la meilleure solution à un problème, en prenant en compte les contraintes et le résultat souhaité. Des problèmes d’optimisation complexes existent dans tous les secteurs : le routage des véhicules, la gestion de la chaîne logistique, la planification, l’optimisation du portefeuille, la gestion de la grille de l’alimentation et bien d’autres. La résolution de ces problèmes réels entraîne des avantages importants, tels que des coûts réduits, des processus accélérés ou des risques réduits.

Les algorithmes d’optimisation d’inspiration quantique exploitent certains des avantages de l’informatique quantique sur du matériel classique, ce qui permet d’accélérer les approches traditionnelles.

Azure Quantum vous donne accès à un large éventail d’algorithmes d’optimisation d’inspiration quantique à la pointe de la technologie, développés par Microsoft et ses partenaires. Pour en savoir plus sur les solutions d’optimisation dans Azure Quantum, consultez Qu’est-ce que l’optimisation ?

Comment bien démarrer avec Azure Quantum ?

Conseil

Les utilisateurs pour la première fois obtiennent automatiquement des crédits Azure Quantumgratuits de 500 $ (USD) à utiliser avec chaque fournisseur de matériel quantique participant. Si vous avez consommé tous les crédits et voulez en obtenir davantage, vous pouvez vous inscrire au programme de crédits Azure Quantum.

Commencer à utiliser Azure Quantum est très facile et gratuit pour les nouveaux utilisateurs. Pour soumettre vos programmes quantiques et vos solutions d’optimisation à Azure Quantum, vous n’avez besoin que de deux éléments :

  1. Compte Azure : si vous n’avez pas de compte Azure, inscrivez-vous gratuitement et inscrivez-vous à un abonnement avec paiement à l’utilisation.
  2. Espace de travail Azure Quantum : un espace de travail Azure Quantum est une collection de ressources associées à l’exécution d’applications quantiques ou d’optimisation. Pour créer un espace de travail Azure Quantum, accédez au portail Azure, puis sélectionnez Création rapide, ce qui a pour effet de créer automatiquement l’espace de travail et d’ajouter les fournisseurs par défaut. Vous pouvez également sélectionner Création avancée, puis entrer les détails de votre espace de travail et choisir les fournisseurs.

Pour plus d’informations, consultez Créer un espace de travail Azure Quantum.

Estimation des ressources dans l’informatique quantique

En informatique quantique, l’estimation des ressources est la capacité à comprendre les ressources, c’est-à-dire le nombre de qubits, le nombre de portes quantiques, le temps de traitement, etc., qui seront nécessaires pour un algorithme donné, en supposant (ou en prenant comme paramètres) certaines caractéristiques matérielles. Comprendre le nombre de qubits requis pour une solution quantique et les différences entre les technologies de qubit permet aux innovateurs de préparer et d’affiner leurs solutions quantiques pour qu’elles s’exécutent sur de futures machines quantiques mises à l’échelle et, en fin de compte, accélérer leur impact quantique.

Azure Quantum offre une cible d’estimation des ressources internes qui calcule et génère des estimations du temps d’exécution de l’horloge murale et des ressources physiques pour un programme, en supposant qu’il est exécuté sur un ordinateur quantique à tolérance de pannes corrigées d’erreurs. Conçu spécifiquement pour les systèmes quantiques mis à l’échelle (systèmes post-NISQ, tolérants aux pannes), l’estimateur de ressources Azure Quantum vous permet d’évaluer les décisions architecturales, de comparer les technologies qubit et de déterminer les ressources nécessaires pour exécuter un algorithme quantique donné. Vous pouvez choisir parmi des protocoles prédéfinis à tolérance de panne et spécifier les hypothèses du modèle qubit physique sous-jacent.

L’estimateur de ressources Azure Quantum calcule l’estimation des ressources physiques après la disposition en prenant en compte les hypothèses relatives aux paramètres de qubit, aux codes de correction des erreurs quantiques (QEC) et à un budget d’erreur. Il prend un programme QIR (Quantum Intermediate Representation) comme entrée et, par conséquent, prend en charge n’importe quel langage qui traduit en QIR. Par exemple, vous pouvez utiliser l’estimateur de ressources Azure Quantum avec des SDK quantiques et des langages populaires tels que Q# et Qiskit.

L’estimateur de ressources Azure Quantum prend un ensemble d’entrées, avec des valeurs prédéfinies pour vous aider à démarrer facilement :

  • Paramètres qubit physiques
  • Schéma de correction d’erreur quantique (QEC)
  • Un budget d’erreur

Pour plus d’informations, consultez la page de référence de l’estimateur de ressources Azure Quantum .

Que sont Q# et le kit de développement Quantum ?

Le kit de développement Microsoft Quantum est un kit de développement open source pour Azure Quantum. Il est intégré au portail Azure Quantum, où vous pouvez développer des programmes à l’aide de jupyter notebooks hébergés. Vous pouvez également installer le kit de développement Quantum sur votre propre environnement local et travailler à la fois en ligne avec le service Azure Quantum et hors connexion. Le QDK inclut le langage de programmation quantique Q#, un langage de programmation général qui vous permet de concentrer votre travail au niveau de l’algorithme et de l’application pour créer des programmes quantiques.

Quantum Development Kit

Le QDK offre un ensemble d’outils qui vont vous aider tout au long du processus de développement de logiciels quantiques :

  • Des bibliothèques prêtes à l’emploi pour que votre code reste universel, notamment des bibliothèques « standard » qui implémentent des modèles communs à un grand nombre d’algorithmes quantiques et des bibliothèques propres à un domaine, comme la chimie et le Machine Learning.
  • Des simulateurs d’informatique quantique locaux et cloud qui simulent des machines quantiques actuelles et futures pour vous permettre d’exécuter et de déboguer vos algorithmes quantiques écrits en Q#.
  • Des simulateurs de bruit, qui permettent de simuler le comportement des programmes Q# sous l’influence de bruit et de la représentation du stabilisateur.
  • Des extensions pour Visual Studio 2022 et Visual Studio Code, ainsi qu’une intégration avec Jupyter Notebook.
  • L’interopérabilité avec Python et d’autres langages .NET, ainsi que l’intégration avec Qiskit et Cirq pour permettre aux développeurs quantiques qui travaillent déjà dans d’autres langages de développement d’exécuter leurs circuits sur Azure Quantum.

Notes

Azure Quantum est un écosystème flexible. Vous pouvez exécuter du code Python sur Azure Quantum sans appeler explicitement de code Q#, comme l’envoi de circuits Qiskit ou Cirq ou l’envoi de problèmes d’optimisation. Pour utiliser ces fonctionnalités, vous devez installer le package Python azure-quantum.

Langage de programmation quantique Q#

Pourquoi un langage de programmation quantique ? En résumé, parce que vous souhaitez écrire des algorithmes, pas des circuits.

Un programme quantique peut être vu comme un ensemble particulier de sous-routines classiques qui, quand elles sont appelées, effectuent un calcul en interagissant avec un système quantique. Un programme écrit en Q# ne modélise pas directement l’état quantique, mais décrit plutôt la façon dont un ordinateur de contrôle classique interagit avec les qubits. Cela vous permet de ne pas chercher à savoir ce qu’est l’état quantique sur chaque machine cible, lequel peut avoir des interprétations différentes selon la machine. Vous pouvez écrire votre code une seule fois et, avec peu ou pas de modifications, l’exécuter par rapport à plusieurs cibles de la même famille ; cela vous permet d’axer la programmation au niveau de l’algorithme.

Vous pouvez développer des programmes quantiques en Q# ou en Python sur le portail Azure Quantum à l’aide de Jupyter Notebooks ou dans votre environnement local à l’aide de votre environnement IDE favori. Les deux environnements vous permettent d’envoyer des travaux au matériel quantique par le biais du service Azure Quantum, ou d’utiliser des simulateurs quantiques cloud ou locaux. Pour plus d’informations, consultez différentes façons d’exécuter un programme Q#.

Workflow du développement logiciel quantique

Azure Quantum fournit le meilleur environnement de développement pour créer des algorithmes quantiques ciblant plusieurs plateformes à la fois, tout en offrant la flexibilité nécessaire pour régler les mêmes algorithmes en fonction de systèmes spécifiques. Vous avez le choix entre plusieurs langages de programmation quantique, comme Qiskit, Cirq et Q#, et vous pouvez exécuter vos algorithmes sur plusieurs systèmes quantiques. Avec Azure Quantum, vous pouvez facilement explorer les systèmes quantiques actuels tout en vous préparant aux systèmes quantiques mis à l’échelle du futur.

Le diagramme suivant montre les différentes étapes d’un programme quantique, de l’idée à la fin de l’implémentation sur Azure Quantum, et les outils proposés par le QDK pour chaque étape.

workflow qdk

  1. Écrivez votre code quantique. Vous pouvez écrire votre programme Q# avec les jupyter notebooks hébergés disponibles dans votre espace de travail Azure Quantum. Si vous préférez un environnement de développement local, vous pouvez créer votre programme Q# à l’aide des extensions QDK pour Visual Studio, Visual Studio Code ou Jupyter Notebooks.

  2. Utilisez des bibliothèques pour maintenir votre code à un niveau élevé. Les bibliothèques quantiques vous aident à maintenir votre code à un haut niveau, réalisant pour vous le gros du travail d’implémentation, ce qui vous permet de vous concentrer sur la logique de vos algorithmes.

  3. Procédez à l’intégration avec le logiciel classique. Le kit de développement Quantum vous permet d'intégrer des programmes Q# avec Python et .NET, ce qui permet à un développeur de logiciels quantiques de tirer parti de nombreuses améliorations apportées à l’informatique classique au cours des 70 dernières années. Vous pouvez également réutiliser et envoyer votre code source Qiskit et Cirq existant avec peu ou pas de changement.

  4. Exécutez votre code quantique dans la simulation. Une fois que vous avez écrit votre programme, utilisez des simulateurs quantiques, à savoir des programmes classiques qui simulent le comportement d’un système quantique afin que vous puissiez exécuter une petite instance de votre programme et voir ce qu’il fait sans avoir accès au matériel réel.

  5. Estimez les ressources. Avant de procéder à l’exécution sur du matériel quantique, vous devez déterminer si votre programme peut s’exécuter sur du matériel existant. Vous pouvez utiliser l’estimateur de ressources Azure Quantum pour vous indiquer les estimations de ressources physiques dont vous avez besoin et la durée de votre programme.

  6. Exécutez votre code sur du matériel quantique. Enfin, la dernière étape est l’utilisation d’Azure Quantum pour exécuter votre programme sur du matériel quantique !

Notes

Vous utilisez le même code Q# pour toutes les étapes du workflow. À court terme, vous devrez peut-être ajuster certaines parties du code pour prendre en compte les limitations actuelles du matériel. Mais à long terme, vous pourrez basculer entre plusieurs simulateurs et fournisseurs de matériel sans aucune modification de code.

Fournisseurs disponibles sur Azure Quantum

Azure Quantum propose certaines des ressources quantiques les plus fascinantes et diverses disponibles aujourd’hui auprès des leaders du secteur. Azure Quantum collabore actuellement avec les fournisseurs suivants pour vous permettre d’exécuter vos programmes quantiques Q# sur du vrai matériel et de tester votre code sur des ordinateurs quantiques simulés.

Fournisseurs d’informatique quantique

Choisissez le fournisseur qui correspond le mieux aux caractéristiques de votre problème et à vos besoins.

  • Quantinuum : système à ions piégés offrant des qubits haute fidélité entièrement connectés, de faibles taux d’erreur, la réutilisation des qubits et la possibilité d’effectuer des mesures à mi-circuit.
  • IONQ : Ordinateur quantique à ions piégés dynamiquement reconfigurable pour un maximum de 11 qubits entièrement connectés, qui vous permet d’exécuter une porte à deux qubits entre n’importe quelles paires.
  • Rigetti : les processeurs supraconducteurs basés sur des portes seront bientôt disponibles dans Azure Quantum et utiliseront la représentation intermédiaire quantique (QIR) pour permettre une faible latence et une exécution parallèle.
  • Pasqal : processeurs quantiques à base d’atomes neutres fonctionnant à température ambiante, avec des temps de cohérence longs et une connectivité qubit impressionnante. Si vous êtes intéressé, vous pouvez vous préinscrire à la préversion privée de Pasqal dans le cadre d’Azure Quantum.
  • Quantum Circuits, Inc : circuits supraconducteurs à pile complète, avec commentaires en temps réel qui permettent la correction des erreurs et les portes d’intrication indépendantes de l’encodage. Si vous êtes intéressé, vous pouvez vous préinscrire à la préversion privée de QCI dans le cadre d’Azure Quantum.

Pour plus d’informations sur les spécifications de chaque fournisseur, consultez la liste complète des cibles d’informatique quantique.

Fournisseurs d’optimisation

Pour les solutions d’optimisation, voici les fournisseurs disponibles que vous pouvez choisir :

  • 1QBit : Algorithmes heuristiques itératifs qui utilisent des techniques de recherche pour résoudre des problèmes QUBO.
  • Microsoft QIO : Ensemble de plusieurs cibles qui reformulent le problème d’optimisation, inspiré par des décennies de recherche quantique.
  • Toshiba SQBM+ : une machine de bifurcation simulée Quantum Toshiba est une machine ISING alimentée par des GPU qui résout très rapidement des problèmes d’optimisation combinatoire à grande échelle.

Pour plus d’informations sur les spécifications de chaque fournisseur, consultez la liste complète des cibles d’optimisation.

Étapes suivantes

Commencez à utiliser Azure Quantum :