Kaynak Tahmin Aracı ile parametrelerin target birden çok yapılandırmasını çalıştırma

Bu makalede, Azure Quantum Kaynak Tahmin Aracı'nı kullanarak parametrelerin target birden çok yapılandırmasını çalıştırmayı ve bunları karşılaştırmayı öğreneceksiniz.

Kaynak Tahmin Aracı'nı çalıştırma hakkında bilgi için bkz. Kaynak Tahmin Aracı'nı kullanmanın farklı yolları.

Önkoşullar

Kaynak Tahmin Aracı'nı çalıştırmak için aşağıdaki önkoşullar gereklidir:

Kaynak Tahmin Aracı'nda programları çalıştırmak Q# için aşağıdakilere ihtiyacınız vardır:

VS Code'da Python kullanmak istiyorsanız aşağıdakilere de ihtiyacınız vardır:

  • Python'ın en son sürümünü ve VS Code için Jupyter uzantılarını yükleyin.

  • En son Azure Quantum qsharp paketi.

    python -m pip install --upgrade qsharp 
    

Kaynak Tahmin Aracı'na iş göndermek için aşağıdakilere ihtiyacınız vardır:


Kaynak Tahmin Aracı ile toplu işlem

Azure Quantum Kaynak Tahmin Aracı, aynı kuantum programında birden çok işin yeniden çalıştırılmasını önlemek için , öğeler olarak da adlandırılan birden çok iş parametresi yapılandırmasına sahip işleri tek bir iş olarak göndermenize olanak tanır.

Kaynak tahmin işi iki tür iş parametresinden oluşur:

  • Hedef parametreler: kubit modeli, QEC düzenleri, hata bütçesi, bileşen düzeyindeki kısıtlamalar ve damıtma birimleri.
  • İşlem bağımsız değişkenleri: Programa geçirilebilen bağımsız değişkenler (QIR giriş noktası bağımsız değişkenler içeriyorsa).

Bir öğe, bir iş parametrelerinin yapılandırmasından oluşur, bu da parametrelerin ve işlem bağımsız değişkenlerinin target bir yapılandırmasıdır. Birkaç öğe bir iş parametreleri dizisi olarak temsil edilir.

Birden çok öğeyi tek bir iş olarak göndermek isteyebileceğiniz bazı senaryolar:

  • Tüm öğelerde aynı işlem bağımsız değişkenlerine sahip birden çok target parametre gönderin.
  • Tüm öğelerde farklı işlem bağımsız değişkenleriyle birden çok target parametre gönderin.
  • Birden çok sonucu tablo biçiminde kolayca karşılaştırın.
  • Grafikteki birden çok sonucu kolayca karşılaştırın.

Bir Q# programın kaynaklarını tahmin ediyorsanız, toplu işlem olarak da bilinen birden çok parametre yapılandırması target çalıştırabilirsiniz. ile Q# toplu işlem, VS Code'daki bir Jupyter Notebook yapılabilir.

İşlevin parametresine parametre paramsqsharp.estimate listesini target geçirerek toplu tahmin gerçekleştirebilirsiniz. Aşağıdaki örnekte, iki parametre yapılandırmasını target tek bir iş olarak gönderme işlemi gösterilmektedir. İlk yapılandırma varsayılan target parametreleri, ikinci yapılandırma ise kubit parametresini qubit_maj_ns_e6 ve QEC şemasını floquet_code kullanır.

Programınızın Q# aynı Jupyter Notebook yeni bir hücre ekleyin ve aşağıdaki kodu çalıştırın:

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

Sınıfını kullanarakEstimatorParams tahmin target parametrelerinin listesini de oluşturabilirsiniz. Aşağıdaki kodda, altı parametre yapılandırmasını target tek bir iş olarak gönderme işlemi gösterilmektedir.

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)

Not

Kaynak Tahmin Aracı ile çalışırken herhangi bir sorunla karşılaşırsanız Sorun Giderme sayfasına göz atın veya ile iletişime geçin AzureQuantumInfo@microsoft.com.