Configurare Quantum Development Kit
Informazioni sulle diverse opzioni di ambiente disponibili per sviluppare applicazioni di calcolo quantistico e ottimizzazione usando il servizio Azure Quantum .
Ogni ambiente usa Quantum Development Kit (QDK), un set open source di strumenti che include il linguaggio di programmazione quantistico Q# e le librerie di accompagnamento. Con QDK è possibile sviluppare applicazioni di calcolo quantistico usando diversi IDE e linguaggi ed eseguirli in simulatori quantistici o hardware quantistico usando Azure Quantum.
QDK offre:
- Pacchetti Python per inviare qiskit e applicazioni Cirq, Q# applicazioni o problemi di ottimizzazione (QIO) al servizio Azure Quantum
- Linguaggio di programmazione e librerie Q#
- I kernel IQ# per l'esecuzione di Q# in Jupyter Notebook
- Estensioni per Visual Studio Code e Visual Studio
- Estensione dell'interfaccia della riga di comando di Azure per gestire il servizio Azure Quantum e inviare Q# applicazioni
- API per l'uso di linguaggi Python e .NET (C#, F# e VB.NET) con Q#
Scegliere tra diverse opzioni di ambiente di sviluppo:
- Usare una Jupyter Notebook nel portale di Azure Quantum e inviare processi ad Azure Quantum (scelta consigliata)
- Usare l'IDE e il linguaggio preferiti in locale e inviare processi ad Azure Quantum
- Usare un'immagine Docker preconfigurato
Jupyter Notebook
I notebook di Jupyter consentono l'esecuzione di codice sul posto, unitamente a istruzioni, note e altro contenuto. Questo ambiente è ideale per la scrittura di codice e Q# Python con spiegazioni incorporate o la creazione di esercitazioni interattive sul calcolo quantistico. L'ambiente Jupyter Notebooks è integrato nel portale di Azure Quantum o può essere installato nel computer locale.
Nota
L'accesso all'hardware quantistico remoto e l'invio di processi al servizio Azure Quantum richiede un account Azure con una sottoscrizione attiva. È possibile creare gratuitamente un account.
Usare una Jupyter Notebook nel portale di Azure Quantum e inviare processi ad Azure Quantum (scelta consigliata)
Il portale di Azure Quantum offre un ambiente di sviluppo predefinito in cui è possibile creare, caricare, archiviare ed eseguire il codice quantistico in Jupyter Notebook, usando simulatori quantistici e destinazioni hardware quantistiche. Viene fornita una raccolta di jupyter Notebook di esempio per iniziare a usare la programmazione quantistica in Q#, l'esecuzione di circuiti Qiskit e Cirq o l'invio di problemi di ottimizzazione. Dal portale è anche possibile gestire aree di lavoro quantistiche, processi, attività, crediti e utilizzo e controllo di accesso. Per iniziare, vedere Creare un'area di lavoro di Azure Quantum.
Suggerimento
I primi utenti ottengono automaticamente $ 500 (USD)Crediti Azure Quantum da usare con ogni provider hardware quantistico partecipante. Se sono stati utilizzati tutti i crediti e sono necessari crediti aggiuntivi, è possibile candidarsi al programma Azure Quantum Credits.
Usare l'IDE e il linguaggio preferiti in locale e inviare processi ad Azure Quantum
L'installazione di QDK nel computer locale offre il supporto per Jupyter Notebook, Python e Q#, insieme alle estensioni per Visual Studio Code e Visual Studio. Sviluppare applicazioni di calcolo quantistico nell'IDE e nel linguaggio preferito ed eseguirle in simulatori quantistici, hardware quantistico o risolutori di ottimizzazione usando il servizio Azure Quantum.
Alcuni scenari in cui è preferibile un ambiente locale:
- È disponibile un ambiente personalizzato o strumenti preferiti che non sono disponibili online.
- È necessario il controllo del codice sorgente nel progetto.
- Si sta lavorando con un progetto multi-file.
Nota
L'accesso all'hardware quantistico remoto e l'invio di processi al servizio Azure Quantum richiede un account Azure con una sottoscrizione attiva. È possibile creare gratuitamente un account.
Selezionare l'IDE preferito:
- Usare Q# e Python con Visual Studio Code o Visual Studio
- Usare Python con i risolutori di ottimizzazione Qiskit, Cirq o Azure Quantum
- Usare Q# e Python con Jupyter Notebook
- Usare QDK con un'immagine Docker preconfigurata
Usare Q# e Python con Visual Studio e Visual Studio Code
Sebbene sia possibile compilare Q# applicazioni in qualsiasi IDE, è consigliabile usare Visual Studio Code (VS Code) o l'IDE di Visual Studio per lo sviluppo di Q# applicazioni. Lo sviluppo in uno di questi ambienti sfrutta le funzionalità avanzate dell'estensione Quantum Development Kit (QDK), che include l'invio di processi quantistici tramite l'interfaccia della riga di comando di Azure, avvisi, evidenziazione della sintassi, modelli di progetto e altro ancora.
In alternativa, è possibile passare a portale di Azure e nella panoramica dell'area di lavoro > Quantum è disponibile un collegamento alla guida all'installazione della configurazione locale nella parte inferiore della pagina.
Prerequisito
Interfaccia della riga di comando di Azure
L'interfaccia della riga di comando di Azure è il metodo preferito per l'invio di processi quantistici usando una finestra del terminale in VS Code o Visual Studio.
Installare l'interfaccia della riga di comando di Azure.
Installare l'estensione dell'interfaccia della riga di comando
quantum
di Azure più recente. Aprire un prompt dei comandi ed eseguire il comando seguente:az extension add --upgrade -n quantum
Configurare QDK per l'ambiente preferito da una delle opzioni seguenti:
- Scaricare e installare la versione 1.52.0 o successiva di VS Code (Windows, Linux e Mac).
- Installare QDK per VS Code.
Nota
Se si è un utente Mac basato su Arm, assicurarsi di installare .NET SDK 6.0 o versione successiva, perché le versioni precedenti non sono supportate in questa architettura.
Per testare l'ambiente, vedere Inviare Q# processi ad Azure Quantum.
Usare Python con Qiskit o Cirq o risolutori di ottimizzazione di Azure Quantum
È possibile usare il azure-quantum
pacchetto Python per inviare ed eseguire processi Qiskit o Cirq oppure inviare processi di ottimizzazione di ispirazione quantistica ai risolutori di ottimizzazione di Azure Quantum.
Per installare il azure-quantum
pacchetto Python
Installare Python 3.9 o versione successiva, se non è già stato fatto.
Installare PIP e assicurarsi di avere la versione 19.2 o successiva.
Installare il pacchetto Python
azure-quantum
. Usare il flag--upgrade
per assicurarsi di ottenere la versione più recente.Per installare il pacchetto
azure-quantum
senza dipendenze facoltative, eseguire:pip install --upgrade azure-quantum
Per installare le dipendenze facoltative necessarie per l'invio di programmi Qiskit, eseguire l'installazione usando il tag
[qiskit]
:pip install --upgrade azure-quantum[qiskit]
Per installare le dipendenze facoltative necessarie per l'invio di programmi Cirq, eseguire l'installazione usando il tag
[cirq]
:pip install --upgrade azure-quantum[cirq]
Per testare l'ambiente, vedere Creare un generatore di numeri casuali basato su quantistico o Inviare un circuito con Qiskit.
Usare Q# e Python con Jupyter Notebook
Tutti i componenti necessari per un ambiente Juptyer Notebooks possono essere configurati con una singola installazione conda.
Nota
Sebbene sia consigliata un'installazione conda, se si preferisce non installare conda, è anche possibile configurare l'ambiente usando l'interfaccia della riga di comando di .NET.
- Installazione con conda (scelta consigliata)
- Installazione con l'interfaccia della riga di comando .NET e pip (opzione avanzata)
Installare Miniconda o Anaconda. Consultare la guida all'installazione in caso di dubbi su eventuali passaggi. Nota: è richiesta l'installazione a 64 bit.
Inizializzare conda per la shell preferita con il comando
conda init
di inizializzazione. La procedura seguente è adattata al sistema operativo in uso:(Windows) Aprire un prompt Anaconda cercandolo nel menu di avvio. Eseguire quindi il comando di inizializzazione per la shell, ad esempio,
conda init powershell cmd.exe
configura sia il Windows PowerShell che il prompt dei comandi. È quindi possibile chiudere questo prompt.Importante
Per usare PowerShell, Conda configurerà uno script di avvio da eseguire ogni volta che si avvia un'istanza di PowerShell. Per impostazione predefinita, l'esecuzione dello script verrà bloccata in Windows e richiede la modifica dei criteri di esecuzione di PowerShell con il comando seguente (eseguito dall'interno di PowerShell):
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
(Linux) Se non è ancora stato fatto durante l'installazione, è comunque possibile inizializzare conda ora. Aprire un terminale e passare alla directory
bin
all'interno del percorso di installazione selezionato, ad esempio/home/ubuntu/miniconda3/bin
. Eseguire quindi il comando appropriato per la shell, ad esempio./conda init bash
. Chiudere il terminale per applicare le modifiche.Da un nuovo terminale, creare e attivare un nuovo ambiente conda denominato
qsharp-env
con i pacchetti necessari, inclusi Jupyter Notebook e IQ#, eseguendo i comandi seguenti:conda create -n qsharp-env -c microsoft qsharp notebook conda activate qsharp-env
Infine, eseguire
python -c "import qsharp"
per verificare l'installazione e popolare la cache del pacchetto locale con tutti i componenti di QDK necessari.
È ora disponibile sia il pacchetto Python qsharp che il kernel IQ# per Jupyter, consentendo di compilare ed eseguire Q# operazioni da Python e Q# Jupyter Notebooks. Per testare l'ambiente, vedere Inviare un programma quantistico.
Usare QDK con un'immagine Docker preconfigurata (avanzata)
È possibile usare l'immagine Docker del QDK nell'installazione locale di Docker o nel cloud tramite qualsiasi servizio che supporti immagini Docker, ad esempio Istanze di Azure Container.
È possibile scaricare l'immagine Docker IQ# da https://github.com/microsoft/iqsharp/#using-iq-as-a-container.
È anche possibile usare Docker con un contenitore di sviluppo remoto di Visual Studio Code per definire rapidamente gli ambienti di sviluppo. Per altre informazioni sui contenitori di sviluppo di VS Code, vedere https://github.com/microsoft/Quantum/tree/master/.devcontainer.
Passaggi successivi
Con il portale di Azure:
- Eseguire i notebook di Jupyter su Azure Quantum
- Creare e inviare un circuito Qiskit all'hardware quantistico.
- Creare e inviare un problema di ottimizzazione ad Azure Quantum.
Uso dell'ambiente locale: