使用 Amazon Braket 混合任務執行混合任務 - Amazon Braket

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon Braket 混合任務執行混合任務

若要使用 Amazon Braket 混合任務執行混合任務,您必須先定義演算法。您可以使用 Amazon Braket Python SDK或 撰寫演算法指令碼,以及選擇性的其他相依性檔案來定義它PennyLane。如果您想要使用其他 (開放原始碼或專屬) 程式庫,您可以使用 Docker 定義自己的自訂容器映像,其中包含這些程式庫。如需詳細資訊,請參閱攜帶您自己的容器 (BYOC)

在任何一種情況下,您接下來都會使用 Amazon Braket 建立混合式工作 API,您可以在其中提供演算法指令碼或容器,選取混合任務要使用的目標量子裝置,然後從各種選用設定中進行選擇。這些選用設定的預設值適用於大多數使用案例。若要讓目標裝置執行混合任務,您可以在 、QPU隨需模擬器 (例如 SV1, DM1 或 TN1),或傳統混合式任務執行個體本身。透過隨需模擬器或 QPU,您的混合作業容器會API呼叫遠端裝置。使用內嵌模擬器時,模擬器會內嵌在與演算法指令碼相同的容器中。來自 的閃電模擬器 PennyLane 內嵌預設預先建置的混合式任務容器,供您使用。如果您使用內嵌 PennyLane 模擬器或自訂模擬器執行程式碼,您可以指定執行個體類型,以及您想要使用的執行個體數量。請參閱 Amazon Braket 定價頁面,了解與每個選擇相關聯的成本。

流程圖顯示使用者與 Amazon Braket 元件、、API任務執行個體和混合、QPU、隨需和內嵌任務模擬器的互動。結果會儲存在 Amazon Simple Storage Service 儲存貯體中,並在 Amazon Braket 主控台 CloudWatch 上使用 Amazon 進行分析。

如果您的目標裝置是隨需或嵌入式模擬器,Amazon Braket 會立即開始執行混合式任務。它會啟動混合式任務執行個體 (您可以在 中自訂執行個體類型 API 呼叫)、執行演算法、將結果寫入 Amazon S3,以及釋出您的 資源。此資源版本可確保您只需支付使用的費用。

每個量子處理單元 (QPU) 的並行混合任務總數受到限制。目前,QPU在任何指定時間, 上只能執行一個混合式任務。佇列用於控制允許執行的混合式任務數量,以免超過允許的限制。如果您的目標裝置是 QPU,您的混合任務會先進入所選 的任務佇列QPU。Amazon Braket 會啟動所需的混合式任務執行個體,並在裝置上執行混合式任務。在演算法的持續時間內,您的混合任務具有優先順序存取,這表示混合任務的量子任務在裝置上排入佇列的其他 Braket 量子任務之前執行,前提是任務量子任務每隔幾分鐘提交QPU一次至 。混合作業完成後,就會釋出資源,這表示您只需支付使用的費用。

注意

裝置是區域性的,您的混合任務在 AWS 區域 與主要裝置相同的 中執行。

在模擬器和QPU目標案例中,您可以選擇定義自訂演算法指標,例如漢密爾頓的能源,作為演算法的一部分。這些指標會自動報告給 Amazon, CloudWatch 並從那裡,它們會在 Amazon Braket 主控台中近乎即時地顯示。

注意

如果您想要使用 GPU型執行個體,請務必使用與 Braket 上的內嵌模擬器 (例如 lightning.gpu) 搭配使用的其中一個 GPU型模擬器。如果您選擇其中一個 CPU型嵌入式模擬器 (例如 lightning.qubitbraket:default-simulator),GPU則不會使用 ,而且可能會產生不必要的成本。