關於在 OCI 中部署大型語言模型

有效且大規模地部署大型語言模型 (LLM) 是一項極具挑戰性且需要大量資源的工作。Oracle Cloud Infrastructure (OCI) 在執行 LLama2 70B 模型的裸機方案中提供 AMD InstinctTM MI300X GPU
vLLM 是一個既快速又容易使用的 LLM 推論及服務程式庫。PagedAttention 是 vLLM 的核心,透過將其管理為虛擬記憶體來提高注意機制的效率。它可增強 GPU 記憶體使用率、允許處理更長的序列,並支援在硬體資源限制內工作。此外,vLLM 可持續進行批次處理,以改善傳輸量並減少延遲。

在本解決方案手冊中,您將瞭解如何在 OCI 中使用 AMD InstinctTM MI300X GPU 部署 LLM。

解決方案工作流程

Hugging Face 是一個適用於機器學習的協作平台和中心,為 AI 應用程式提供預先訓練的 AI 模型、開發工具和託管基礎架構,讓全球開發人員能夠使用先進的機器學習。

下列工作流程圖表顯示如何從 Hugging Face GitHub 開放原始碼程式庫提取模型使用者自建物件,並儲存在 OCI Object Storage 中。


從模型建立的映像檔可以儲存在 OCI Registry 中,用於模型映像檔管理、版本控制及安全存取管理。使用 AMD BM GPU 執行個體在 OCI 中增強了 Oracle Cloud Infrastructure Kubernetes Engine 的叢集,可以使用 CLI 或主控台啟動。最後,可以透過網路或網際網路保護模型推論端點。

下列為協力廠商元件:

  • AMD Instinct ™ GPU

    AMD InstinctTM MI300X GPU 搭配 AMD ROCm ™ 開放式軟體電源 OCI Compute Supercluster 執行個體,稱為 BM.GPU.MI300X.8AMD 相異的 MI300X GPU 和 ROCm 軟體支援最重要的 OCI AI 工作負載。

    AMD Instinct MI300X GPU 的推論功能加到 OCI 廣泛的高效能裸機執行處理,可免除經常用於 AI 基礎架構的虛擬化運算負荷。

  • 推論端點

    推論端點提供安全的生產解決方案,可在由推論端點管理的專用和自動調整基礎架構上,從 Hub 輕鬆部署任何變壓器、Sentence-Transformers 和 Diffusers 模型。

下列為 OCI 元件:

  • OCI 地區

    OCI 區域是本地化的地理區域,包含一或多個代管可用性網域的資料中心。區域獨立於其他地區,且遠距離能夠分離它們 (跨國家,甚至是大陸)。

  • OCI 虛擬雲端網路與子網路

    虛擬雲端網路 (VCN) 是您在 OCI 區域中設定的可自訂軟體定義網路。與傳統資料中心網路一樣,VCN 可讓您控制網路環境。VCN 可以有多個非重疊的無類別網域間路由 (CIDR) 區塊,您可以在建立 VCN 之後變更這些區塊。您可以將 VCN 分隔到子網路中,而子網路的作用領域可以調整到某個區域或可用性網域。每個子網路都是由連續的位址範圍所組成,這些位址不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用網路或專用網路。

  • OCI 區塊磁碟區

    您可以使用 Oracle Cloud Infrastructure Block Volumes 建立、連附、連線及移動儲存磁碟區,以及變更磁碟區效能以符合您的儲存、效能和應用程式需求。將磁碟區連附並連線至執行處理之後,就可以像使用一般硬碟一樣使用磁碟區。您也可以中斷磁碟區連線並將其連附至另一個執行處理,而不會遺失資料。

  • OCI Kubernetes 引擎

    Oracle Cloud Infrastructure Kubernetes Engine ( OCI Kubernetes EngineOKE) 是完全託管、可擴展且高可用性的服務,可用來將容器化應用程式部署到雲端。您可以指定應用程式所需的運算資源,然後確定在現有租用戶的 OCI 上佈建這些資源。OKE 使用 Kubernetes 將跨主機叢集的容器化應用程式部署、調整規模及管理自動化。

  • OCI Object Storage

    OCI Object Storage 可讓您存取任何內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及豐富的內容 (例如影像和影片)。您可以直接從應用程式或雲端平台內安全地儲存資料。您可以擴展儲存,而不會發生任何效能或服務可靠性的降低情況。

    針對需要快速、立即及頻繁存取的「熱」儲存使用標準儲存。將封存儲存用於保留一段很長的時間和很少或很少存取的「冷」儲存。

  • OCI 登錄

    Oracle Cloud Infrastructure Registry 是 Oracle 管理的服務,可讓您簡化從開發到生產的工作流程。登錄可讓您輕鬆儲存、共用及管理開發使用者自建物件,例如 Docker 映像檔。

Before You Begin - 開始之前

開始之前,請確定您已設定下列項目:

關於必要產品與角色

此解決方案需要下列產品:

  • Oracle Cloud Infrastructure Compute 裸機與 AMD GPU
  • Oracle Cloud Infrastructure Object Storage
  • Oracle Cloud Infrastructure Block Volumes
  • Oracle Cloud Infrastructure Kubernetes Engine
  • Oracle Cloud Infrastructure Registry

這些是每項產品所需的角色。

服務名稱:角色 必須為 ...
Oracle Cloud Instance Launch Using Custom Image 政策
  • 允許 ImageUsers 群組檢查 ABC 區間中的 instance-images
  • 允許 ABC 區間中 target.image.id='' 的群組 ImageUsers{INSTANCE_IMAGE_READ}
  • 允許 ImageUsers 群組管理 ABC 區間中的執行處理。
  • 允許 ImageUsers 群組讀取租用戶中的 app-catalog-listing
  • 允許 ImageUsers 群組在 ABC 區間中使用 volume-family
  • 允許 ImageUsers 群組在 XYZ 區間中使用 virtual-network-family
Oracle Cloud Manage Kubernetes Cluster 政策
  • 允許 <location> 中的群組 <group-name>manage cluster-family
  • 允許 acme-dev-team-pool-admins 群組使用 <location> 中的 cluster-node-pools
若要在 OCI 中建立 OKE 叢集,您必須屬於租用戶的 Administrators 群組,或屬於原則授予 CLUSTER_MANAGE 權限的群組。

請參閱叢集建立與部署的原則組態

Oracle Cloud working with Images from Registry 政策
  • 允許 acme-pullers 群組讀取租用戶中的儲存區域。
  • 允許 acme-pushers 群組管理租用戶中的儲存區域。

請參閱 Oracle 產品、解決方案和服務,以取得您需要的內容。