Vad är Q# och Azure Quantum Development Kit?
Azure Quantum Development Kit (QDK) är det SDK som krävs för att samverka med Azure Quantum-tjänsten. Quantum Development KitMed kan du skapa kvantprogram som körs på kvantmaskinvara i Azure Quantum.
Azure QDK är det enda utvecklingspaketet som är redo för feltolerant kvantberäkning (FTQC). Med QDK:t kan du:
Felsöka din kod: Den erbjuder ett felsökningsprogram för kvantberäkning som kan gå igenom klassisk kod och kvantkod. Tillsammans med dess glesa minnesintern simulator ger den snabb simulering av upp till tusentals logiska kvantbitar.
Välj din plattform: QDK:n körs i webbläsaren utan installation och använder VS Code-tillägget på datorn, Mac eller Linux-datorn.
Skriv koden snabbare: Syntaxmarkering och intelligent kodkomplettering med IntelliSense och skriv hela kodblock som assisteras med Copilot.
Kör på val av maskinvara: QDK integreras sömlöst med Azure Quantum för att köra dina algoritmer på en mängd olika kvantdatorer och simulatorer.
Design för FTQC: I kombination med den senaste Azure Quantum Resource Estimator ger den ett språk som är specifikt utformat för kvantberäkning, Q#vilket gör att du inte kan tänka på kvantbitsarkitekturer, abstrahera maskinvaran och låta dig blanda klassisk och kvantberäkning som alla utförs av kvantmaskinen du targetanvänder.
Dricks
Om du vill påskynda din kvantberäkningsresa kan du kolla in Kod med Azure Quantum, en unik funktion på Azure Quantum-webbplatsen. Här kan du köra inbyggda Q# exempel eller egna Q# program, generera ny Q# kod från dina frågor, öppna och köra koden i VS Code för webben med ett klick och ställa frågor till Copilot om kvantberäkning.
Kvantprogrammeringsspråket Q#
QDK innehåller kvantprogrammeringsspråket Q#, ett programmeringsspråk med öppen källkod på hög nivå som gör att du kan fokusera ditt arbete på algoritmnivå för att skapa kvantprogram.
Q# är ett programmeringsspråk med öppen källkod på hög nivå för att utveckla och köra kvantalgoritmer. Det är en del av Quantum Development Kit (QDK) och är utformat för att vara maskinvaruagnostisk, skala till alla kvantprogram och optimera körningen.
Som programmeringsspråk Q# hämtar du välbekanta element från Python, C#och F# och stöder en grundläggande procedurmodell för att skriva program med loopar, if/then-instruktioner och vanliga datatyper. Den introducerar också nya kvantspecifika datastrukturer och åtgärder, till exempel repeat-until-success, som möjliggör integrering av kvantberäkningar och klassiska beräkningar. Till exempel kan flödeskontrollen för ett klassiskt program baseras på resultatet av en kvantmätning.
När du skriver algoritmer bör ett kvantprogrammeringsspråk uppfylla följande krav för språket, kompilatorn och körningen:
- Abstrakta kvantbitar. Kvantalgoritmer använder kvantbitar som inte är knutna till specifik maskinvara eller layout. Kompilatorn och körningen hanterar mappningen från program qubits till fysiska kvantbitar.
- Kvantberäkning och klassisk beräkning. Möjligheten att utföra klassiska beräkningar och kvantberäkningar är viktig i en universell kvantdator.
- Respektera fysikens lagar. Kvantalgoritmer följer kvantfysikens regler. De kan till exempel inte kopiera eller komma åt kvantbitstillståndet direkt.
Mer information finns i användarhandboken för Q# kvantprogrammeringsspråk.
Kom igång med Azure Quantum Development Kit
Det finns mer än ett sätt att komma igång med kvantprogrammering. Du kan välja det alternativ som bäst passar dina behov.
Dricks
Förstagångsanvändare får automatiskt 500 USD kostnadsfria Azure Quantum-krediter för användning med varje deltagande kvantmaskinvaruleverantör. Om du har förbrukat alla krediter och behöver mer kan du ansöka om Azure Quantum Credits-programmet.
Azure Quantum-webbplats
Azure Quantum-webbplatsen är det enklaste sättet att komma igång med kvantprogrammering. Med onlinekodredigeraren på Azure Quantum-webbplatsen kan du köra Q# kod i webbläsaren utan att någon konfiguration krävs och be Copilot om hjälp. Med ett klick i onlinekodredigeraren kan du öppna koden i VS Code på webben och fortsätta arbeta i en förkonfigurerad kvantmiljö utan kostnad.
Kommentar
Azure Quantum-webbplatsen är kostnadsfri och kräver inget Azure-konto.
Exempel i Azure Quantum-portalen
Om du vill börja öva och skriva dina Q# program utan att installera ytterligare programvara kan du använda de värdbaserade Jupyter Notebooks som är tillgängliga på din Azure Quantum-arbetsyta i Azure-portalen. Exempelgalleriet innehåller en samling kommenterade notebook-exempel – välj det exempel som du vill utforska och kör det på molnbaserade simulatorer eller verkliga kvantdatorer.
Kommentar
Om du vill använda de värdbaserade Jupyter Notebooks behöver du ett Azure-konto. Om du inte har något Azure-konto kan du skapa ett konto kostnadsfritt.
Lokal utvecklingsmiljö
Om du föredrar en lokal utvecklingsmiljö kan du installera Azure QDK-tillägget för Visual Studio Code. Azure QDK-tillägget tillhandahåller en komplett utvecklingsmiljö för Q#, inklusive syntaxmarkering, feedback om kodning i realtid och felsökning.
Information om hur du kommer igång med Azure QDK-tillägget finns i följande självstudie.
Dricks
QDK innehåller en uppsättning inbyggda Q# exempel som du kan använda för att lära dig mer om Q# och kvantberäkning. Om du vill visa exemplen öppnar du en ny Q# fil och skriver sample
och väljer sedan det exempel som du vill visa i listan med alternativ.
Arbetsflöde för kvantutveckling
Följande diagram visar de steg genom vilka ett kvantprogram går från idé till fullständig implementering på Azure Quantum och de verktyg som erbjuds för varje steg.
Välj utvecklingsmiljö
Kör dina kvantprogram i önskad utvecklingsmiljö. Du kan använda onlinekodredigeraren på Azure Quantum-webbplatsen, de värdbaserade Jupyter Notebooks som är tillgängliga på Azure Quantum-arbetsytan i Azure-portalen eller i din egen lokala utvecklingsmiljö.
Skriva ditt kvantprogram
QDK erbjuder stöd för Q#, men även för Qiskit- och Cirq-språk för kvantberäkning.
För att komma igång kan du följa självstudierna Q# och utforska kvantbegrepp som superposition, sammanflätning, Grover kvantalgoritm och andra kvantfenomen.
Integrera med Python
Med QDK kan du integrera Q# program med Python. Du kan använda ett Python-program för att anropa Q# åtgärder.
Beräkna resurser
Innan du kör kvantmaskinvara måste du ta reda på om programmet kan köras på befintlig maskinvara och hur många resurser det kommer att förbruka.
Med Azure Quantum Resource Estimator kan du utvärdera arkitektoniska beslut, jämföra kvantbitstekniker och fastställa de resurser som behövs för att köra en viss kvantalgoritm. Du kan välja mellan fördefinierade feltoleranta protokoll och ange antaganden för den underliggande fysiska qubitmodellen.
Mer information finns i Kör din första resursuppskattning.
Kommentar
Azure Quantum Resources Estimator är kostnadsfri och kräver inget Azure-konto.
Köra programmet i simulatorn
När du kompilerar och kör ett kvantprogram skapar QDK en instans av kvantsimulatorn och skickar koden till den Q# . Simulatorn använder Q#-koden för att skapa kvantbitar (simuleringar av kvantpartiklar) och tillämpa transformeringar för att ändra deras tillstånd. Resultatet av kvantåtgärderna i simulatorn returneras sedan till programmet. Isolering av Q#-koden i simulatorn ser till att algoritmerna följer kvantfysikens lagar och att de körs korrekt på kvantdatorer.
Skicka jobb till Azure Quantum-tjänsten
Du kan skicka dina Q# program (även kallade jobb) till Azure Quantum via önskad utvecklingsmiljö, både lokalt och online. Mer information finns i skicka Q# jobb. Du kan också köra och skicka kvantkretsar skrivna på Qiskit- och Cirq-språk.
Azure Quantum erbjuder några av de mest övertygande och mångsidiga kvantmaskinvara som finns i dag från branschledare. Se Quantum Computing-leverantörer för den aktuella listan över maskinvaruleverantörer som stöds.
Kommentar
Den molnbaserade Quantinuum H-seriens emulatortarget är tillgänglig utan ett Azure-konto. Om du vill skicka ett jobb till resten av Azure Quantum-leverantörerna behöver du ett Azure-konto och en kvantarbetsyta. Om du inte har någon kvantarbetsyta kan du läsa Skapa en Azure Quantum-arbetsyta.
Följande diagram visar det grundläggande arbetsflödet när du har skickat jobbet:
Relaterat innehåll
Om du vill veta mer ger Quantum Katas en bra introduktion till kvantberäkningsbegrepp som vanliga kvantåtgärder och hur du manipulerar kvantbitar.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för