View a markdown version of this page

Lavorare con Amazon Braket Hybrid Jobs - Amazon Braket

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Lavorare con Amazon Braket Hybrid Jobs

Amazon Braket Hybrid Jobs offre un modo per eseguire algoritmi ibridi quantistici classici che richiedono sia AWS risorse classiche che unità di elaborazione quantistica (QPU). Hybrid Jobs è progettato per attivare le risorse classiche richieste, eseguire l'algoritmo e rilasciare le istanze dopo il completamento, in modo da pagare solo per ciò che si utilizza.

Hybrid Jobs è ideale per algoritmi iterativi di lunga durata che prevedono l'uso sia di risorse di calcolo classiche che di risorse di calcolo quantistico. Con Hybrid Jobs, dopo aver inviato l'algoritmo per l'esecuzione, Braket eseguirà l'algoritmo in un ambiente scalabile e containerizzato. Una volta completato l'algoritmo, è possibile recuperare i risultati.

Inoltre, le attività quantistiche create da un job ibrido traggono vantaggio dall'accodamento con priorità più elevata verso il dispositivo QPU di destinazione. Questa assegnazione di priorità assicura che i calcoli quantistici vengano elaborati ed eseguiti prima delle altre attività in coda. Ciò è particolarmente vantaggioso per gli algoritmi ibridi iterativi, in cui i risultati di un'attività quantistica dipendono dai risultati di attività quantistiche precedenti. Esempi di tali algoritmi includono il Quantum Approximate Optimization Algorithm (QAOA), l'eigensolver quantistico variazionale o l'apprendimento automatico quantistico. https://github.com/amazon-braket/amazon-braket-examples/blob/main/examples/hybrid_quantum_algorithms/VQE_Chemistry/VQE_chemistry_braket.ipynb https://github.com/amazon-braket/amazon-braket-examples/blob/main/examples/hybrid_jobs/1_Quantum_machine_learning_in_Amazon_Braket_Hybrid_Jobs/Quantum_machine_learning_in_Amazon_Braket_Hybrid_Jobs.ipynb Puoi anche monitorare i progressi dell'algoritmo quasi in tempo reale, consentendoti di tenere traccia dei costi, del budget o di metriche personalizzate come la perdita di formazione o i valori delle aspettative.

Puoi accedere ai lavori ibridi in Braket utilizzando:

Quando usare Amazon Braket Hybrid Jobs

Amazon Braket Hybrid Jobs consente di eseguire algoritmi ibridi quantistici classici, come il Variational Quantum Eigensolver (VQE) e il Quantum Approximate Optimization Algorithm (QAOA), che combinano risorse di calcolo classiche con dispositivi di calcolo quantistico per ottimizzare le prestazioni dei sistemi quantistici odierni. Amazon Braket Hybrid Jobs offre tre vantaggi principali:

  1. Prestazioni: Amazon Braket Hybrid Jobs offre prestazioni migliori rispetto all'esecuzione di algoritmi ibridi dal tuo ambiente. Mentre il processo è in esecuzione, ha accesso prioritario alla QPU di destinazione selezionata. Le attività del tuo lavoro vengono eseguite prima delle altre attività in coda sul dispositivo. Ciò si traduce in tempi di esecuzione più brevi e prevedibili per gli algoritmi ibridi. Amazon Braket Hybrid Jobs supporta anche la compilazione parametrica. Puoi inviare un circuito utilizzando parametri gratuiti e Braket lo compila una volta, senza la necessità di ricompilarlo per i successivi aggiornamenti dei parametri dello stesso circuito, con tempi di esecuzione ancora più rapidi.

  2. Comodità: Amazon Braket Hybrid Jobs semplifica la configurazione e la gestione dell'ambiente di calcolo e lo mantiene in esecuzione mentre l'algoritmo ibrido è in esecuzione. Basta fornire lo script dell'algoritmo e selezionare un dispositivo quantistico (un'unità di elaborazione quantistica o un simulatore) su cui eseguire. Amazon Braket attende che il dispositivo di destinazione sia disponibile, utilizza le risorse classiche, esegue il carico di lavoro in ambienti container predefiniti, restituisce i risultati ad Amazon Simple Storage Service (Amazon S3) e rilascia le risorse di calcolo.

  3. Metriche: Amazon Braket Hybrid Jobs fornisce informazioni immediate sull'esecuzione degli algoritmi e fornisce metriche algoritmiche personalizzabili quasi in tempo reale ad Amazon CloudWatch e alla console Amazon Braket in modo da poter monitorare l'avanzamento dei tuoi algoritmi.

