Apa itu Q# dan Azure Quantum Development Kit?

Azure Quantum Development Kit (Modern QDK) adalah SDK yang diperlukan untuk berinteraksi dengan layanan Azure Quantum. Quantum Development KitDengan , Anda dapat membangun program kuantum yang berjalan pada perangkat keras kuantum di Azure Quantum.

Catatan

Microsoft Quantum Development Kit (QDK Klasik) tidak akan lagi didukung setelah 30 Juni 2024. Jika Anda adalah pengembang QDK yang sudah ada, kami sarankan Anda beralih ke Azure Quantum Development Kit baru (Modern QDK) untuk terus mengembangkan solusi kuantum. Untuk informasi selengkapnya, lihat Memigrasikan kode Anda Q# ke QDK Modern.

Modern QDK adalah satu-satunya kit pengembangan yang siap untuk Fault-Tolerant Quantum Computing (FTQC). Dengan QDK Modern, Anda dapat:

  • Debug kode Anda: Ini menawarkan debugger komputasi kuantum yang dapat melangkah melalui kode klasik dan kuantum. Dipasangkan dengan simulator dalam memorinya yang jarang menyediakan simulasi cepat hingga ribuan qubit logis.

  • Pilih platform Anda: QDK Modern berjalan di browser web Anda tanpa penginstalan yang diperlukan, dan dengan ekstensi Visual Studio Code di komputer PC, Mac, atau Linux Anda.

  • Tulis kode Anda lebih cepat: Penyorotan sintaksis dan penyelesaian kode cerdas dengan IntelliSense dan tulis seluruh blok kode yang dibantu dengan Copilot.

  • Jalankan pada perangkat keras pilihan Anda: QDK terintegrasi dengan mulus dengan Azure Quantum untuk menjalankan algoritma Anda pada berbagai komputer kuantum dan simulator.

  • Desain untuk FTQC: Dipasangkan dengan Azure Quantum Resource Estimator yang canggih, azure Quantum Resource Estimator menyediakan bahasa yang dirancang khusus untuk komputasi kuantum, Q#, membebaskan Anda dari memikirkan arsitektur qubit, mengabstraksi perangkat keras dan memungkinkan Anda mencampur komputasi klasik dan kuantum yang semuanya dilakukan oleh mesin kuantum yang targetAnda ing.

Tip

Jika Anda ingin mempercepat perjalanan komputasi kuantum Anda, lihat Kode dengan Azure Quantum, fitur unik situs web Azure Quantum. Di sini, Anda dapat menjalankan sampel bawaan Q# atau program Anda sendiri Q# , menghasilkan kode baru Q# dari perintah Anda, membuka dan menjalankan kode Anda di Visual Studio Code untuk Web dengan satu klik, dan mengajukan pertanyaan apa pun tentang komputasi kuantum.

Bahasa pemrograman kuantum Q#

QDK Modern mencakup bahasa pemrograman kuantum , bahasa Q#pemrograman sumber terbuka tingkat tinggi yang memungkinkan Anda memfokuskan pekerjaan Anda di tingkat algoritma untuk membuat program kuantum.

Q# adalah bahasa pemrograman sumber terbuka, tingkat tinggi untuk mengembangkan dan menjalankan algoritma kuantum. Ini adalah bagian Quantum Development Kit dari (QDK) dan dirancang untuk menjadi agnostik perangkat keras, menskalakan ke berbagai aplikasi kuantum, dan untuk mengoptimalkan eksekusi.

Sebagai bahasa pemrograman, Q# menggambar elemen yang akrab dari Python, C#, dan F#, dan mendukung model prosedural dasar untuk menulis program dengan perulangan, pernyataan if/then, dan jenis data umum. Ini juga memperkenalkan struktur dan operasi data khusus kuantum baru, seperti repeat-until-success, yang memungkinkan integrasi komputasi kuantum dan klasik. Misalnya, kontrol alur program klasik dapat didasarkan pada hasil pengukuran kuantum.

