Memecahkan masalah Azure Quantum

Saat bekerja dengan layanan Azure Quantum, Anda mungkin mengalami masalah umum ini. Lihat bagaimana Anda dapat menyelesaikannya.

Mengirimkan pekerjaan

Masalah: Hilang targets

Jika tempat target Anda ingin menjalankan pekerjaan Anda hilang dari daftar yang tersediatarget, Anda mungkin perlu memperbarui ke versi Quantum Development Kit terbaru untuk Visual Studio Code. Untuk informasi selengkapnya, lihat Memperbarui QDK.

Masalah: Operasi mengembalikan kode status yang tidak valid 'Tidak Sah'

Langkah-langkah untuk mengatasi masalah ini:

  1. Buka portal Azure Anda (https://portal.azure.com) dan autentikasi akun Anda.

  2. Di bawah Navigasi, pilih Langganan dan pilih langganan Anda.

  3. Pilih Kontrol Akses (IAM) .

  4. Di bawah Periksa akses, cari alamat email Anda dan pilih akun.

  5. Anda tidak akan melihat peran Pemilik atau Kontributor tercantum.

  6. Pilih tab Penetapan peran.

    Catatan

    Jika tidak melihat tab Penetapan peran, Anda mungkin perlu memperluas portal ke layar penuh atau menutup panel penetapan <nama Anda>.

  7. Pilih menu dropdown Peran , pilih Pemilik atau Kontributor, lalu masukkan alamat email Anda dan pilih akun Anda.

  8. Pilih Simpan.

  9. Anda sekarang akan melihat set akun Anda dikonfigurasi dengan peran Pemilik atau Kontributor.

  10. Create ruang kerja Azure Quantum Anda lagi lalu kirimkan pekerjaan terhadap Ruang Kerja baru ini.

Masalah: "Gagal mengompilasi program" ketika mencoba mengirimkan program Q# melalui CLI

Saat mencoba mengirimkan pekerjaan di command prompt menggunakan perintah az quantum submit, Anda mungkin menemukan pesan kesalahan berikut:

az quantum job submit ...
Failed to compile program.
Command ran in 21.181 seconds (init: 0.457, invoke: 20.724)

Kesalahan ini terjadi ketika ada masalah dengan program Q# yang menyebabkan kompilasi gagal.

Masalah: Kesalahan kompilator "Jumlah parameter gerbang yang salah"

Saat mengirimkan pekerjaan ke Quantinuum dari Jupyter Notebook lokal atau lingkungan baris perintah, dan menggunakan penerjemah QASM warisan (OPENQASM 2.0), Anda mungkin mengalami kesalahan ini:

Job ID <jobId> failed or was cancelled with the message: 1000: Compile error: [<file, line>] Wrong number of gate parameters

Kesalahan ini terjadi ketika koma "," atau karakter non-periode lainnya digunakan sebagai pemisah desimal, seperti yang umum dalam banyak bahasa. Ganti pemisah desimal non-periode dengan titik ".".

// replace this line:
rx(1,5707963267948966) q[0];

// with this:
rx(1.5707963267948966) q[0];

Catatan

Masalah ini tidak terjadi di notebook yang dihosting di portal Azure Quantum, hanya di lingkungan pengembangan lokal.

Masalah: Kesalahan pengkompilasi "tidak tersedia untuk konfigurasi kompilasi saat ini"

Saat Anda menjalankan sel kode Q# di Jupyter Notebook di Visual Studio Code, Anda mungkin mengalami kesalahan:

<function name> not found. Found a matching item `<function name>' that is not available for the current compilation configuration

Kesalahan ini menunjukkan bahwa profil QIR target diatur ke Dasar dan fungsi yang dimaksud memerlukan profil Tidak Terbatastarget . Untuk mengatur profil ke targetTidak Dibatasi:

  1. Saat berada di program Q# Anda di Visual Studio Code, pilih Q#: Basis QIR di bilah status bawah.
  2. Dari opsi yang ditampilkan di bilah status atas, pilih Q#: tidak dibatasi.

Masalah: Operasi mengembalikan kode status tidak valid 'Terlarang'

Ketika Anda mengirimkan pekerjaan pertama Anda, Anda mungkin mendapatkan kode kesalahan 'terlarang'.

Masalah ini dapat terjadi selama pembuatan ruang kerja: Azure Quantum gagal menyelesaikan penetapan peran untuk menautkan ruang kerja baru ke akun penyimpanan yang ditentukan. Skenario umum untuk situasi ini terjadi jika tab atau jendela browser web ditutup sebelum pembuatan ruang kerja selesai.

Anda dapat memverifikasi bahwa Anda mengalami masalah penetapan peran ini dengan mengikuti langkah-langkah berikut:

  • Menavigasi ke ruang kerja kuantum baru Anda di portal Azure
  • Di bawah Gambaran Umum>Essentials>Akun penyimpanan, pilih tautan akun penyimpanan
  • Di bilah navigasi kiri, pilih Access Control (IAM)
  • Pilih Penetapan Peran
  • Verifikasi bahwa ruang kerja Anda muncul sebagai Kontributor
  • Jika ruang kerja tidak muncul sebagai Kontributor , Anda dapat:
    • Buat ruang kerja baru, dan pastikan untuk menunggu pembuatan ruang kerja selesai sebelum menutup tab atau jendela browser web.
    • Tambahkan penetapan peran yang tepat di bawah akun penyimpanan
      • > Access Control (IAM) Menambahkan penetapan peran
      • Peran > Kontributor
      • Tetapkan akses ke > Pengguna, grup, atau perwakilan layanan
      • Pilih [Nama ruang kerja] >
      • Simpan

Masalah: Pekerjaan gagal dengan kode kesalahan: QIRPreProcessingFailed

Ketika Anda mengirimkan pekerjaan ke penyedia Rigetti, pekerjaan gagal dan dilaporkan di konsol manajemen Pekerjaan di portal Azure:

Error code: QIRPreProcessingFailed
Error message: No match found for output recording set converter from outputrecordingset.v2.labeled to outputrecordingset.v1.nonlabeled

Kesalahan ini mungkin disebabkan oleh konflik dependensi dengan versi pyqir atau qiskit-qir sebelumnya. Hapus instalan semua versi pyqir, pyqir-*, dan qiskit-qir di komputer lokal Anda, lalu instal atau perbarui paket Python azure-quantum menggunakan parameter [qiskit]:

pip install --upgrade azure-quantum[qiskit]

Masalah: Mengambil informasi dasar tentang pekerjaan yang gagal

Setelah Anda mengirimkan pekerjaan ke perangkat keras target, pekerjaan Anda mungkin berada dalam antrean selama beberapa jam, atau bahkan satu atau dua hari, sebelum gagal.

Untuk mengambil informasi selengkapnya tentang kegagalan:

  • get_results() Gunakan metode dengan objek pekerjaan untuk melihat output atau pesan kesalahan yang dikembalikan:
job.get_results()
  • Di ruang kerja Portal Azure Anda, pilih Manajemen Pekerjaan Operasi>, lalu pilih Nama pekerjaan untuk membuka panel detail.
  • Di ruang kerja Portal Azure Anda, pilih Penyedia Operasi>. Verifikasi ketersediaan target komputer. Pekerjaan yang dikirimkan ke targets dengan status Terdegradasi mungkin tetap dalam antrean lebih lama dari biasanya. Terkadang pekerjaan diproses, tetapi terkadang mereka kehabisan targetwaktu dan mengembalikan kesalahan tidak tersedia.

Masalah: Saya terus diminta untuk mengautentikasi saat menyambungkan secara terprogram ke ruang kerja saya

Jika Anda menggunakan Azure Quantum Python SDK (dalam buku catatan Jupyter misalnya) dan menyambungkan ke ruang kerja Anda menggunakan kelas AzureQuantumProvider, Anda mungkin mengalami pop-up untuk mengautentikasi ke Azure setiap kali Anda menjalankan skrip Anda.

Ini terjadi karena token keamanan Anda sedang direset setiap kali Anda menjalankan skrip.

Anda dapat mengatasi masalah ini dengan menjalankan az login menggunakan Azure CLI. Untuk informasi selengkapnya, lihat az login.

Masalah: Setelah memperbarui paket azure-quantum, saya mendapatkan kesalahan "ModuleNotFoundError: Tidak ada modul bernama qiskit.tools" saat memantau pekerjaan

Pada Qiskit 1.0, qiskit.tools modul, yang diperlukan untuk job_monitor() fungsi, telah ditolak. Untuk memantau pekerjaan, gunakan wait_for_final_state() fungsi atau result .

job = MyTarget.run(circuit, shots=100)

# to wait until the job is complete
job.wait_for_final_state() 

# to return the results of the job
result = job.result()

Estimator Sumber Daya Azure Quantum

Skenario umum berikut dapat mencegah pekerjaan estimasi sumber daya selesai. Lihat cara mengatasinya.

Masalah: Algoritma kuantum harus berisi setidaknya satu status atau pengukuran T

Untuk memperhitungkan pemetaan program kuantum arbitrer ke array 2D dari kubit logis, Estimator Sumber Daya mengasumsikan bahwa Parallel Synthesis Sequential Pauli Computation (PSSPC) ( lihat arXiv:2211.07629, Appendix D) dilakukan pada inputprogram. Dalam pendekatan itu, semua operasi Clifford dioperasikan melalui semua gerbang T, gerbang rotasi, dan operasi pengukuran, meninggalkan satu operasi Clifford yang dapat dievaluasi secara efisien secara klasifikasi. Oleh karena itu, program kuantum yang tidak berisi status T, misalnya dari gerbang T atau gerbang rotasi, atau operasi pengukuran tidak memerlukan sumber daya komputasi kuantum fisik.

Error message: Algorithm requires at least one T state or measurement to estimate resources

Masalah: Tingkat kesalahan gerbang T fisik terlalu tinggi

Tingkat kesalahan status T logis tergantung pada anggaran kesalahan dan jumlah status T dalam program kuantum. Pabrik T digunakan untuk membuat status T dengan tingkat kesalahan status T logis yang diperlukan dari gerbang T fisik, yang memiliki tingkat kesalahan gerbang T fisik . Biasanya, tingkat kesalahan gerbang T fisik jauh lebih tinggi daripada tingkat kesalahan gerbang T logis yang diperlukan. Dalam beberapa skenario, tingkat kesalahan gerbang T fisik adalah bahwa jauh lebih tinggi dibandingkan dengan tingkat kesalahan status T logis yang diperlukan, sehingga tidak ada pabrik T yang dapat ditemukan yang dapat menghasilkan status T logis dengan kualitas yang cukup.

Error message: No T factory can be found, because the required logical T state error rate is too low

Berikut adalah apa yang dapat Anda lakukan dalam skenario seperti itu:

  • Tingkatkan anggaran kesalahan, baik total atau bagian untuk status T.
  • Kurangi tingkat kesalahan gerbang T fisik dalam parameter qubit.
  • Kurangi jumlah status T dalam program kuantum dengan mengurangi gerbang T, gerbang rotasi, dan gerbang Toffoli.

Masalah: Tingkat kesalahan gerbang T fisik terlalu rendah

Ada juga skenario yang berlawanan, di mana tingkat kesalahan gerbang T fisik lebih rendah dari tingkat kesalahan status T logis yang diperlukan. Dalam kasus seperti itu, tidak ada pabrik T yang diperlukan, karena tingkat kesalahan gerbang T fisik sudah memiliki kualitas yang memadai. Namun, ini membutuhkan pertimbangan yang cermat tentang dampak unit transfer yang mentransfer status T fisik dari jarak kode 1 ke jarak kode algoritma (lihat arXiv:2211.07629, Lampiran C). Secara umum, di hadapan pabrik T, biaya unit transfer dapat diabaikan.

Error message: No T factory can be found, because the required logical T state error rate is too high; transfer units are necessary to perform a resource estimation accurately. One possibility to circumvent this problem is to increase the physical T gate error rate of the qubit parameters.

Berikut adalah apa yang dapat Anda lakukan dalam skenario seperti itu:

  • Tingkatkan tingkat kesalahan gerbang T fisik dalam parameter qubit ke tingkat kesalahan status T logis yang diperlukan.
  • Kurangi anggaran kesalahan atau hanya bagian untuk status T.

Masalah: Tingkat kesalahan harus berupa angka antara 0 dan 1

Tingkat kesalahan harus selalu berupa nilai antara 0 dan 1. Selain itu, agar koreksi kesalahan efektif, tingkat kesalahan fisik untuk gerbang dan pengukuran harus di bawah nilai yang tergantung pada properti kode koreksi kesalahan dan tingkat kesalahan logis yang diperlukan.

Berikut adalah apa yang dapat Anda lakukan dalam skenario seperti itu:

  • Tingkatkan anggaran kesalahan, baik total atau bagian untuk kesalahan logis.
  • Kurangi tingkat kesalahan fisik dalam parameter qubit.

Masalah: Batasan runtime maksimum dan jumlah maksimum kubit fisik saling eksklusif

Estimator Sumber Daya hanya menerima salah satu atau maxDurationmaxPhysicalQubits batasan pada saat itu tetapi tidak dua. Jika Anda memberikan batasan maxDuration dan maxPhysicalQubitsuntuk satu pekerjaan, itu mengembalikan BothDurationAndPhysicalQubitsProvided kesalahan.

Masalah: Jalankan kontainer hitungan perkiraan QIR: simbol yang tidak terdefinisi __quantum__rt__result_record_output

Kesalahan ini dihasilkan dari pembuatan sirkuit QIR untuk Qiskit melalui paket qiskit_qir Python tanpa mengatur record_output parameter ke False.

Untuk menghindari kesalahan ini, lakukan salah satu hal berikut ini:

  • Gunakan paket azure_quantum Python untuk mengirimkan sirkuit Qiskit ke Azure Quantum (disarankan).
  • Saat menggunakan paket qiskit_qir Python, pastikan untuk mengatur record_output parameter sebelum False mengirimkan sirkuit Anda.

Membuat ruang kerja Azure Quantum

Masalah berikut dapat terjadi saat Anda menggunakan portal Azure untuk membuat ruang kerja.

Masalah: Anda tidak dapat mengakses formulir pembuatan ruang kerja di portal Azure; Anda diminta untuk mendaftar langganan sebagai gantinya

Masalah ini terjadi karena Anda tidak memiliki langganan aktif.

Misalnya, Anda mungkin telah mendaftar untuk langganan Azure uji coba gratis 30 hari, yang mencakup Kredit Azure gratis $200 (USD) untuk digunakan di layanan Azure. Perhatikan bahwa kredit Azure ini tidak sama dengan Kredit Azure Quantum dan tidak memenuhi syarat untuk digunakan pada penyedia perangkat keras kuantum. Setelah 30 hari mendaftar atau setelah Anda menggunakan kredit Azure gratis sebesar $200 (mana pun yang terjadi terlebih dahulu), Anda harus meningkatkan ke langganan bayar sesuai pemakaian untuk terus menggunakan layanan Azure Quantum. Setelah Anda memiliki langganan aktif, portal Azure akan memungkinkan Anda mengakses formulir pembuatan ruang kerja.

Untuk melihat daftar langganan dan peran terkait Anda, lihat Memeriksa langganan Anda.

Masalah: Opsi Buat cepat tidak tersedia

Anda harus menjadi Pemilik langganan yang Anda pilih untuk menggunakan opsi Buat cepat . Untuk melihat daftar langganan dan peran terkait Anda, lihat Memeriksa langganan Anda. Jika Anda adalah Kontributor langganan, Anda bisa menggunakan opsi Buat tingkat lanjut untuk membuat ruang kerja.

Masalah: Anda tidak dapat membuat atau memilih grup sumber daya atau akun penyimpanan

Masalah ini terjadi karena Anda tidak memiliki otorisasi yang diperlukan di tingkat langganan, grup sumber daya, atau akun penyimpanan. Untuk informasi selengkapnya tentang tingkat akses yang diperlukan, lihat Persyaratan peran untuk membuat ruang kerja.

Masalah: Pesan kesalahan "Validasi Penyebaran Gagal" muncul setelah Anda memilih Create

Pesan kesalahan ini dapat mencakup detail lebih lanjut seperti "Klien tidak memiliki otorisasi untuk melakukan tindakan."

Masalah ini terjadi karena Anda tidak memiliki otorisasi yang diperlukan di tingkat langganan, grup sumber daya, atau akun penyimpanan. Untuk informasi selengkapnya tentang tingkat akses yang diperlukan, lihat Persyaratan peran untuk membuat ruang kerja.

Jika akses baru-baru ini diberikan, Anda mungkin perlu me-refresh halaman. Terkadang diperlukan waktu hingga satu jam agar penetapan peran baru berlaku atas izin cache di seluruh tumpukan.

Masalah: Anda tidak melihat penyedia perangkat keras kuantum tertentu di tab Penyedia

Masalah ini terjadi karena penyedia tidak mendukung wilayah penagihan tempat langganan Anda diatur. Misalnya, jika langganan Anda diatur di Israel, tab Penyedia tidak akan mencantumkan Rigetti sebagai penyedia yang tersedia. Untuk daftar penyedia dan ketersediaannya menurut negara/wilayah, lihat Ketersediaan global penyedia Azure Quantum.

Masalah: Penyedia pembuatan atau penghapusan ruang kerja gagal dengan "ResourceDeploymentFailure" atau "ProviderDeploymentFailure"

Masalah ini dapat mencakup detail lebih lanjut seperti "ResourceDeploymentFailure - Operasi sumber daya 'AzureAsyncOperationWaiting' yang diselesaikan dengan status penyediaan terminal 'Gagal'.", atau "ProviderDeploymentFailure - Gagal membuat rencana untuk penyedia: <Nama penyedia>".

Ini terjadi karena penyewa belum mengaktifkan pembelian Marketplace Azure. Ikuti langkah-langkah dalam Mengaktifkan pembelian Marketplace Azure untuk mengaktifkan pembelian Marketplace Azure.

Portal Azure Quantum

Masalah: Notebook yang disimpan tidak dimuat

Setelah memilih Buku Catatan di ruang kerja Anda, daftar buku catatan tersimpan Anda menampilkan bilah kemajuan tetapi tidak pernah dimuat.

Ini dapat terjadi karena dua alasan:

  1. Jika akun penyimpanan tidak ada lagi. Ini dapat terjadi jika akun penyimpanan yang ditautkan ke ruang kerja dihapus. Untuk memverifikasi, pilih halaman Gambaran Umum untuk ruang kerja dan pilih tautan ke akun penyimpanan. Jika akun penyimpanan telah dihapus, Anda akan melihat kesalahan 404 - Tidak ditemukan .

  2. Jika identitas terkelola ruang kerja bukan Kontributor ke akun penyimpanan. Periksa apakah identitas ruang kerja (yang menggunakan nama yang sama dengan ruang kerja) masih memiliki penetapan peran Kontributor ke akun penyimpanan. Untuk memverifikasi, pilih halaman Gambaran Umum untuk ruang kerja dan pilih tautan ke akun penyimpanan. Pada halaman Gambaran Umum untuk akun penyimpanan, pilih Kontrol akses (IAM) dan verifikasi bahwa ruang kerja tercantum di bawah Kontributor.