Esecuzione di un lavoro ibrido con Amazon Braket Hybrid Jobs

Per eseguire un job ibrido con Amazon Braket Hybrid Jobs, devi prima definire il tuo algoritmo. Puoi definirlo scrivendo lo script dell'algoritmo e, facoltativamente, altri file di dipendenza utilizzando l'SDK Amazon Braket Python o. PennyLane Se desideri utilizzare altre librerie (open source o proprietarie), puoi definire la tua immagine personalizzata del contenitore utilizzando Docker, che include queste librerie. Per ulteriori informazioni, consulta Bring your own container (BYOC).

In entrambi i casi, successivamente crei un job ibrido utilizzando Amazon BraketAPI, dove fornisci lo script o il contenitore dell'algoritmo, selezioni il dispositivo quantistico di destinazione che il job ibrido deve utilizzare e quindi scegli tra una serie di impostazioni opzionali. I valori predefiniti forniti per queste impostazioni opzionali funzionano per la maggior parte dei casi d'uso. Affinché il dispositivo di destinazione esegua il tuo Hybrid Job, puoi scegliere tra una QPU, un simulatore su richiesta (come SV1 orDM1) o la classica istanza di lavoro ibrida stessa. Con un simulatore on-demand o QPU, il contenitore di job ibrido effettua chiamate API a un dispositivo remoto. Con i simulatori integrati, il simulatore è incorporato nello stesso contenitore dello script dell'algoritmo. I simulatori Lightning di PennyLane sono integrati nel contenitore ibrido di job predefinito e utilizzabile dall'utente. Se esegui il codice utilizzando un PennyLane simulatore integrato o un simulatore personalizzato, puoi specificare un tipo di istanza e quante istanze desideri utilizzare. Consulta la pagina dei prezzi di Amazon Braket per i costi associati a ciascuna scelta.

Diagramma di flusso che mostra le interazioni degli utenti con i componenti, l'API, l'istanza Jobs e i simulatori di Amazon Braket per attività ibride, QPU, on-demand e integrate. I risultati vengono archiviati nel bucket Amazon Simple Storage Service e analizzati utilizzando Amazon sulla console Amazon CloudWatch Braket.

Se il dispositivo di destinazione è un simulatore on-demand o integrato, Amazon Braket inizia subito a eseguire il processo ibrido. Avvia l'istanza del job ibrido (puoi personalizzare il tipo di istanza nella API chiamata), esegue l'algoritmo, scrive i risultati su Amazon S3 e rilascia le tue risorse. Questo rilascio di risorse garantisce che tu paghi solo per ciò che usi.

Il numero totale di processi ibridi simultanei per unità di elaborazione quantistica (QPU) è limitato. Oggi, solo un job ibrido può essere eseguito su una QPU alla volta. Le code vengono utilizzate per controllare il numero di lavori ibridi che possono essere eseguiti in modo da non superare il limite consentito. Se il dispositivo di destinazione è una QPU, il processo ibrido entra prima nella coda dei lavori della QPU selezionata. Amazon Braket attiva l'istanza di lavoro ibrida necessaria ed esegue il processo ibrido sul dispositivo. Per tutta la durata dell'algoritmo, il tuo job ibrido ha un accesso prioritario, il che significa che le attività quantistiche del tuo job ibrido vengono eseguite prima delle altre attività quantistiche di Braket in coda sul dispositivo, a condizione che le attività quantistiche del job vengano inviate alla QPU una volta ogni pochi minuti. Una volta completato il lavoro ibrido, le risorse vengono rilasciate, il che significa che paghi solo ciò che utilizzi.

Nota

I dispositivi sono regionali e il processo ibrido viene eseguito nello Regione AWS stesso dispositivo principale.

In entrambi gli scenari di destinazione del simulatore e della QPU, hai la possibilità di definire metriche algoritmiche personalizzate, come l'energia del tuo Hamiltonian, come parte del tuo algoritmo. Queste metriche vengono segnalate automaticamente ad Amazon CloudWatch e da lì vengono visualizzate quasi in tempo reale nella console Amazon Braket.

Nota

Se desideri utilizzare un'istanza basata su GPU, assicurati di utilizzare uno dei GPU-based simulatori disponibili con i simulatori integrati su Braket (ad esempio,). lightning.gpu Se scegli uno dei simulatori CPU-based integrati (ad esempio, obraket:default-simulator)lightning.qubit, la GPU non verrà utilizzata e potresti incorrere in costi non necessari.