Aller au contenu principal

Modifications automatiques du code

doQumentation applique automatiquement un petit nombre de modifications au contenu des tutoriels et guides Qiskit en amont pour garantir une expérience interactive fluide. Cette page documente chaque modification afin que tu puisses comprendre exactement ce qui a changé par rapport à la documentation IBM Quantum d'origine.

Copies de notebooks (Ouvrir dans Colab / Binder / Code Engine)

Quand tu cliques sur Open in Colab, Open in JupyterLab ou Open in Code Engine, tu reçois une copie du notebook original avec ces ajouts :

1. Cellule d'avis de configuration (markdown)

Une cellule de citation est insérée tout en haut pour expliquer que doQumentation a ajouté une cellule de configuration automatique. Elle renvoie vers cette page.

2. Cellule de prérequis (code)

Une cellule de code est insérée après l'avis et elle :

  • Installe les paquets requis (qiskit, qiskit-aer, qiskit-ibm-runtime, pylatexenc, ainsi que tout paquet spécifique au tutoriel détecté par analyse des imports). L'installation est ignorée si les paquets sont déjà présents (par exemple sur Binder ou Code Engine où ils sont pré-installés).
  • Fournit un modèle de credentials commenté pour IBM Quantum, afin que les utilisateurs qui souhaitent exécuter sur du vrai matériel puissent décommenter et renseigner leur clé API.

Sur Google Colab, cette cellule s'exécute automatiquement à l'ouverture du notebook via le flag de métadonnées cell_execution_strategy: setup.

3. Réécriture des chemins d'images

Les chemins d'images relatifs (/docs/images/..., /learning/images/...) sont réécrits pour fonctionner correctement dans des environnements de notebooks autonomes.

Pages MDX (rendu dans le navigateur)

Les tutoriels affichés sur ce site sont convertis depuis des notebooks .ipynb ou des fichiers .mdx en amont. Les transformations suivantes sont appliquées :

  • Les lignes pip install sont ajoutées aux blocs de code Python qui importent des paquets tiers, permettant une exécution en un clic via thebelab.
  • Section IBM Tutorial Survey : une note est ajoutée pour préciser que le sondage appartient à IBM Quantum et pour renvoyer vers les Issues GitHub de doQumentation pour les retours spécifiques au site.
  • Widget de retour : un widget "Was this helpful?" est ajouté en bas de chaque tutoriel, suivi via les analytics Umami respectueux de la vie privée.
  • Corrections de syntaxe MDX : les accolades, la hiérarchie des titres et les problèmes de compatibilité JSX sont automatiquement corrigés pour le rendu Docusaurus.
  • OpenInLabBanner : une bannière interactive est injectée sous le titre avec des boutons pour ouvrir le notebook dans Colab, Binder ou Code Engine.

Ce qui n'est PAS modifié

  • Le contenu du tutoriel lui-même (explications, logique du code, résultats) n'est jamais altéré.
  • L'attribution aux auteurs originaux est préservée via le frontmatter et le fichier NOTICE (licences Apache 2.0 / CC BY-SA 4.0).
  • Aucun code de télémétrie ou de suivi n'est injecté dans les notebooks. Les analytics (Umami) ne s'exécutent que sur le site doQumentation, pas dans les notebooks exportés.

Code source

Toutes les transformations sont implémentées dans scripts/sync-content.py.