Saat menulis algoritma, bahasa pemrograman kuantum harus memenuhi persyaratan berikut untuk bahasa, pengkompilasi, dan runtime:

  • Abstrak qubits. Algoritma kuantum menggunakan qubit yang tidak terkait dengan perangkat keras atau tata letak tertentu. Kompilator dan runtime menangani pemetaan dari program qubits ke qubit fisik.
  • Komputasi kuantum dan klasik. Kemampuan untuk melakukan komputasi klasik dan kuantum sangat penting dalam komputer kuantum universal.
  • Menghormati hukum fisika. Algoritma kuantum mengikuti aturan fisika kuantum. Misalnya, mereka tidak dapat menyalin atau mengakses status qubit secara langsung.

Untuk informasi selengkapnya, lihat Q# panduan pengguna bahasa pemrograman kuantum.

Mulai menggunakan Azure Quantum Development Kit

Ada lebih dari satu cara untuk memulai pemrograman kuantum. Anda dapat memilih opsi yang paling sesuai dengan kebutuhan Anda.

Tip

Pengguna pertama kali secara otomatis mendapatkan kredit Azure Quantumgratis $500 (USD) untuk digunakan dengan setiap penyedia perangkat keras kuantum yang berpartisipasi. Jika semua kredit telah digunakan dan Anda membutuhkan lebih banyak, Anda dapat mendaftar ke Program Kredit Azure Quantum.

Situs web Azure Quantum

Situs web Azure Quantum adalah cara termampu untuk memulai pemrograman kuantum. Dengan editor kode online di situs web Azure Quantum, Anda dapat menjalankan Q# kode di browser Anda tanpa pengaturan yang diperlukan dan meminta bantuan Copilot. Dengan satu klik di editor kode online, Anda dapat membuka kode Anda di Visual Studio Code di web dan terus bekerja di lingkungan kuantum yang telah dikonfigurasi sebelumnya secara gratis.

Catatan

Situs web Azure Quantum gratis dan tidak memerlukan akun Azure.

Sampel di portal Azure Quantum

Jika Anda ingin mulai berlatih dan menulis program tanpa Q# menginstal perangkat lunak tambahan, Anda dapat menggunakan Jupyter Notebook yang dihosting yang tersedia di ruang kerja Azure Quantum Anda di portal Azure. Galeri sampel berisi kumpulan sampel notebook yang diannotasi - pilih sampel yang ingin Anda jelajahi dan jalankan pada simulator berbasis cloud atau komputer kuantum nyata.

Catatan

Untuk menggunakan Jupyter Notebook yang dihosting, Anda memerlukan akun Azure. Jika Anda tidak memiliki akun Azure, Anda dapat membuat akun secara gratis.

Lingkungan pengembangan lokal

Jika Anda lebih suka lingkungan pengembangan lokal, Anda dapat menginstal ekstensi QDK Modern untuk Visual Studio Code. Ekstensi QDK Modern menyediakan lingkungan pengembangan berfungsi lengkap untuk Q#, termasuk penyorotan sintaks, umpan balik pengkodian realtime, dan penelusuran kesalahan.

Untuk mulai menggunakan ekstensi QDK Modern, lihat Tutorial berikut.

Tip

QDK Modern menyertakan sekumpulan sampel bawaan Q# yang dapat Anda gunakan untuk mempelajari selengkapnya tentang dan komputasi Q# kuantum. Untuk melihat sampel, buka file baru Q# dan ketik sample, lalu pilih sampel yang ingin Anda lihat dari daftar opsi.

Alur kerja pengembangan kuantum

Diagram berikut menunjukkan tahapan di mana program kuantum berubah dari ide untuk menyelesaikan implementasi di Azure Quantum, dan alat yang ditawarkan untuk setiap tahap.

Diagram memperlihatkan alur kerja pengembangan pemrograman kuantum.

Memilih lingkungan pengembangan Anda

Jalankan program kuantum Anda di lingkungan pengembangan pilihan Anda. Anda dapat menggunakan editor kode online di situs web Azure Quantum, Jupyter Notebook yang dihosting yang tersedia di ruang kerja Azure Quantum Anda di portal Azure, atau lingkungan pengembangan lokal Anda sendiri.

Menulis program kuantum Anda

QDK menawarkan dukungan untuk Q#, tetapi juga untuk bahasa Qiskit, dan Cirq untuk komputasi kuantum.

Untuk memulai, Anda dapat mengikuti Q# tutorial dan menjelajahi konsep kuantum seperti superposisi, entanglemen, algoritma kuantum Grover, dan fenomena kuantum lainnya.

Integrasikan dengan Python

QDK memungkinkan Anda untuk mengintegrasikan Q# program dengan Python. Anda dapat menggunakan program Python untuk memanggil Q# operasi.

Memperkirakan sumber daya

Sebelum berjalan pada perangkat keras kuantum, Anda harus mencari tahu apakah program Anda dapat berjalan pada perangkat keras yang ada, dan berapa banyak sumber daya yang akan digunakannya.

Azure Quantum Resource Estimator memungkinkan Anda menilai keputusan arsitektur, membandingkan teknologi qubit, dan menentukan sumber daya yang diperlukan untuk menjalankan algoritma kuantum tertentu. Anda dapat memilih dari protokol toleran terhadap kesalahan yang telah ditentukan sebelumnya dan menentukan asumsi model kubit fisik yang mendasarinya.

Untuk informasi selengkapnya, lihat Menjalankan perkiraan sumber daya pertama Anda.

Catatan

Estimator Sumber Daya Azure Quantum gratis dan tidak memerlukan akun Azure.

Jalankan program dalam simulator

Ketika Anda mengkompilasi dan menjalankan program kuantum, QDK membuat instans simulator kuantum dan meneruskan Q# kode ke dalamnya. Simulator menggunakan kode Q# untuk membuat qubit (simulasi partikel kuantum) dan menerapkan transformasi untuk memodifikasi kondisi mereka. Hasil operasi kuantum di simulator kemudian dikembalikan ke program. Mengisolasi kode Q# di simulator memastikan bahwa algoritma mengikuti hukum fisika kuantum dan dapat berjalan dengan benar pada komputer kuantum.

Mengirimkan pekerjaan ke layanan Azure Quantum

Anda dapat mengirimkan program Anda Q# (juga dikenal sebagai pekerjaan) ke Azure Quantum melalui lingkungan pengembangan pilihan Anda, baik secara lokal maupun online. Untuk informasi selengkapnya, lihat cara mengirimkan Q# pekerjaan. Anda juga dapat menjalankan dan mengirimkan sirkuit kuantum yang ditulis dalam bahasa Qiskit dan Cirq.

Azure Quantum menawarkan beberapa perangkat keras kuantum paling menarik dan beragam yang tersedia saat ini dari para pemimpin industri. Lihat Penyedia komputasi Quantum untuk daftar penyedia perangkat keras yang didukung saat ini.

Catatan

Emulator targetQuantinuum H-Series berbasis cloud tersedia tanpa akun Azure. Untuk mengirimkan pekerjaan ke penyedia Azure Quantum lainnya, Anda memerlukan akun Azure dan ruang kerja kuantum. Jika Anda tidak memiliki ruang kerja kuantum, lihat Membuat ruang kerja Azure Quantum.

Diagram berikut menunjukkan alur kerja dasar setelah Anda mengirimkan pekerjaan Anda:

Diagram memperlihatkan alur kerja setelah pengiriman pekerjaan ke Azure Quantum.

Jika Anda ingin mempelajari lebih lanjut, Quantum Katas memberikan pengantar yang baik untuk konsep komputasi kuantum seperti operasi kuantum umum dan cara memanipulasi qubit.