hugs 文件
在 Google Cloud 上執行 HUGS
並獲得增強的文件體驗
開始使用
在 Google Cloud 上執行 HUGS
Hugging Face 生成式 AI 服務,也稱為 HUGS,可以透過 Google Cloud Marketplace 產品在 Google Cloud 中部署。
此次合作將 Hugging Face 龐大的預訓練模型庫及其文字生成推理 (TGI) 解決方案帶給 Google Cloud 客戶,使得在 Google Cloud 基礎設施內無縫整合最先進的大型語言模型 (LLM) 成為可能。
HUGS 提供了對 Hugging Face Hub 中精選並經過人工基準測試的、效能最佳且最新的開放 LLM 集合的訪問,這些模型被整合到 TGI 最佳化的容器應用程式中,允許使用者在 GCP 或本地環境中部署第三方 Kubernetes 應用程式。
藉助 HUGS,開發人員可以輕鬆地使用 GCP 基礎設施查詢、訂閱和部署 Hugging Face 模型,利用 NVIDIA GPU 在經過最佳化的零配置 TGI 容器上的強大功能。
在 GCP Marketplace 上訂閱 HUGS
前往 HUGS Google Cloud Marketplace 列表頁面
按照頁面上的說明在 Google Cloud 中訂閱該產品。在撰寫本文時(2024 年 10 月),步驟如下:
- 點選 `Purchase`,然後進入下一頁。
- 透過選擇正確的方案、賬單賬戶並確認條款來配置訂單。然後點選 `Subscribe`。
您應該會看到一條訊息:“Your order request has been sent to Hugging Face”。旁邊有一個按鈕“Go to Product Page”。點選它。
要了解您是否已訂閱,您可以檢視產品頁面上的“Purchase”按鈕或“Configure”按鈕是否啟用,這表示您或您組織中的其他人已經為您的賬戶請求了訪問許可權。
在 Google Cloud GKE 上部署 HUGS
本示例展示瞭如何在 Google Cloud GKE 上部署 HUGS 容器和模型。
本示例假設您擁有一個 Google Cloud 賬戶,已經安裝並設定了 Google Cloud CLI,並且已經使用具有在 Google Cloud Marketplace 中訂閱產品、建立和管理 IAM 許可權以及 Google Kubernetes Engine (GKE) 等資源的必要許可權登入了您的賬戶。
當透過 UI 在 Google Cloud 上部署 HUGS 時,您可以選擇一個現有的 GKE 叢集或建立一個新的叢集。如果您想建立一個新的,可以按照這裡的說明進行操作。此外,您還需要定義:
Namespace(名稱空間):部署 HUGS 容器和模型的名稱空間。
App Instance Name(應用例項名稱):HUGS 容器的名稱。
Hugs Model Id(Hugs 模型 ID):從 Hugging Face Hub 中選擇您想要部署的模型。您可以在這裡找到所有支援的模型。
GPU Number(GPU 數量):您可用並希望用於部署的 GPU 數量,請務必檢視支援的模型矩陣以瞭解哪些模型需要 GPU。
GPU Type(GPU 型別):您 GKE 叢集中可用的 GPU 型別。
Reporting Service Account(報告服務賬戶):用於報告的服務賬戶。
接下來,點選 `Deploy` 並等待部署完成。這大約需要 10-15 分鐘。
如果您想更好地瞭解不同的部署選項,例如為 Meta Llama 3.1 8B Instruct 配置 1 個 NVIDIA L4 GPU,您可以檢視支援的模型矩陣。
向 HUGS 應用程式傳送請求
每個 HUGS 應用程式都包含有關如何檢索 Ingress IP 地址和埠以嚮應用程式傳送請求的說明。HUGS 部署是 HELM chart 的部署,其中包括我們的模型容器、市場代理 (sidecar)、一個卷和一個 Ingress 負載均衡器,以使應用程式可以從叢集外部訪問。
或者,您也可以透過 `openai` 使用 Messages API。在這裡瞭解更多關於推理的資訊。
為 HUGS 建立一個 GPU GKE 叢集
要在 Google Cloud 上部署 HUGS,您需要一個支援 GPU 的 GKE 叢集。以下是建立叢集的逐步指南:
為您的叢集配置設定環境變數。
export PROJECT_ID="your-project-id" # Your Google Cloud Project ID which is subscribed to HUGS
export CLUSTER_NAME="hugs-cluster" # The name of the GKE cluster
export LOCATION="us-central1" # The location of the GKE cluster
export MACHINE_TYPE="g2-standard-12" # The machine type of the GKE cluster
export GPU_TYPE="nvidia-l4" # The type of GPU to use
export GPU_COUNT=1 # The number of GPUs to use
- 建立 GKE 叢集。
gcloud container clusters create $CLUSTER_NAME \
--project=$PROJECT_ID \
--zone=$LOCATION \
--release-channel=stable \
--cluster-version=1.29 \
--machine-type=$MACHINE_TYPE \
--num-nodes=1 \
--no-enable-autoprovisioning
- 向叢集新增一個 GPU 節點池。
gcloud container node-pools create gpu-pool \
--cluster=$CLUSTER_NAME \
--zone=$LOCATION \
--machine-type=$MACHINE_TYPE \
--accelerator type=$GPU_TYPE,count=$GPU_COUNT,gpu-driver-version=default \
--num-nodes=1 \
--enable-autoscaling \
--min-nodes=1 \
--max-nodes=1 \
--spot \
--disk-type=pd-ssd \
--disk-size=100GB
- 配置 kubectl 以使用新叢集。
gcloud container clusters get-credentials $CLUSTER_NAME --zone=$LOCATION
您支援 GPU 的 GKE 叢集現在已準備好進行 HUGS 部署。您可以按照上一節中所述,使用 Google Cloud Marketplace 繼續部署 HUGS。
有關建立和管理 GKE 叢集的更詳細資訊,請參閱官方 Google Kubernetes Engine 文件或在 GKE 標準節點池中執行 GPU。