你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
如何将 target 参数的多个配置与资源估算器进行比较
本文介绍如何同时运行多个 target 参数配置,并使用 azure Quantum 资源估算器 对其进行比较。
Azure Quantum 资源估算器允许以单个作业的形式运行 target 参数的多个配置,以避免在同一量子程序中重新运行多个作业。
一个作业可能包含多个项或 target 参数的配置。 在某些情况下,你可能希望以单个作业的形式运行多个项:
- 在所有项中使用相同的操作参数运行多个 target 参数。
- 在所有项中使用不同的操作参数运行多个 target 参数。
- 以表格格式轻松比较多个结果。
- 在图表中轻松比较多个结果。
有关如何运行资源估算器的信息,请参阅 使用资源估算器的不同方法。
先决条件
最新版本的 Visual Studio Code 或打开网页版 VS Code。
最新版本的 Quantum 开发工具包扩展。 有关安装详细信息,请参阅 设置 QDK 扩展。
安装最新版本的 Python 和适用于 VS Code 的 Jupyter 扩展。
最新的 Azure Quantum
qsharp
包。python -m pip install --upgrade qsharp
使用资源估算器运行多个配置
在 VS Code 的 Jupyter Notebook 中,可以使用 Q# 将 target 的多个配置作为单个作业来运行。 可以将 target 参数列表传递给 qsharp.estimate
函数的 params
参数。
以下示例演示如何将两个 target 参数的配置作为单个作业运行。 第一个配置使用默认 target 参数,第二个配置使用 qubit_maj_ns_e6
量子比特参数和 floquet_code
QEC 方案。
在程序的同一 Jupyter Notebook Q# 中,添加新单元格并运行以下代码:
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⁻⁶"])
还可以使用EstimatorParams
构造估计参数列表。 以下代码演示如何将 target 参数的六个配置作为单个作业批处理。
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)
注意
如果在使用资源估算器时遇到任何问题,请查看 “故障排除”页或联系 AzureQuantumInfo@microsoft.com。