Sdílet prostřednictvím


Spuštění více konfigurací target parametrů pomocí nástroje pro odhad prostředků

V tomto článku se dozvíte, jak spustit více konfigurací target parametrů a porovnat je pomocí nástroje pro odhad prostředků Azure Quantum.

Informace o tom, jak spustit nástroj pro odhad prostředků, najdete v tématu Různé způsoby použití nástroje pro odhad prostředků.

Požadavky

Ke spuštění nástroje pro odhad prostředků se vyžadují následující požadavky:

Pokud chcete spouštět Q# programy v nástroji pro odhad prostředků, potřebujete následující:

Pokud chcete v editoru VS Code používat Python, potřebujete také následující:

  • Nainstalujte nejnovější verzi Pythonu a rozšíření Jupyter pro VS Code.

  • Nejnovější balíček Azure Quantum qsharp .

    python -m pip install --upgrade qsharp 
    

Pokud chcete odeslat úlohy do nástroje pro odhad prostředků, potřebujete následující:


Dávkování pomocí nástroje pro odhad prostředků

Estimátor prostředků Azure Quantum umožňuje odesílat úlohy s několika konfiguracemi parametrů úlohy, označovanými také jako položky, jako je jedna úloha, aby se zabránilo opakovanému spuštění více úloh ve stejném kvantovém programu.

Úloha odhadu zdroje se skládá ze dvou typů parametrů úlohy:

  • Target parametry: qubitový model, schémata QEC, rozpočet chyb, omezení na úrovni komponent a destilační jednotky.
  • Argumenty operace: argumenty, které lze předat programu (pokud vstupní bod QIR obsahuje argumenty).

Jedna položka se skládá z jedné konfigurace parametrů úlohy, která je jednou konfigurací target parametrů a argumentů operace. Několik položek je reprezentováno jako pole parametrů úlohy.

Některé scénáře, ve kterých můžete chtít odeslat více položek jako jednu úlohu:

  • Odešlete více target parametrů se stejnými argumenty operace ve všech položkách.
  • Odešlete více target parametrů s různými argumenty operace ve všech položkách.
  • Snadno porovnejte více výsledků v tabulkovém formátu.
  • V grafu můžete snadno porovnat více výsledků.

Dávkové úlohy pomocí různých jazyků

V příkladech dávkování Nástroje pro odhad prostředků vyberte požadované karty.

Pokud odhadujete prostředky Q# programu, můžete spustit více konfigurací target parametrů, označovaných také jako dávkování. Q# Dávkování můžete provádět v poznámkovém bloku Jupyter v editoru VS Code.

Odhad dávky můžete provést předáním seznamu target parametrů parametru params qsharp.estimate funkce. Následující příklad ukazuje, jak odeslat dvě konfigurace target parametrů jako jednu úlohu. První konfigurace používá výchozí target parametry a druhá konfigurace používá qubit_maj_ns_e6 parametr qubitu a floquet_code schéma QEC.

Do stejného poznámkového bloku Jupyter v Q# programu přidejte novou buňku a spusťte následující kód:

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⁻⁶"])

Pomocí třídy můžete také vytvořit seznam parametrů odhadu targetEstimatorParams . Následující kód ukazuje, jak odeslat šest konfigurací target parametrů jako jednu úlohu.

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)

Poznámka:

Pokud při práci s nástrojem pro odhad prostředků narazíte na nějaký problém, podívejte se na stránku Řešení potíží nebo se obraťte AzureQuantumInfo@microsoft.comna kontakt .