Nous modernisons l'expérience quantique Katas. Veuillez visiter https://quantum.microsoft.com/experence/quantum-katas pour essayer la nouvelle expérience en ligne Azure Quantum Katas, avec une assistance intégrée de Copilot in Azure Quantum.
Pour le référentiel QDK moderne, veuillez visiter Microsoft / Qsharp.
Pour plus d'informations sur le QDK et Azure Quantum modernes, visitez https://aka.ms/aq/documentation.
Les katas quantiques sont une collection de tutoriels et d'exercices de programmation à votre rythme pour vous aider à apprendre l'informatique quantique et la programmation Q #.
Chaque kata est un ensemble distinct d'exercices qui comprend:
Les katas quantiques incluent également des tutoriels qui introduisent l'apprenant aux concepts et algorithmes de base utilisés dans l'informatique quantique, en commençant par les mathématiques nécessaires (nombres complexes et algèbre linéaire). Ils suivent le même modèle de complétation de la théorie par des démos Q # et des exercices de programmation pratiques.
Voici le chemin d'apprentissage que nous vous suggérons de suivre si vous commencez à apprendre l'informatique quantique et la programmation quantique. Une fois que vous êtes à l'aise avec les bases, vous êtes invités à sauter sur les sujets qui piquent votre intérêt!
Pour une feuille de référence rapide du langage de programmation Q #, voir la référence rapide du langage Q #.
Les katas quantiques sont désormais disponibles sous forme de carnets de jupyter en ligne! Voir index.ipynb pour la liste de tous les katas et tutoriels, et des instructions pour les exécuter en ligne.
Notez que MyBinder.org fonctionne avec une capacité réduite, donc obtenir une machine virtuelle et lancer les ordinateurs portables peut prendre plusieurs tentatives. Bien que l'exécution de Katas en ligne soit l'option la plus simple pour commencer, si vous souhaitez économiser vos progrès et profiter de meilleures performances, nous vous recommandons de choisir l'option de configuration locale.
Pour utiliser les katas quantiques localement, vous aurez besoin du kit de développement quantique, disponible pour Windows 10, MacOS et Linux. Si vous n'avez pas déjà installé le kit de développement quantique, consultez le guide d'installation du kit de développement quantique.
Si vous souhaitez exécuter les katas et les tutoriels localement en tant que cahiers Jupyter :
pytest .matplotlib .matplotlib et numpy .Reportez-vous à la mise à jour du noyau IQ # pour la mise à jour du noyau IQ # vers une nouvelle version avec des versions QDK mensuelles.
Si vous souhaitez exécuter les katas et les tutoriels localement comme des projets Q # :
Suivez les étapes du Guide d'installation QDK pour Visual Studio, Visual Studio Code ou d'autres éditeurs.
L'exécution des projets Q # des Katas localement nécessite le téléchargement et l'installation du SDK .NET 6.0. Vous pouvez le faire même si une autre version .NET est installée, car plusieurs versions sont prises en charge côte à côte.
Étant donné que Visual Studio 2019 ne prend pas en charge les projets .NET 6.0, vous devrez passer à Visual Studio 2022 et installer l'extension du kit de développement quantique Microsoft correspondant.
Si vous avez installé Git, clonez le référentiel Microsoft / Quantumkatas:
$ git clone https://github.com/Microsoft/QuantumKatas.gitCONSEIL
Visual Studio 2022 et Visual Studio Code facilitent la clonation des référentiels à partir de votre environnement de développement. Pour plus de détails, consultez la documentation du code Visual Studio et Visual Studio.
Si vous n'avez pas installé Git, téléchargez les katas à partir de https://github.com/microsoft/quantumkatas/archive/main.zip.
La meilleure façon d'exécuter les Katas en tant que cahiers Jupyter est de naviguer vers le dossier racine du référentiel et d'ouvrir index.ipynb à l'aide de Jupyter:
$ cd QuantumKatas/
$ jupyter notebook index.ipynbCela ouvrira le cahier qui contient une liste de tous les katas et tutoriels, et vous pourrez naviguer vers celui que vous souhaitez utiliser des liens.
Remarque: Cela démarrera Jupyter Notebooks Server dans la même fenêtre de ligne de commande que vous avez utilisée pour exécuter la commande. Si vous souhaitez continuer à utiliser cette fenêtre pour la navigation, vous pouvez lancer Jupyter Notebooks Server dans une nouvelle fenêtre en utilisant les commandes suivantes:
Pour Windows:
$ cd QuantumKatas/ $ start jupyter notebook index.ipynbPour Ubuntu:
$ cd QuantumKatas/ $ gnome-terminal -- start jupyter notebook index.ipynb
Vous pouvez également ouvrir directement un cahier individuel, mais cela peut rendre les liens internes invalides:
$ cd QuantumKatas/tutorials/ComplexArithmetic
$ jupyter notebook ComplexArithmetic.ipynbChaque Kata est dans son propre répertoire en tant que projet Q # autonome, solution et triplet Jupyter. Par exemple, la structure du répertoire BasicGates est:
QuantumKatas/
BasicGates/
README.md # Instructions specific to this kata.
.vscode/ # Metadata used by Visual Studio Code.
BasicGates.sln # Visual Studio solution file.
BasicGates.csproj # Project file used to build both classical and quantum code.
BasicGates.ipynb # Jupyter Notebook front-end for this kata.
Workbook_BasicGates.ipynb # Jupyter Notebook workbook for this kata.
Tasks.qs # Q# source code that you will fill as you solve each task.
Tests.qs # Q# tests that verify your solutions.
ReferenceImplementation.qs # Q# source code containing solutions to the tasks.Pour ouvrir les BasicGates Kata dans Visual Studio 2022, ouvrez le fichier de solution quantumkatas / basicgates / basicgates.sln .
Pour ouvrir le BasicGates Kata dans Visual Studio Code, ouvrez le dossier Quantumkatas / Basicgates / . Appuyez sur Ctrl + Shift + P (ou ⌘ + Shift + P sur macOS) pour ouvrir la palette de commande . Tapez le dossier ouvert sur Windows 10 ou Linux ou ouvrez sur macOS.
CONSEIL
Presque toutes les commandes disponibles dans Visual Studio Code sont dans la palette de commandes. Si vous êtes coincé, appuyez sur Ctrl + Shift + P (ou ⌘ + Shift + P sur macOS) et commencez à taper pour rechercher dans toutes les commandes disponibles.Vous pouvez également lancer Visual Studio Code à partir de la ligne de commande:
$ code QuantumKatas/BasicGates/
Une fois que vous avez un kata ouvert, il est temps d'exécuter les tests en utilisant les instructions suivantes. Initialement, tous les tests échoueront. Ne pas paniquer! Ouvrez les tâches.qs et commencez à remplir le code pour terminer les tâches. Chaque tâche est couverte par un test unitaire. Une fois que vous avez rempli le code correct pour une tâche, reconstruisez le projet et réécoutez les tests, et le test unitaire correspondant passera.
cd .dotnet test dans le terminal intégré. Cela devrait construire le projet KATA et exécuter tous les tests unitaires. Tous les tests unitaires doivent échouer.dotnet test .Pour plus de commodité, un fichier de configuration tasks.json existe pour chaque kata. Il permet à Visual Studio Code d'exécuter les étapes de construction et de test de la palette de commandes. Appuyez sur Ctrl + Shift + P (ou ⌘ + Shift + P sur macOS) pour ouvrir la palette et taper la tâche de construction d'exécution ou exécuter la tâche de test et appuyer sur Entrée .
Vous pouvez utiliser le DockerFile inclus pour créer une image Docker avec tous les outils nécessaires pour exécuter les Katas à partir de la ligne de commande ou du jupyter.
katas : docker build -t katas .katas-container avec une ligne de commande interactive et un port de conteneur de redirection 8888 vers le port local 8888 (nécessaire pour exécuter Jupyter): docker run -it --name katas-container -p 8888:8888 katas /bin/bash cd ~ /BasicGates/
dotnet test cd ~ /BasicGates/ && jupyter notebook --ip=0.0.0.0 --no-browser http://localhost:8888/notebooks/BasicGates.ipynb
Pour quitter un conteneur Docker sans le tuer (mode démon), appuyez sur Ctrl + P, Ctrl + Q
Pour réintégrer le katas-container existant (en mode démon):
docker attach katas-container Une fois que vous avez terminé, supprimez le katas-container :
docker rm --force katas-containerCe projet accueille les contributions et les suggestions. Voyez comment puis-je contribuer? pour plus de détails.
Ce projet a adopté le code de conduite open source Microsoft. Pour plus d'informations, consultez le code de conduite FAQ ou contactez [email protected] avec toute question ou commentaire supplémentaire.