Aller au contenu principal

Introduction à Qiskit

Le nom « Qiskit » est un terme général désignant un ensemble de logiciels permettant d'exécuter des programmes sur des ordinateurs quantiques. Parmi ces outils, on trouve notamment le SDK Qiskit open-source, ainsi que l'environnement d'exécution (accessible via Qiskit Runtime) grâce auquel tu peux exécuter des charges de travail sur les unités de traitement quantique (QPU) d'IBM®. Comme la technologie quantique évolue, Qiskit évolue aussi, avec de nouvelles fonctionnalités publiées chaque année qui enrichissent cette collection de base de logiciels quantiques.

Par ailleurs, de nombreux projets open-source font partie du vaste écosystème Qiskit. Ces outils logiciels ne font pas partie de Qiskit lui-même, mais s'interfacent avec lui et peuvent apporter des fonctionnalités supplémentaires précieuses.

IBM s'engage dans le développement responsable de l'informatique quantique. Découvre nos principes en matière de quantique responsable dans la rubrique Informatique quantique responsable.

Le SDK Qiskit

Le SDK Qiskit (nom du paquet qiskit) est un SDK open-source pour travailler avec des ordinateurs quantiques au niveau des circuits quantiques étendus (statiques, dynamiques et planifiés), des opérateurs et des primitives. Cette bibliothèque est le composant central de Qiskit ; c'est le paquet le plus volumineux sous le nom Qiskit, avec la suite d'outils la plus complète pour le calcul quantique, et de nombreux autres composants s'interfacent avec lui.

Voici quelques-unes des fonctionnalités les plus utiles du SDK Qiskit :

  • Outils de construction de circuits (qiskit.circuit) - Pour initialiser et manipuler des registres, circuits, instructions, portes, paramètres et objets de flux de contrôle.

  • Bibliothèque de circuits (qiskit.circuit.library) - Un vaste ensemble de circuits, d'instructions et de portes — des blocs de construction essentiels pour les calculs quantiques à base de circuits.

  • Bibliothèque d'informations quantiques (qiskit.quantum_info) - Une boîte à outils pour travailler avec des états quantiques, des opérateurs et des canaux, en utilisant des calculs exacts (sans bruit d'échantillonnage). Utilise ce module pour spécifier des observables d'entrée et analyser la fidélité des sorties issues de requêtes de primitives.

  • Transpiler (qiskit.transpiler) - Pour transformer et adapter les circuits quantiques à la topologie d'un appareil spécifique, et les optimiser pour l'exécution sur de véritables unités de traitement quantique (QPU).

  • Primitives (qiskit.primitives) - Le module contenant les définitions de base et les implémentations de référence des primitives Sampler et Estimator, à partir desquelles différents fournisseurs de matériel quantique peuvent dériver leurs propres implémentations. Retrouve plus d'informations sur les primitives Qiskit Runtime dans la documentation.

Installation

Pour une introduction plus détaillée à l'installation du SDK Qiskit, consulte la page d'installation. Si tu es prêt·e à l'installer maintenant, exécute simplement :

pip install qiskit

Benchmarking et le paquet Benchpress

Le benchmarking est essentiel pour comparer les performances relatives des logiciels quantiques à différentes étapes d'un workflow de développement. Les tests de benchmarking pour les logiciels quantiques peuvent, par exemple, examiner la vitesse et la qualité de la construction, de la manipulation et de la transpilation des circuits. IBM Quantum s'engage à fournir le SDK le plus performant possible, et à cette fin, le SDK Qiskit est évalué à l'aide de plus de 1 000 tests développés par des universités de premier plan, des laboratoires nationaux et des chercheurs d'IBM. La suite de benchmarking utilisée pour ces tests, nommée Benchpress, est désormais disponible sous la forme d'un paquet open-source. Tu peux désormais utiliser le paquet Benchpress pour réaliser ta propre analyse des performances des SDK quantiques.

Extensions Qiskit (addons)

Les extensions Qiskit (addons) sont un ensemble de fonctionnalités de recherche pour la découverte d'algorithmes à l'échelle utilitaire. Ces fonctionnalités s'appuient sur la base performante de Qiskit, composée d'outils pour créer et exécuter des algorithmes quantiques. Les addons sont des composants logiciels modulaires qui s'intègrent dans un workflow pour faire évoluer ou concevoir de nouveaux algorithmes quantiques. Pour en savoir plus sur l'ensemble des addons Qiskit disponibles et sur la façon de les utiliser, consulte la documentation.

L'écosystème Qiskit

Au-delà de Qiskit, de nombreux projets open-source utilisent le nom « Qiskit » sans faire partie de Qiskit lui-même ; ils s'interfacent avec Qiskit et peuvent apporter des fonctionnalités supplémentaires précieuses pour compléter le workflow Qiskit de base. Certains de ces projets sont maintenus par des équipes IBM Quantum, tandis que d'autres sont soutenus par la communauté open-source au sens large. Le SDK Qiskit est conçu de manière modulaire et extensible pour faciliter la création, par les développeurs, de projets qui étendent ses capacités.

Parmi les projets populaires de l'écosystème Qiskit, on trouve :

  • Qiskit Aer (qiskit-aer) - un paquet pour les simulateurs d'informatique quantique avec des modèles de bruit réalistes. Il fournit des interfaces pour exécuter des circuits quantiques avec ou sans bruit, en utilisant plusieurs méthodes de simulation différentes. Maintenu par IBM Quantum.
  • qBraid SDK (qbraid) - un framework d'exécution quantique indépendant de la plateforme, conçu pour les fournisseurs de logiciels et de matériel quantiques, qui simplifie la gestion complète du cycle de vie des jobs quantiques — de la définition des spécifications du programme à la soumission du job, jusqu'au post-traitement et à la visualisation des résultats. Maintenu par qBraid.
  • mthree mthree - un paquet pour implémenter M3 (Matrix-free Measurement Mitigation), une technique d'atténuation des mesures qui résout des probabilités de mesure corrigées à l'aide d'une étape de réduction de dimensionnalité suivie soit d'une factorisation LU directe, soit d'une méthode itérative préconditionné qui converge nominalement en O(1) étapes, et peut être calculée en parallèle. Maintenu par IBM Quantum.

Tu peux trouver un catalogue de projets sur la page de l'écosystème Qiskit, ainsi que des informations sur la façon de proposer ton propre projet.

Prochaines étapes

Recommandations
  • Découvre la bibliothèque de circuits et d'instructions disponibles dans la bibliothèque de circuits Qiskit.
  • Lis les informations sur le transpiler Qiskit et les nombreuses options de transpilation dans la section Transpiler.
  • Découvre comment utiliser les primitives Qiskit pour simplifier la programmation quantique.