Wie Sie mehrere Konfigurationen von target Parametern mit dem Resource Estimator vergleichen
In diesem Artikel erfahren Sie, wie Sie mehrere Konfigurationen von target Parametern gleichzeitig ausführen und mit dem Azure Quantum Resource Estimatorvergleichen.
Mit dem Azure Quantum Resource Estimator können Sie mehrere Konfigurationen von target-Parametern als ein einziger Auftrag ausführen, damit Sie vermeiden, dass mehrere Aufträge im selben Quantenprogramm erneut ausgeführt werden.
Ein Auftrag kann aus mehreren Elementen oder Konfigurationen von target Parametern bestehen. Einige Szenarien, in denen Sie möglicherweise mehrere Elemente als einzelnen Auftrag ausführen möchten:
- Führen Sie mehrere target-Parameter mit denselben Operations-Argumenten in allen Elementen aus.
- Führen Sie mehrere target-Parameter mit unterschiedlichen Operations-Argumenten in allen Objekten aus.
- Vergleichen Sie einfach mehrere Ergebnisse in einem tabellarischen Format.
- Vergleichen Sie einfach mehrere Ergebnisse in einem Diagramm.
Informationen zum Ausführen der Ressourcenstimator finden Sie unter "Verschiedene Möglichkeiten zum Verwenden des Ressourcenstimators".
Voraussetzungen
Die neueste Version von Visual Studio Code oder öffnen Sie VS Code im Web.
Die neueste Version der Quantum Developement Kit-Erweiterung. Details zur Installation finden Sie unter Einrichten der QDK-Erweiterung.
Installieren Sie die neueste Version der Python- und Jupyter-Erweiterungen für VS Code.
Das neueste Azure Quantum-Paket
qsharp
.python -m pip install --upgrade qsharp
Ausführen mehrerer Konfigurationen mit dem Ressourcenstimator
Das Ausführen mehrerer Konfigurationen von target-Parametern als einen einzigen Job in Q# kann in einem Jupyter Notebook in VS Code erfolgen. Sie können eine Liste der Parameter target an den Parameter params
der qsharp.estimate
-Funktion übergeben.
Das folgende Beispiel zeigt, wie zwei Konfigurationen von target-Parametern gleichzeitig als ein einzelner Auftrag ausgeführt werden können. Die erste Konfiguration verwendet die Standardparameter target , und die zweite Konfiguration verwendet den qubit_maj_ns_e6
Qubit-Parameter und das floquet_code
QEC-Schema.
Fügen Sie im gleichen Jupyter-Notizbuch Ihres Q# Programms eine neue Zelle hinzu, und führen Sie den folgenden Code aus:
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⁻⁶"])
Sie können auch eine Liste von Schätzungsparametern target mithilfe der EstimatorParams
Klasse erstellen. Der folgende Code zeigt, wie Sie sechs Konfigurationen von target-Parametern als Batch in einem einzigen Job ausführen können.
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)
Hinweis
Wenn beim Arbeiten mit der Ressourcenschätzung probleme auftreten, schauen Sie sich die Seite "Problembehandlung" an, oder wenden Sie sich an den Kontakt AzureQuantumInfo@microsoft.com.