在本文中,您將瞭解如何同時執行多個 target 參數位態,並使用 Azure Quantum Resource Estimator加以比較。
Azure Quantum 資源估算器可讓您將多個參數設定target作為單一作業執行,因此您不需要在相同的量子程式上重新執行多個作業。
一項工作可能包含多個項目或 target 參數的配置。 在某些情況下,您可能想要以單一作業的形式執行多個專案:
- 在所有項目中執行具有相同作業引數的多個 target 參數。
- 在所有項目中執行具有不同操作引數的多個 target 參數。
- 以表格式格式輕鬆地比較多個結果。
- 輕鬆地比較圖表中的多個結果。
如需如何執行資源估算器的詳細資訊,請參閱 使用資源估算器的不同方式。
必要條件
最新版的 Visual Studio Code 或開啟 Web上的 VS Code。
最新版本的 Quantum Development Kit 擴充套件。 如需安裝詳細資料,請參閱 設定 QDK 擴充功能。
安裝最新版的 Python 和適用於 VS Code 的 Jupyter 擴充功能。
最新的
qdkPython 函式庫。python -m pip install --upgrade qdk
使用資源估算器執行多個組態
您可以在 Q# 中使用 Jupyter Notebook 執行 target 多個參數設定作為單一作業。 您可以將 target 參數列表傳遞至 params 函式的 qsharp.estimate 參數。
下列範例示範如何將兩個組態 target 參數當做單一作業來執行。 第一個組態會使用預設 target 參數,而第二個組態則使用 qubit_maj_ns_e6 量子位參數和 floquet_code QEC 配置。
在您的 Jupyter Notebook Q# 中,新增一個儲存格並執行下列程式碼:
from qdk import qsharp
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⁻⁶"])
您也可以使用target來建構估計EstimatorParams參數清單。 下列代碼示範如何將 target 參數的六種組態批次成為單一作業。
from qdk import qsharp
from qdk.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)
注意
如果您在使用資源估算器時遇到任何問題,請參閱 疑難解答頁面,或連絡 AzureQuantumInfo@microsoft.com。