Configurare l'oggetto Quantum Development Kit
Informazioni sulle diverse opzioni di ambiente disponibili per sviluppare applicazioni quantistiche di calcolo e ottimizzazione usando il servizio Azure Quantum .
Ogni ambiente usa il QDK , un set di strumenti open source che include ilQuantum Development Kit linguaggio Q# di programmazione quantistico e le librerie di accompagnamento. Con QDK è possibile sviluppare applicazioni quantistiche di calcolo usando diversi ID e linguaggi ed eseguirli in simulatori quantistici o hardware quantistico usando Azure Quantum.
Nota
Con il sito Web Azure Quantum è possibile eseguire Q# codice nel browser senza alcuna configurazione necessaria. Per altre informazioni, vedere Esplorare Azure Quantum.
QDK offre:
- Pacchetti Python per inviare Qiskit, Cirq e Q# applicazioni 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 un Jupyter Notebook nel portale di Azure Quantum e inviare processi ad Azure Quantum (consigliato)
- Usare l'IDE e il linguaggio preferiti in locale e inviare processi ad Azure Quantum
- Usare GitHub Codespaces
Jupyter Notebook
I notebook di Jupyter consentono l'esecuzione di codice sul posto, unitamente a istruzioni, note e altro contenuto. Questo ambiente è ideale per scrivere Python e Q# codice con spiegazioni incorporate o creare 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 un account gratuitamente.
Usare un Jupyter Notebook nel portale di Azure Quantum e inviare processi ad Azure Quantum (consigliato)
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 hardware targetsquantistico. Viene fornita una raccolta di jupyter Notebook di esempio per iniziare a usare la programmazione quantistica in Q#, eseguendo circuiti Qiskit e Cirq o inviando 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 Azure Quantum.
Suggerimento
Gli utenti per la prima volta ottengono automaticamente $ 500 (USD)Crediti Quantistici di Azure per l'uso 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 supporto per Jupyter Notebook, Python e , insieme alle estensioni per Visual Studio Code e Q#Visual Studio. Sviluppare applicazioni di calcolo quantistiche nell'IDE e nel linguaggio preferite ed eseguirle nei simulatori quantistici, nell'hardware quantistico o nei risolutori di ottimizzazione usando il servizio Azure Quantum.
Alcuni scenari in cui è possibile preferire un ambiente locale:
- Si dispone di un ambiente personalizzato o di strumenti preferiti che non sono disponibili online.
- È necessario controllare il codice sorgente nel progetto.
- Si sta lavorando a 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 un account gratuitamente.
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
Anche se è possibile creare Q# applicazioni in qualsiasi IDE, è consigliabile usare Visual Studio Code (VS Code) o Visual Studio IDE per lo sviluppo Q# di applicazioni. Lo sviluppo in uno di questi ambienti sfrutta le funzionalità avanzate dell'estensione QDK, che include l'invio di processi quantistici tramite l'interfaccia Quantum Development Kit 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 in Panoramica dell'area di lavoro > Quantistica è 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 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, poiché le versioni precedenti non sono supportate in questa architettura.
Per testare l'ambiente, vedere Inviare Q# processi ad Azure Quantum.
Usare Python con i risolutori di ottimizzazione Qiskit o Cirq o Azure Quantum
È possibile usare il azure-quantum
pacchetto Python per inviare ed eseguire processi Qiskit o Cirq.
Per installare il azure-quantum
pacchetto Python
Installare Python 3.9 o versione successiva se non è già stato eseguito.
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 .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.
Sono ora disponibili sia il pacchetto qsharp Python che il kernel IQ# per Jupyter, consentendo di compilare ed eseguire Q# operazioni da Python e Q# Jupyter Notebook. 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.
Usare QDK con GitHub Codespaces
GitHub Codespaces è un ambiente di sviluppo sicuro e configurabile basato sul cloud. Non è prevista alcuna configurazione locale e le istanze di calcolo predefinite sono disponibili gratuitamente, con opzioni per aumentare il numero di core e la quantità di RAM e archiviazione.
Prerequisiti
- È necessario un account GitHub (https://github.com/join) e l'accesso al repository GitHub con cui si vuole lavorare.
Configurazione dello spazio di codice
Nella pagina radice del repository selezionare Codespaces >> ... > Configurare il contenitore di sviluppo.
Sostituire il contenuto del file devcontainer.json predefinito con quanto segue:
{ "image": "mcr.microsoft.com/devcontainers/universal:2", "extensions": [ "quantum.quantum-devkit-vscode", "ms-vscode.csharp", "editorconfig.editorconfig", "ms-python.python" ], "features": { "ghcr.io/devcontainers/features/python:1": { "version": "3.11.2", "installJupyterlab": "true" }, "ghcr.io/devcontainers/features/azure-cli:1": { "extensions": "quantum" } }, "postCreateCommand": "wget https://dot.net/v1/dotnet-install.sh && chmod +x dotnet-install.sh && ./dotnet-install.sh -c 6.0 && rm dotnet-install.sh && pip install azure-quantum[qiskit]" }
Suggerimento
È possibile personalizzare gli spazi di codice gitHub in qualsiasi momento dopo l'installazione. Per altre informazioni, vedere Introduzione ai contenitori di sviluppo.
Selezionare Avvia commit commit > direttamente nel ramo principale e quindi selezionare Commit new file (Esegui commit nuovo file). GitHub crea una cartella denominata .devcontainer con il nuovo file di configurazione.
Se si vuole creare lo spazio di codice in un ramo diverso da main, selezionare tale ramo.
Selezionare Code > Codespaces Create codespaces > on main (o your preferred branch). La configurazione iniziale può richiedere da 5 a 10 minuti.
Al termine dell'installazione, viene aperta la shell di sviluppo codespace. Attendere il completamento del postCreateCommand .
Abilitare l'autenticazione basata sul Web:
- Da un prompt dei comandi eseguire az login --use-device-code.
- Copiare il codice del dispositivo e usarlo per l'autenticazione in https://microsoft.com/devicelogin.
Configurazioni aggiuntive (facoltativo)
- Nomi di codespace : Codespaces usa un nome generato in modo casuale quando crea un nuovo spazio di codice. È possibile rinominare uno spazio di codice in un nome più descrittivo selezionando CodeCodespaces >> ... > Rinominare accanto al nome dello spazio di codice.
- Risorse di calcolo : per impostazione predefinita, ogni spazio di codice viene creato con una configurazione di calcolo minima. È possibile aumentare le risorse di calcolo selezionando Code > Codespaces > ... > Modificare il tipo di computer accanto al nome dello spazio di codice. Per altre informazioni sui costi per un utilizzo di calcolo aggiuntivo, vedere Prezzi per l'utilizzo a pagamento.
- Configurazione della fatturazione : per impostazione predefinita, i costi di utilizzo per GitHub Codespaces vengono fatturati automaticamente all'account GitHub che ha creato lo spazio di codice. Facoltativamente, è possibile connettere una sottoscrizione di Azure per pagare per GitHub Codespaces e altri servizi GitHub. Per altre informazioni e requisiti, vedere Connessione di una sottoscrizione di Azure all'azienda.
Passaggi successivi
Con il portale di Azure:
- Eseguire i notebook di Jupyter su Azure Quantum
- Creare e inviare un circuito Qiskit all'hardware quantistico.
Uso dell'ambiente locale: