Share via


%azure.submit

Avviso

Questa documentazione si riferisce al QDK classico, che è stato sostituito dal QDK moderno.

QDK moderno supporta solo il comando magic '%%qsharp'.

Riepilogo

Invia un processo a un'area di lavoro di Azure Quantum.

Descrizione

Questo comando magic consente di inviare un'operazione o una funzione Q# da eseguire nella destinazione specificata nell'area di lavoro di Azure Quantum corrente. Il comando viene restituito immediatamente dopo l'invio del processo.

L'area di lavoro di Azure Quantum deve essere stata inizializzata in precedenza usando il %azure.connect comando magic e deve essere stata specificata una destinazione di esecuzione per il processo usando il %azure.target comando magic.

Parametri obbligatori

  • Nome dell'operazione o della funzione Q#. Deve essere il primo parametro e deve essere un'operazione O un nome di funzione Q# valido definito nel notebook o in un file Q# nella stessa cartella.
  • Gli argomenti per l'operazione o la funzione Q# devono essere specificati anche come key=value coppie.

Parametri facoltativi

  • jobName=<string>: nome descrittivo per identificare questo processo. Se non specificato, l'operazione Q# o il nome della funzione verranno usati come nome del processo.
  • jobParams=<JSON key:value pairs>: parametri di processo specifici del provider espressi in JSON come una o più keycoppie :value da passare alla destinazione di esecuzione. I valori devono essere stringhe.
  • shots=<integer> (default=500): numero di volte per ripetere l'esecuzione dell'operazione o della funzione Q# specificata.

Possibili errori

  • NotConnected: non connesso ad alcuna area di lavoro di Azure Quantum.
  • NoTarget: non è stata configurata alcuna destinazione di esecuzione per l'invio di processi di Azure Quantum.
  • NoOperationName: non è stato specificato alcun nome di operazione Q# per l'invio di processi di Azure Quantum.
  • InvalidTarget: la destinazione specificata non è abilitata in questa area di lavoro. Assicurarsi che il nome di destinazione sia valido e che il provider associato venga aggiunto all'area di lavoro. Per aggiungere un provider all'area di lavoro quantistica nel portale di Azure, vedere https://aka.ms/AQ/Docs/AddProvider
  • UnrecognizedOperationName: il nome dell'operazione Q# specificato non è stato riconosciuto.
  • InvalidEntryPoint: l'operazione Q# specificata non può essere usata come punto di ingresso per l'invio di processi di Azure Quantum.
  • JobSubmissionFailed: non è stato possibile inviare il processo all'area di lavoro di Azure Quantum.

Esempi per %azure.submit

Esempio 1

Inviare un'operazione Q# definita come operation MyOperation(a : Int, b : Int) : Result per l'esecuzione nella destinazione attiva nell'area di lavoro di Azure Quantum corrente:

In []: %azure.submit MyOperation a=5 b=10
Out[]: Submitting MyOperation to target provider.qpu...
       Job successfully submitted for 500 shots.
          Job name: MyOperation
          Job ID: <Azure Quantum job ID>
       <detailed properties of submitted job>

Esempio 2

Inviare un'operazione Q# definita come operation MyOperation(a : Int, b : Int) : Result per l'esecuzione nella destinazione attiva nell'area di lavoro di Azure Quantum corrente, specificando un nome di processo personalizzato, il numero di scatti e i parametri del processo specifici del provider:

In []: %azure.submit MyOperation a=5 b=10 jobName="My job" shots=100 jobParams={"Key1":"Val1","Key2":"Val2"}
Out[]: Submitting MyOperation to target provider.qpu...
       Job successfully submitted for 100 shots.
          Job name: My job
          Job ID: <Azure Quantum job ID>
       <detailed properties of submitted job>