Aracılığıyla paylaş


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:

  • Visual Studio Code'un en son sürümü veya Vs Code'un Web'de açılması.
  • Azure Quantum Geliştirme Seti uzantısının en son sürümü. Yükleme ayrıntıları için bkz . VS Code'da QDK'yi yükleme.

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 
    

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

  • Etkin aboneliği olan bir Azure hesabı. Azure hesabınız yoksa ücretsiz kaydolun ve kullandıkça öde aboneliğine kaydolun.
  • Azure Quantum çalışma alanı. Daha fazla bilgi için bkz . Azure Quantum çalışma alanı oluşturma.

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, öğe olarak da adlandırılan birden çok iş parametresi yapılandırmasına sahip işleri tek bir iş olarak göndermenizi sağlar.

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ş parametresi 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.
  • Bir grafikteki birden çok sonucu kolayca karşılaştırın.

Farklı diller kullanarak işleri toplu iş oluşturma

Kaynak Tahmin Aracı toplu işlemi örnekleri için istediğiniz sekmeleri seçin.

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 Not Defteri'nde yapılabilir.

bir parametre listesini işlevin target parametresine params qsharp.estimate geçirerek toplu tahmin gerçekleştirebilirsiniz. Aşağıdaki örnekte, parametrelerin target iki yapılandırmasını 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 ve floquet_code QEC düzenini kullanırqubit_maj_ns_e6.

Programınızın Q# aynı Jupyter Notebook'unda 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⁻⁶"])

Ayrıca, sınıfını kullanarak tahmin target parametrelerinin EstimatorParams listesini de oluşturabilirsiniz. Aşağıdaki kodda, parametrelerin target altı yapılandırmasını 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 bakın veya ile iletişime geçinAzureQuantumInfo@microsoft.com.