Vertex AI 訓練叢集總覽

如要使用 Vertex AI 訓練叢集,請與業務代表聯絡以取得存取權。

Vertex AI 訓練叢集是 Google Cloud 的一項服務,旨在簡化及加速處理最大型且最複雜的 AI/機器學習工作負載。專門用於解決大規模訓練的挑戰,例如複雜的叢集設定、架構最佳化、處理硬體故障,以及整合不同的工具集。

主要價值主張和功能

模型開發服務提供多項核心優勢:

  • 開放原始碼 Slurm 使用者體驗和叢集透明度: Vertex AI 訓練叢集提供熟悉且彈性的工具,可透過開放原始碼 Slurm 使用者體驗啟動及管理工作。 Slurm 是業界標準,以最佳化 GPU 排程、自動容錯和簡化平行工作啟動作業而聞名。

  • 自動設定及配置叢集: Vertex AI 訓練叢集會自動設定及配置叢集,目標是在幾小時內從預訂轉換為正式訓練。使用者可以透過 Google Cloud 控制台 (使用參考架構或逐步設定),或透過 API 呼叫搭配 JSON 檔案建立叢集。

  • 預先設定的資料科學配方和工作流程: Vertex AI 訓練叢集包含專為特定用途打造的工具 和最佳化訓練配方,可快速啟動熱門用途的訓練作業,例如 Llama 和 Gemma 模型,涵蓋預先訓練、SFT (監督式微調) 和強化學習 (RL)。這些配方已預先設定,可在 Google Cloud基礎架構上達到最先進 (SOTA) 的效能,展現顯著的效能提升。

  • 硬體復原能力和高正常運作時間: Vertex AI 訓練叢集採用硬體復原能力設計,可提升叢集正常運作時間。 這項功能會自動解決硬體問題、偵測及分類各種故障模式 (例如正確性檢查、速度檢查、錯誤修正碼 (ECC) 錯誤、NVIDIA 資料中心 GPU 管理員 (DCGM) 檢查、磁碟空間容量),並觸發補救措施,例如重新啟動、重新映像或更換故障節點,以及從檢查點繼續執行。這有助於減輕大規模訓練作業中斷和硬體故障所導致的成本大幅增加和延遲問題。

  • 架構和元件: Vertex AI 訓練叢集會在支援 GPU 和 CPU 的 Compute Engine 基礎架構上執行。這個解決方案會運用代管 Slurm 協調器,部署及管理運算節點,包括登入和工作站節點。這項服務可與其他服務整合,例如網路和儲存空間。 Google Cloud

  • MLOps 和可觀測性:與 Vertex ML Ops 工具整合,例如 Vertex AI Model Registry 可自動註冊、追蹤及控管訓練好的工作流程版本,而 Vertex AI Inference 則可部署並自動調度資源,以及自動產生指標。訓練叢集也具備自動可觀測性,可與 Vertex AI TensorBoard 整合,以視覺化方式呈現訓練程序、追蹤指標,並及早找出問題。

您可以使用 Vertex AI 訓練叢集 API 建立、擷取、列出、更新及刪除訓練叢集。叢集建立完成後,使用者可以登入節點、執行基本 Slurm 指令 (例如 sinfosbatch) 並執行 GPU 相關工作負載 (例如 nvidia-smi),驗證叢集功能。系統已預先安裝 Cluster Health Scanner (CHS) 工具,可執行 DCGM 和 NCCL 測試等診斷作業,確認叢集是否已準備就緒。

Vertex AI 訓練叢集提供 API,可使用針對 Llama 和 Gemma 等模型最佳化的配方,啟動預先建構的 LLM 工作,並支援從檢查點進行預先訓練和持續預先訓練。登入登入節點並檢查輸出檔案和 Slurm 指令 (例如 squeue),即可監控工作。

術語

本節提供重要術語和概念的定義,有助於瞭解及有效運用 Vertex AI 訓練叢集。這些術語涵蓋核心服務元件、架構考量事項、整合式儲存技術,以及訓練環境的基礎機器學習 (ML) 和 MLOps 概念。

核心服務概念

節點
  • 叢集中的單一虛擬機器 (Compute Engine 執行個體)。在預留叢集的代管訓練中,節點是指叢集內做為單一運算單位的個別虛擬機器 (VM)。您可以將其視為專屬工作站機器,負責執行整體訓練工作的一部分。每個節點都配備 CPU、記憶體和加速器 (例如 A3 或 A4 GPU) 等特定資源,並以協調一致的方式共同處理大規模分散式訓練工作。
登入節點
  • 登入節點是使用者存取叢集、提交工作及管理檔案的主要進入點。詳情請參閱「什麼是高效能運算?」。
partition
  • 在 Slurm 中,節點的邏輯分組,通常用於分隔具有不同硬體設定的節點。
食譜
  • 在受管理訓練的環境中,配方是全面且可重複使用的套件,內含執行特定大規模訓練工作負載所需的一切資源。
Slurm 叢集
  • 由 Slurm 管理的 Compute Engine 執行個體集合,包括登入節點和多個設定為執行訓練工作的節點。詳情請參閱「Slurm 工作負載管理員」。
工作站節點
  • 工作站節點是指叢集中的個別機器或運算執行個體,負責執行工作或作業。在 Kubernetes 或 Ray 叢集等系統中,節點是運算的基本單位。詳情請參閱「什麼是高效能運算 (HPC)?」。

架構和網路

消費者虛擬私有雲網路
  • 用戶虛擬私有雲網路是 Google Cloud 虛擬私有雲 (VPC),可私下存取託管在另一個虛擬私有雲 (稱為供應商虛擬私有雲) 中的服務。詳情請參閱「Private Service Connect」。
最大傳輸單位 (MTU)
  • 網路連線裝置可傳輸的最大資料封包大小。較大的 MTU 大小 (巨型封包) 可提升特定工作負載的網路效能。詳情請參閱「傳輸單位上限」。
私人服務連線
  • 私人服務存取權是指在您的虛擬私有雲 (VPC) 網路與 Google 或第三方服務供應商所擁有網路之間建立的私人連線。虛擬私有雲網路中的虛擬機器 (VM) 執行個體可透過這項功能,使用內部 IP 位址與這些服務通訊,避免暴露於公開網路上。詳情請參閱「私人服務存取權」。
虛擬私有雲網路對等互連
  • 網路連線,可讓兩個 VPC 網路以私密方式通訊。在預留叢集的代管訓練中,虛擬私有雲網路對等互連是整合重要服務的關鍵元件。舉例來說,如要將叢集的虛擬私有雲連線至 Filestore 執行個體,就必須使用這個方法,因為 Filestore 執行個體會為叢集中的所有節點提供必要的共用 `/home` 目錄。
區域
  • Google Cloud 區域內的特定部署區域。在預留叢集上使用 Managed Training 時,為獲得最佳效能,服務的所有元件 (叢集、Filestore 和 Managed Lustre 執行個體) 都應在同一個可用區中建立。

整合式儲存技術

Cloud Storage Fuse
  • 開放原始碼的 FUSE 轉接器,可讓您在 Linux 或 macOS 系統上,將 Cloud Storage bucket 掛接為檔案系統。詳情請參閱「Cloud Storage Fuse」。
Filestore
  • Google Cloud 提供全代管的高效能檔案儲存服務,通常用於需要共用檔案系統的應用程式。詳情請參閱 Filestore 總覽
Managed Lustre
  • 專為高效能運算設計的平行分散式檔案系統。Google Cloud 的 Managed Lustre 提供高總處理量的檔案系統,可因應嚴苛的工作負載。詳情請參閱「Managed Lustre 總覽」。
效能等級
  • Managed Lustre 執行個體的設定,可定義執行個體的處理量速度 (每 TiB 的 MBps),並影響執行個體的容量下限和上限。

機器學習和機器學習運作的重要概念

檢查點
  • 資料會擷取模型參數在訓練期間或訓練完成後的狀態。舉例來說,在訓練期間,您可以:1. 停止訓練,可能是刻意停止,也可能是因為發生特定錯誤。2. 擷取查核點。3. 稍後,重新載入檢查點,可能是在不同的硬體上。4. 重新展開訓練。在 Gemini 中,檢查點是指以特定資料集訓練的 Gemini 模型特定版本。
監督式微調 (SFT)
  • 這項機器學習技術會使用較小的標籤資料集,進一步訓練預先訓練模型,使其適用於特定工作。
Vertex AI Inference
  • 這項 Vertex AI 服務可讓您使用經過訓練的機器學習 (ML) 模型,從未曾見過的新資料進行推論。Vertex AI 提供模型部署服務,用於推論。詳情請參閱「從自訂訓練模型取得推論結果」。
Vertex AI Model Registry
  • Vertex AI Model Registry 是中央存放區,可用於管理機器學習模型的生命週期。Vertex AI Model Registry 會顯示模型總覽,方便您更妥善地整理、追蹤及訓練新版本。有想部署的模型版本時,可以直接從登錄檔指派給端點,也可以使用別名將模型部署至端點。詳情請參閱「Vertex AI Model Registry 簡介」。
Vertex AI TensorBoard
  • Vertex AI TensorBoard 是 Google Cloud 上可擴充的代管服務,可讓資料科學家和機器學習工程師透過熟悉的開放原始碼 TensorBoard 介面,以視覺化方式呈現機器學習實驗、偵錯模型訓練,以及追蹤效能指標。與 Vertex AI Training 和其他服務完美整合,可為實驗資料提供持續性儲存空間,並允許協同分析模型開發作業。詳情請參閱「Vertex AI TensorBoard 簡介」。