本頁面可協助您為 Google Kubernetes Engine (GKE) 上的 AI/機器學習模型推論工作負載,選擇適當的負載平衡策略。
本頁面適用於下列角色:
- 想使用 Kubernetes 容器自動化調度管理功能,提供 AI/機器學習工作負載服務的機器學習工程師、平台管理員和營運人員,以及資料和 AI 專家。
- 與 Kubernetes 網路互動的雲端架構師和網路專員。
如要進一步瞭解我們在內容中提及的常見角色和範例工作,請參閱「常見的 GKE 使用者角色和工作」。Google Cloud
閱讀本頁內容前,請先熟悉下列項目:
在 GKE 上部署 AI/機器學習模型推論工作負載時,請選擇合適的負載平衡策略,以最佳化效能、擴充性和成本效益:
- 選擇 GKE Inference Gateway,針對提供 AI/機器學習工作負載的最佳化路徑和負載平衡。
- 選擇使用自訂指標的 GKE Gateway,這會使用 應用程式負載平衡器。 這個選項提供一般用途的控制項,可讓您根據應用程式或基礎架構需求的特定指標,設定流量分配。
GKE Inference Gateway 總覽
GKE Inference Gateway 可最佳化及管理要求嚴苛的生成式 AI (GenAI) 和複雜的大型語言模型 (LLM) 推論工作負載。這項功能擴充了 GKE Gateway API,提供下列幾項主要優點:
智慧型 AI 感知路由:GKE Inference Gateway 會監控重要的 AI 專屬指標,包括:
- 模型伺服器 KV 快取使用率
- 待處理的要求佇列長度
- 整體 GPU/TPU 使用率
- LoRA 轉換器適用情形
- 個別要求的運算成本 根據這些指標,閘道會將流量智慧地分配至最合適且負載最低的模型伺服器副本。
要求優先順序:閘道提供要求優先順序機制。
最佳化自動調度資源:閘道提供模型伺服器的最佳化自動調度資源機制。
GKE Gateway with Custom Metrics 總覽
Google Cloud 提供應用程式負載平衡器資源,支援全域外部和區域外部等範圍。這類一般用途的負載平衡器會根據後端服務回報的自訂指標分配流量。這種方法可精細控管負載分配,讓您根據應用程式專屬的效能指標進行分配。
使用自訂指標比較 GKE Inference Gateway 和 GKE Gateway
請參閱下表,比較 GKE Inference Gateway 和 GKE Gateway with Custom Metrics 的功能,並為 GKE 上的 AI/機器學習推論工作負載選擇合適的負載平衡解決方案。
| 功能 | GKE Inference Gateway | GKE Gateway (透過應用程式負載平衡器) |
|---|---|---|
| 主要應用實例 | 在 Kubernetes 上最佳化生成式 AI 和機器學習推論工作負載,包括提供大型語言模型 (LLM)。這項功能可確保模型資源的存取權公平,並盡可能縮短延遲時間,提升以 GPU 或 TPU 為基礎的 LLM 工作負載效能。 | 提供一般用途的 HTTP(S) 負載平衡,根據自訂的應用程式回報指標分配流量。這類負載平衡非常適合延遲時間敏感型服務,例如回報自訂使用率資料的即時遊戲伺服器或高頻交易平台。 |
| 基本轉送 | 支援以主機和路徑為準的標準 HTTP(S) 路由,擴充 GKE Gateway API。 | 支援以主機和路徑為準的標準 HTTP(S) 路由。您可以使用 GKE Gateway API 的標準資源設定這項功能。 |
| 進階轉送邏輯 | 提供進階功能,例如模型感知路徑、流量分割、鏡像處理,以及對要求套用優先順序和重要性層級。 | 根據應用程式透過待處理要求成本匯總 (ORCA) 標準回報的自訂指標,平衡流量。這項功能可啟用政策,例如區域內端點權重 WEIGHTED_ROUND_ROBIN。 |
| 支援的指標 | 運用一系列 AI 專屬原生指標,例如 GPU 或 TPU 使用率、KV 快取命中次數和要求佇列長度。此外,您也可以使用標準化 HTTP 標頭機制,將這項服務設定為使用應用程式回報的指標。 | 依據應用程式回報的指標,使用標準化 HTTP 標頭機制,特別是待處理要求成本匯總 (ORCA) 負載回報。這項機制支援 CPU 和記憶體等標準指標,以及應用程式專用受限資源的自訂命名指標。 |
| 處理要求 | 專為處理要求成本不一致的工作負載而設計,這類工作負載在 LLM 中很常見,因為提示詞複雜度各不相同。支援要求重要程度,可優先處理不同類型的推論要求。 | 最適合個別要求的處理成本相對一致的工作負載。這項解決方案不含原生要求優先順序功能。 |
| 支援 LoRA 適應器 | 提供以親和性為基礎的後端原生轉送功能,可轉送至配備特定 LoRa 介面的後端,確保要求會轉送至適當的資源。 | 不提供 LoRA 轉換器或以親和性為基礎的轉送原生支援,這類轉送是以 LoRA 設定為基礎。 |
| 自動調度資源整合 | 運用 KV 快取使用率等 AI 專屬指標,做出更明智的資源調度決策,進而最佳化模型伺服器的自動調度資源功能。 | 使用自訂和外部指標與水平 Pod 自動配置器 (HPA) 整合。 這些指標會回報給應用程式負載平衡器,並根據回報的負載信號,以一般方式用於擴充。 |
| 設定與配置 | 使用 GKE Gateway API 進行設定。透過專門的 InferencePool 和 InferenceModel 自訂資源定義 (CRD) 擴充標準 API,啟用 AI 感知功能。 |
您可以使用 GKE Gateway API 的標準資源設定這項解決方案。應用程式必須實作以 HTTP 標頭為基礎的機制,例如待處理要求成本匯總 (ORCA),才能回報負載平衡的自訂指標。 |
| 安全性 | 這項解決方案包含在閘道層級使用 Model Armor 進行 AI 內容篩選。此外,這項服務也運用基礎 GKE 安全性功能,例如 TLS、Identity and Access Management (IAM)、角色式存取控管 (RBAC) 和命名空間。 | 這項解決方案使用標準的應用程式負載平衡器安全堆疊,包括 Google Cloud Armor、TLS 終止和 IAM。如要啟用 AI 內容篩選功能,您可以將 Google Cloud Armor 整合為服務擴充功能。 |
| 觀測能力 | 內建 AI 專屬指標的觀測功能,包括 GPU 或 TPU 使用率、KV 快取命中次數、要求佇列長度和模型延遲時間。 | 可觀測性取決於應用程式設定回報的任何自訂指標。您可以在 Cloud Monitoring 中查看這些指標。包括標準或自訂名稱的指標。 |
| 擴充性 | 以可擴充的開放原始碼基礎為建構依據,可讓使用者管理端點選擇器演算法。並透過專用的 [自訂資源定義 (CRD)](/kubernetes-engine/docs/how-to/deploy-gke-inference-gateway) (例如 InferencePool 和 InferenceModel) 擴充 GKE Gateway API,簡化常見的 AI 用途。 |
這項功能具有彈性,可讓您使用應用程式透過 ORCA 標準回報的任何 [自訂指標 (負載信號)](/load-balancing/docs/https/applb-custom-metrics),擴充負載平衡功能。 |
| 發布階段 | 正式發布 | 正式發布 |
何時使用 GKE Inference Gateway
選擇 GKE Inference Gateway,在 GKE 上最佳化複雜的 AI 和機器學習推論工作負載,特別是大型語言模型 (LLM)。建議在下列情況使用這項解決方案:
- 提供 LLM 服務:使用 vLLM 等模型伺服器時,您需要根據 LLM 專屬狀態 (例如 KV 快取使用率或要求佇列長度) 做出路由決策。
- 使用 LoRA 轉換器部署模型:您需要智慧型、以親和性為準的路由,將要求傳送至配備正確可用 LoRA 轉換器的後端。
- 處理處理成本差異極大的推論要求:舉例來說,動態提示大小或複雜度需要具備成本意識的負載平衡器。
- 實作要求優先順序:您需要為不同類別的推論流量設定優先順序,例如重要、標準或可捨棄的要求。
- 自動調度資源最佳化:您希望自動調度資源機制與生成式 AI (GenAI) 模型伺服器的特定效能指標 (例如 KV 快取使用率) 緊密結合,以便做出更明智的調度資源決策。
- 運用 Model Armor 整合功能:您需要在閘道層級使用 Model Armor 進行 AI 安全檢查。
- 取得開箱即用的觀測能力:您需要內建的觀測功能,才能取得重要的 AI 專屬指標,包括 GPU 或 TPU 使用率、KV 快取命中次數和要求佇列長度。
- 簡化生成式 AI 部署作業:您偏好專為簡化 GKE 上常見生成式 AI 部署模式而建構的解決方案,同時透過可擴充的 GKE Gateway API 基礎架構,保留未來自訂選項。
搭配自訂指標使用 GKE Gateway 的時機
如要根據應用程式的獨特效能指標,達成彈性的一般用途負載平衡,請搭配使用 GKE Gateway 和自訂指標。這個方法可根據應用程式定義的獨特效能指標 (包括特定推論情境) 分散負載。建議在下列情況下使用這項功能:
- 工作負載的流量很高,且每項要求相對而言處理成本一致。
- 應用程式回報的一或兩項特定自訂指標 (通常是透過 HTTP 回應標頭,並使用待處理要求成本匯總 (ORCA) 負載回報標準),可有效管理負載分配。
- 負載平衡需求與生成式 AI 或 LLM 專屬功能無關。
- 您的作業模型不需要 GKE Inference Gateway 提供的 AI 專屬智慧功能,可避免不必要的架構複雜度。
- 我們優先考量維持與現有應用程式負載平衡器部署作業的一致性,而這些部署作業符合推論服務的負載平衡需求。
後續步驟
- 瞭解 GKE Inference Gateway。
- 瞭解應用程式負載平衡器。
- 在 GKE AI Labs 中探索實驗性範例,瞭解如何運用 GKE 加速 AI/機器學習計畫。