Comment comparer plusieurs configurations de paramètres target avec l’estimateur de ressources
Dans cet article, vous allez apprendre à exécuter plusieurs configurations de paramètres target en même temps et à les comparer à l’aide de l’estimateur de ressources Azure Quantum .
L’estimateur de ressources Azure Quantum vous permet d’exécuter plusieurs configurations de paramètres target en tant que tâche unique pour éviter de réexécuter plusieurs travaux sur le même programme quantique.
Un travail peut se compose de plusieurs éléments ou configurations de paramètres target. Certains scénarios où vous souhaiterez peut-être exécuter plusieurs éléments en tant que tâche unique :
- Exécutez plusieurs paramètres target avec des arguments d'opération identiques dans tous les éléments.
- Exécutez plusieurs paramètres target avec des arguments d'opération différents dans tous les éléments.
- Comparez facilement plusieurs résultats dans un format tabulaire.
- Comparez facilement plusieurs résultats dans un graphique.
Pour plus d’informations sur l’exécution de l’estimateur de ressources, consultez différentes façons d’utiliser l’estimateur de ressources.
Prérequis
La dernière version de Visual Studio Code ou ouvrir VS Code sur le web.
La dernière version de l’extension Quantum Development Kit. Pour plus d’informations sur l’installation, consultez Configurer l’extension QDK.
Installez la dernière version des extensions Python et Jupyter pour VS Code.
Dernier package Azure Quantum
qsharp
.python -m pip install --upgrade qsharp
Exécution de plusieurs configurations avec l’estimateur de ressources
L'exécution de plusieurs configurations de paramètres target en un seul travail dans Q# peut être réalisée dans un Jupyter Notebook dans VS Code. Vous pouvez transmettre une liste de paramètres target au paramètre params
de la fonction qsharp.estimate
.
L’exemple suivant montre comment exécuter deux configurations de paramètres target en tant que tâche unique. La première configuration utilise les paramètres par défaut target , et la deuxième configuration utilise le qubit_maj_ns_e6
paramètre qubit et le floquet_code
schéma QEC.
Dans le même bloc-notes Jupyter de votre Q# programme, ajoutez une nouvelle cellule et exécutez le code suivant :
result_batch = qsharp.estimate("RunProgram()", params=
[{}, # Default parameters
{
"qubitParams": {
"name": "qubit_maj_ns_e6"
},
"qecScheme": {
"name": "floquet_code"
}
}])
result_batch.summary_data_frame(labels=["Gate-based ns, 10⁻³", "Majorana ns, 10⁻⁶"])
Vous pouvez également construire une liste de paramètres d’estimation target à l’aide de la EstimatorParams
classe. Le code suivant montre comment traiter six configurations de paramètres target en tant que tâche unique.
from qsharp.estimator import EstimatorParams, QubitParams, QECScheme
labels = ["Gate-based µs, 10⁻³", "Gate-based µs, 10⁻⁴", "Gate-based ns, 10⁻³", "Gate-based ns, 10⁻⁴", "Majorana ns, 10⁻⁴", "Majorana ns, 10⁻⁶"]
params = EstimatorParams(num_items=6)
params.error_budget = 0.333
params.items[0].qubit_params.name = QubitParams.GATE_US_E3
params.items[1].qubit_params.name = QubitParams.GATE_US_E4
params.items[2].qubit_params.name = QubitParams.GATE_NS_E3
params.items[3].qubit_params.name = QubitParams.GATE_NS_E4
params.items[4].qubit_params.name = QubitParams.MAJ_NS_E4
params.items[4].qec_scheme.name = QECScheme.FLOQUET_CODE
params.items[5].qubit_params.name = QubitParams.MAJ_NS_E6
params.items[5].qec_scheme.name = QECScheme.FLOQUET_CODE
qsharp.estimate("RunProgram()", params=params).summary_data_frame(labels=labels)
Remarque
Si vous rencontrez un problème lors de l’utilisation de l’estimateur de ressources, consultez la page Résolution des problèmes ou contactez AzureQuantumInfo@microsoft.com.