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.

QDK offre:

  • Pacchetti Python per inviare le applicazioni Qiskit e Cirq, Q# le applicazioni o i 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:

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.

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.

Opzioni di installazione del portale

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 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.

Screenshot di portale di Azure che mostra come trovare un collegamento a una guida di installazione della configurazione locale.

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:

  1. Scaricare e installare la versione 1.52.0 o successiva di VS Code (Windows, Linux e Mac).
  2. 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 o inviare processi di ottimizzazione basati su quantistici ai risolutori di ottimizzazione quantistica di Azure.

Per installare il azure-quantum pacchetto Python

  1. Installare Python 3.9 o versione successiva se non è già stato eseguito.

  2. Installare PIP e assicurarsi di avere la versione 19.2 o successiva.

  3. 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.

  1. Installare Miniconda o Anaconda. Consultare la guida all'installazione in caso di dubbi su eventuali passaggi. Nota: è richiesta l'installazione a 64 bit.

  2. 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.

  3. 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
    
  4. 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.

Usare QDK con GitHub Codespaces

GitHub Codespaces è un ambiente di sviluppo basato su cloud sicuro e configurabile. Non esiste 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

Configurazione dello spazio di codice

  1. Nella pagina radice del repository selezionare Codespaces >> ... > Configurare il contenitore di sviluppo.

  2. 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 la configurazione. Per altre informazioni, vedere Introduzione ai contenitori di sviluppo.

  3. 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.

  4. Se si vuole creare lo spazio di codice in un ramo diverso da main, selezionare tale ramo.

  5. Selezionare Codespaces > Create codespaces > on main (o your preferred branch). L'installazione iniziale può richiedere 5-10 minuti.

  6. Al termine dell'installazione, viene aperta la shell di sviluppo codespace. Attendere il completamento del postCreateCommand .

  7. Abilitare l'autenticazione basata sul Web:

    1. Da un prompt dei comandi eseguire az login --use-device-code.
    2. Copiare il codice del dispositivo e usarlo per eseguire 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ù amico selezionando Codespaces >> ... > 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 Codespaces >> ... > Modificare il tipo di computer accanto al nome dello spazio di codice. Per altre informazioni sulle tariffe per un utilizzo di calcolo aggiuntivo, vedere Prezzi per l'utilizzo a pagamento.
  • Configurazione di fatturazione : per impostazione predefinita, i costi di utilizzo per GitHub Codespaces vengono addebitati automaticamente all'account GitHub che ha creato lo spazio di codice. Facoltativamente, è possibile connettere una sottoscrizione di Azure a pagamento 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:

Uso dell'ambiente locale: