Google TPU 文件

如何使用 TPU 在 Inference Endpoint (IE) 上部署模型以進行服務

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

如何使用 TPU 在 Inference Endpoint (IE) 上部署模型以進行服務

Inference Endpoints (IE) 是一個在 TPU 上為支援的模型提供生成式 AI 服務的解決方案。它不需要設置獨立的 GCP 帳戶,並提供預先配置的設置,以便透過 Optimum 的 TPU TGI 來服務模型。

您可以在 Inference Endpoint 上部署任何我們支援的模型(請參閱支援的模型列表)。Inference Endpoints 透過建立一個可根據需求自動擴展的 TGI 伺服器,來提供安全的生產環境。

我們已經對 TPU 上的 Inference Endpoints 進行了最佳化,以確保每個模型都能達到最佳效能。

1. 建立新的 Endpoint

點擊「New Endpoint」按鈕以在 https://endpoints.huggingface.co 開始使用。

Create new endpoint

2. 配置新的 Endpoint

從 TPU 支援的模型列表中選擇一個模型來配置您的 Endpoint。注意:如果您選擇了不支援 TPU 的模型,TPU 選項將不會顯示。這是為了防止在 TPU 上啟動不支援的模型而設計的。

讓我們以 google/gemma-2b-it 為例。此時 TPU 分頁是可選的,因此我們可以確認 TPU 的相容性。請注意,此模型在 CPU 上無法使用,這由呈現灰色的 CPU 選項表示。

Configure endpoint

注意:我們會自動為每個模型選擇最佳的硬體和配置。對於 google/gemma-2b-it 這類較小的模型,我們選擇 1-chip TPU (TPU v5e-1),因為 16GB 的 HBM(高頻寬記憶體)足以服務 2B 模型。這能確保資源分配的成本效益,避免不必要的運算支出。

我們進行了廣泛的測試並優化了 TGI 配置,以最大化硬體效能。諸如 Max Input Length(最大輸入長度)、Max Number of Tokens(最大 Token 數)和 Max Batch Prefill Tokens(最大批次預填充 Token 數)等參數,都是根據每個模型的需求自動配置,並由 optimum-tpu 團隊手動設定。如果您將模型設定為 google/gemma-7b-it,您會發現「container configuration」中的這些數值會有所不同,且是專為 7b 模型進行優化的。

注意:您可以透過存取介面中的環境變數部分來設定進階 TGI 功能(例如量化)。例如,您可以設定「key:QUANTIZATION」和「value:1」來啟用量化。您可以在我們的進階 TGI 服務指南 (./advance-tgi-config) 中查看所有這些進階 TGI 選項。

完成配置後,點擊「Create Endpoint」按鈕。

3. 使用您的 Endpoint

Endpoint 需要初始化,在此期間您可以監控日誌。在日誌部分,您會觀察到模型正在進行暖身(warmup)以進行編譯,從而達到最佳效能。Endpoint 啟動通常需要 5 到 30 分鐘,具體取決於模型大小。此暖身期間會觸發多次編譯,以確保達到最高的服務效能。

IE init

在 Endpoint 完成「Initializing」狀態後,您就可以透過 GUI 或 API 查詢它。

IE running

使用 playground 或 curl 指令查詢您的 Endpoint。

3.1 透過 Playground 進行查詢

使用 GUI 在 TPU 實例上編寫並執行查詢。

IE playground openAI

3.2 透過 curl 進行查詢

或者,使用 curl 指令來查詢 Endpoint。

IE playground curl

curl "https://{INSTANCE_ID}.{REGION}.gcp.endpoints.huggingface.cloud/v1/chat/completions" \
-X POST \
-H "Authorization: Bearer hf_XXXXX" \
-H "Content-Type: application/json" \
-d '{
    "model": "tgi",
    "messages": [
        {
            "role": "user",
            "content": "What is deep learning?"
        }
    ],
    "max_tokens": 150,
    "stream": true
}'

您需要將 {INSTANCE_ID} 和 {REGION} 替換為您自己的部署數值。

下一步

© . This site is unofficial and not affiliated with Hugging Face, Inc.