Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un Azure Quantum processo esegue un programma quantistico in un provider target, ad esempio un sistema hardware quantistico o un simulatore. Utilizzare Microsoft Quantum Development Kit (QDK) per inviare processi in modo interattivo da Visual Studio Code (VS Code) o tramite codice con Python.
Prima di inviare un processo
Per inviare un processo, sono necessari:
- Un account Azure con una sottoscrizione attiva.
- Un'area Azure Quantum di lavoro. Per crearne uno, vedere Creare un'area Azure Quantum di lavoro.
- Un provider e target nell'area di lavoro che accettano il formato di input e il profilo Quantum Intermediate Representation (QIR) target del tuo programma.
Confrontare i metodi di invio dei processi
Scegliere un metodo in base alla modalità di sviluppo del programma e alla quantità di controllo o automazione necessaria.
| metodo | Lingue e input | Usare questo metodo quando | Prendere in considerazione un altro metodo quando |
|---|---|---|---|
| QDK estensione per VS Code | Q# e OpenQASM file di origine | Si vuole un flusso di lavoro interattivo in VS Code con completamento del codice, simulazione locale, debug, visualizzazione del circuito e invio di processi in un'unica interfaccia. | Se usi un framework quantistico Python, devi generare job tramite codice o vuoi automatizzare l'invio. |
| QDK Python pacchetto | Q#, OpenQASM, Qiskit, Cirq, PennyLane, e compilati QIR | Si lavora in uno script o in un Python notebook di Jupyter, si vogliono API native del framework o è necessario generare, inviare ed elaborare processi nel codice. | È sufficiente inviare un Q# file o OpenQASM in modo interattivo oppure è già disponibile un file di input compilato per un flusso di lavoro di automazione. |
Inviare processi con l'estensione QDK per VS Code
Usare l'estensione QDK quando si scrive Q# o OpenQASM direttamente in VS Code e si vuole un flusso di lavoro visivo interattivo. L'estensione può:
- Esegui ed esegui il debug del tuo programma in un simulatore locale.
- Visualizzare diagrammi di circuito e istogrammi dei risultati.
- Connettersi a un'area Azure Quantum di lavoro.
- Elenca i provider, targets, e i job inviati.
- Invia il programma attivo OpenQASM o Q# e scarica i risultati.
Questo metodo è utile per l'esplorazione e lo sviluppo interattivo. Non è necessario scrivere codice di connessione o invio.
Per istruzioni, vedi Inviare processi con l'estensione QDK per VS Code.
Inviare job con il pacchetto QDKPython
Usa il pacchetto QDKPython quando il tuo flusso di lavoro inizia in Python o in un notebook Jupyter. Il Python pacchetto fornisce:
- Il modulo
qdk.azureper connettersi a uno spazio di lavoro e inviare processi. - Q# e compilazione di OpenQASM in QIR.
- API di invio di processi per Qiskit e Cirq.
- Percorso QIR di invio per i programmi PennyLane.
- API per controllare lo stato del processo e recuperare e visualizzare i risultati.
Questo metodo è valido per esperimenti con parametri, invii ripetuti e integrazione dell'applicazione.
Per le istruzioni, vedi Inviare processi con il QDKPython pacchetto.
Usare formati specifici del fornitore
I requisiti relativi ai formati di input e ai parametri dei job possono variare in base al provider e target, e possono prevedere flussi di lavoro diversi per l'invio dei job. Per altre informazioni, vedere Inviare circuiti quantistici formattati a Azure Quantum.
Usare formati specifici del provider solo quando il flusso di lavoro o target li richiede.
Cosa accade dopo l'invio
Tutti i metodi di invio creano un Azure Quantum job. Il processo passa attraverso stati quali In attesa, Esecuzione e stato finale, ad esempio Succeeded, Failed o Cancelled. È possibile monitorare e gestire tutti i processi da VS Code, Python, interfaccia della riga di comando di Azureo dal portale di Azure.
Per informazioni sulle proprietà e l'output dei processi, vedere Lavorare con i Azure Quantum processi.