Mik azok és Q# az Azure Quantum Development Kit?

Az Azure Quantum Development Kit (Modern QDK) az Azure Quantum szolgáltatáshoz való kapcsolódáshoz szükséges SDK. Quantum Development KitA használatával olyan kvantumprogramokat hozhat létre, amelyek kvantumhardveren futnak az Azure Quantum-ban.

Megjegyzés

A Microsoft Quantum Development Kit (klasszikus QDK) 2024. június 30. után már nem támogatott. Ha Ön már QDK-fejlesztő, javasoljuk, hogy váltson az új Azure-ra Quantum Development Kit (Modern QDK) a kvantummegoldások fejlesztésének folytatásához. További információ: A kód migrálása Q# a modern QDK-ba.

A Modern QDK az egyetlen olyan fejlesztési készlet, amely készen áll a kvantum-számítástechnika (FTQC) Fault-Tolerant. A Modern QDK-val a következőt teheti:

  • Hibakeresés a kódban: Egy kvantum-számítástechnika hibakeresőt kínál, amely képes a klasszikus és a kvantumkódon keresztül haladni. A kevés memóriában futó szimulátorral párosítva akár több ezer logikai qubit gyors szimulációját biztosítja.

  • Válassza ki a platformot: A Modern QDK a webböngészőben fut, nincs szükség telepítésre, és a VS Code-bővítményével PC-n, Macen vagy Linux rendszerű gépen.

  • Írja meg gyorsabban a kódot: Szintaxiskiemelés és intelligens kódkiegészítés az IntelliSense használatával, és teljes kódblokkok írása a Copilot segítségével.

  • Futtassa a kívánt hardvert: A QDK zökkenőmentesen integrálható az Azure Quantum-tal az algoritmusok számos kvantumszámítógépen és szimulátoron való futtatásához.

  • Az FTQC tervezése: Az Azure Quantum Resource Estimator modern verziójával párosítva egy kifejezetten a kvantum-számítástechnikához tervezett nyelvet biztosít, amely lehetővé teszi a Q#qubit-architektúrák átgondolását, a hardver absztrakcióját, és lehetővé teszi a klasszikus és kvantumszámítások kombinálását, amelyeket az éppen targethasznált kvantumgép hajt végre.

Tipp

Ha fel szeretné gyorsítani a kvantum-számítástechnika folyamatát, tekintse meg a Code with Azure Quantum (Kód az Azure Quantum használatával) című témakört, amely az Azure Quantum webhelyének egyedülálló funkciója. Itt futtathat beépített mintákat vagy saját Q# programokat, új Q# kódot hozhat létre az üzeneteiből, megnyithatja és futtathatja a kódot a WEBES VS Code-banQ# egy kattintással, és kérdéseket tehet fel a Copilotnak a kvantum-számítástechnikával kapcsolatban.

A kvantumprogramozási nyelv Q#

A Modern QDK tartalmazza a kvantumprogramozási nyelvet Q#, amely egy magas szintű , nyílt forráskódú programozási nyelv, amely lehetővé teszi, hogy a munkáját az algoritmus szintjén összpontosítsa a kvantumprogramok létrehozásához.

Q# egy nyílt forráskódú, magas szintű programozási nyelv kvantum-algoritmusok fejlesztéséhez és futtatásához. A (QDK) része Quantum Development Kit , és úgy lett kialakítva, hogy hardveres agnosztikus legyen, skálázza a kvantumalkalmazások teljes körét, és optimalizálja a végrehajtást.

Programozási nyelvként Q# ismerős elemeket rajzol a Pythonból, a C#-ból és az F#-ból, és támogatja a programok ciklusokkal, ha/akkor utasításokkal és gyakori adattípusokkal való írásának alapszintű eljárási modelljét. Emellett új kvantumspecifikus adatstruktúrákat és műveleteket vezet be, például a sikeres ismétlést, amely lehetővé teszi a kvantum- és klasszikus számítások integrálását. Egy klasszikus program folyamatvezérlése például egy kvantummérés eredményén alapulhat.

Algoritmusok írásakor a kvantumprogramozási nyelvnek meg kell felelnie a nyelvre, a fordítóra és a futtatókörnyezetre vonatkozó alábbi követelményeknek:

  • Absztrakt qubitek. A kvantum-algoritmusok olyan qubiteket használnak, amelyek nincsenek adott hardverhez vagy elrendezéshez kötve. A fordító és a futtatókörnyezet kezeli a program qubitjeiről a fizikai qubitekre való leképezést.
  • Kvantum- és klasszikus számítás. A klasszikus és kvantumszámítások végrehajtásának képessége alapvető fontosságú egy univerzális kvantumszámítógépen.
  • A fizika törvényeinek tiszteletben tartása. A kvantum-algoritmusok a kvantumfizika szabályait követik. Nem tudják például közvetlenül másolni vagy elérni a qubit állapotát.

További információt a kvantumprogramozási nyelv felhasználói útmutatójában Q#talál.

Ismerkedés az Azure-ral Quantum Development Kit

A kvantumprogramozás használatának több módja is van. Kiválaszthatja az igényeinek leginkább megfelelő lehetőséget.

Tipp

Az első alkalommal használt felhasználók automatikusan ingyenes 500 DOLLÁR (USD) ingyenesAzure Quantum Credit-kreditet kapnak az egyes részt vevő kvantumhardver-szolgáltatókhoz való használatra. Ha felhasználta az összes kreditet, és többre van szüksége, az Azure Quantum Credits programra is jelentkezhet.

Az Azure Quantum webhelye

Az Azure Quantum webhelye a legegyszerűbb módja a kvantumprogramozás megkezdésének. Az Azure Quantum webhelyén található online kódszerkesztővel futtathat Q# kódot a böngészőben, és nincs szükség beállításra, és kérjen segítséget a Copilottól. Az online kódszerkesztőben egy kattintással megnyithatja a kódot a VS Code-ban a weben , és ingyenesen folytathatja a munkát egy előre konfigurált kvantumkörnyezetben.

Megjegyzés

Az Azure Quantum webhelye ingyenes, és nem igényel Azure-fiókot.

Minták az Azure Quantum Portalon

Ha további szoftverek telepítése nélkül szeretné megkezdeni a programok gyakorlását és írásátQ#, használhatja az Azure Quantum-munkaterületen elérhető üzemeltetett Jupyter Notebookokat a Azure Portal. A mintagyűjtemény jegyzetekkel ellátott jegyzetfüzetminták gyűjteményét tartalmazza – válassza ki a megvizsgálandó mintát, és futtassa azt felhőalapú szimulátorokon vagy valós kvantumszámítógépeken.

Megjegyzés

Az üzemeltetett Jupyter-notebookok használatához Azure-fiókra van szüksége. Ha nem rendelkezik Azure-fiókkal, ingyenesen hozhat létre fiókot.

Helyi fejlesztési környezet

Ha helyi fejlesztési környezetet szeretne, telepítheti a Visual Studio Code modern QDK-bővítményét. A Modern QDK-bővítmény teljes körű fejlesztési környezetet biztosít a Q#számára, beleértve a szintaxis kiemelését, a valós idejű kódolási visszajelzéseket és a hibakeresést.

A Modern QDK-bővítmény használatának megkezdéséhez tekintse meg az alábbi oktatóanyagot.

Tipp

A Modern QDK beépített mintákat tartalmaz Q# , amelyekkel többet tudhat meg a kvantum-számítástechnikáról Q# . A minták megtekintéséhez nyisson meg egy új Q# fájlt, és írja be a parancsot sample, majd válassza ki a megtekinteni kívánt mintát a lehetőségek listájából.

Kvantumfejlesztési munkafolyamat

Az alábbi ábra azokat a fázisokat mutatja be, amelyeken keresztül egy kvantumprogram az ötlettől az Azure Quantum implementációjának befejezéséig tart, valamint az egyes szakaszokhoz kínált eszközöket.

A kvantumprogramozási fejlesztés munkafolyamatát bemutató ábra.

A fejlesztőkörnyezet kiválasztása

Futtassa a kvantumprogramokat az előnyben részesített fejlesztési környezetben. Használhatja az online kódszerkesztőt az Azure Quantum webhelyén, az Azure Quantum-munkaterületen elérhető üzemeltetett Jupyter-notebookokat a Azure Portal, vagy saját helyi fejlesztési környezetét.

A kvantumprogram írása

A QDK támogatja a Q#, de a Qiskit és a Cirq nyelveket is a kvantum-számítástechnikához.

Első lépésként kövesse az oktatóanyagokat, és fedezze fel az Q# olyan kvantumfogalmakat, mint a szuperpozíció, az összefonódás, a Grover kvantum-algoritmusa és más kvantumjelenségek.

Integrálás a Pythonnal

A QDK lehetővé teszi, hogy programokat integráljon Q# a Pythonnal. A műveletek meghívásához Q#Python-programot is használhat.

Erőforrások becslése

Mielőtt kvantumhardveren futna, ki kell derítenie, hogy a program futhat-e meglévő hardveren, és hány erőforrást fog használni.

Az Azure Quantum Resource Estimator lehetővé teszi az architekturális döntések értékelését, a qubittechnológiák összehasonlítását és az adott kvantumalgoritmus végrehajtásához szükséges erőforrások meghatározását. Választhat az előre definiált hibatűrő protokollok közül, és megadhatja a mögöttes fizikai qubitmodell feltételezéseit.

További információ: Az első erőforrás-becslés futtatása.

Megjegyzés

Az Azure Quantum Resources Becslő ingyenes, és nem igényel Azure-fiókot.

Program futtatása szimulátorban

Kvantumprogram lefordításakor és futtatásakor a QDK létrehozza a kvantumszimulátor egy példányát, és átadja neki a Q# kódot. A szimulátor a Q#-kóddal hoz létre qubiteket (kvantumrészecskék szimulációit), és átalakításokat alkalmaz az állapotuk módosításához. A rendszer ezután visszaadja a programnak a kvantumműveletek eredményeit. A Q#-kód a szimulátoron belüli elkülönítése biztosítja, hogy az algoritmusok kövessék a kvantumfizika törvényeit, és megfelelően fussanak a kvantumszámítógépeken.

Feladatok elküldése az Azure Quantum szolgáltatásba

A programokat (más néven feladatokat) az Előnyben részesített fejlesztési környezetben, helyileg és online is elküldheti Q# az Azure Quantumnak. További információ: Feladatok elküldéseQ#. Qiskit és Cirq nyelven írt kvantum-kapcsolatcsoportokat is futtathat és küldhet be.

Az Azure Quantum a legkülönfélébb és legváltozatosabb kvantumhardvereket kínálja ma az iparági vezetőktől. A támogatott hardverszolgáltatók aktuális listájáért lásd: Kvantum-számítástechnikai szolgáltatók .

Megjegyzés

A felhőalapú Quantinuum H-Series Emulatortarget Azure-fiók nélkül érhető el. Ha feladatokat szeretne küldeni a többi Azure Quantum-szolgáltatónak, szüksége van egy Azure-fiókra és egy kvantum-munkaterületre. Ha nincs kvantum-munkaterülete, olvassa el az Azure Quantum-munkaterület létrehozása című témakört.

Az alábbi diagram a feladat elküldése után az alapszintű munkafolyamatot mutatja be:

Az Azure Quantumba való feladatbeküldés utáni munkafolyamatot bemutató ábra.

Ha többet szeretne megtudni, a Quantum Katas jó bevezetést nyújt a kvantum-számítástechnika olyan fogalmaiba , mint a gyakori kvantumműveletek és a qubitek manipulálása.