本教學課程說明如何使用 vLLM 架構,部署及提供 DeepSeek-V3.2-Speciale 語言模型服務。您會在 Google Kubernetes Engine (GKE) Enterprise 版 Autopilot 叢集上部署這個模型,並使用單一A4 虛擬機器 (VM),其中包含 8 個 B200 GPU。
本教學課程假設您已查看 DeepSeek-V3.2-Speciale 語言模型,並確認其功能符合您的用途需求。
本教學課程適用於機器學習 (ML) 工程師、平台管理員和營運人員,以及有興趣使用 Kubernetes 容器自動化調度管理功能處理推論工作負載的資料和 AI 專家。
目標
透過 Hugging Face 存取 DeepSeek-V3.2-Speciale。
準備環境。
在 Autopilot 模式中建立 GKE 叢集。
建立 Hugging Face 憑證的 Kubernetes Secret。
建立 Cloud Storage bucket。
將模型下載至 Cloud Storage bucket。
將 vLLM 容器部署至 GKE 叢集。
使用 curl 與 DeepSeek-V3.2-Speciale 互動。
清除所用資源。
費用
本教學課程使用 Google Cloud的計費元件,包括:
如要根據預測用量估算費用,請使用 Pricing Calculator。
事前準備
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自體驗產品的實際應用成效。新客戶還能獲得價值 $300 美元的免費抵免額,能用於執行、測試及部署工作負載。
-
安裝 Google Cloud CLI。
-
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init -
選取或建立專案所需的角色
- 選取專案:選取專案時,不需要具備特定 IAM 角色,只要您在專案中獲派角色,即可選取該專案。
-
建立專案:如要建立專案,您需要專案建立者角色 (
roles/resourcemanager.projectCreator),其中包含resourcemanager.projects.create權限。瞭解如何授予角色。
-
建立 Google Cloud 專案:
gcloud projects create PROJECT_ID
將
PROJECT_ID替換為要建立的專案名稱。 Google Cloud -
選取您建立的 Google Cloud 專案:
gcloud config set project PROJECT_ID
將
PROJECT_ID替換為 Google Cloud 專案名稱。
如果尚未啟用必要的 API,請按照下列步驟啟用:
啟用 API 時所需的角色
如要啟用 API,您必須具備
serviceusage.services.enable權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。gcloud services enable container.googleapis.com
-
安裝 Google Cloud CLI。
-
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init -
選取或建立專案所需的角色
- 選取專案:選取專案時,不需要具備特定 IAM 角色,只要您在專案中獲派角色,即可選取該專案。
-
建立專案:如要建立專案,您需要專案建立者角色 (
roles/resourcemanager.projectCreator),其中包含resourcemanager.projects.create權限。瞭解如何授予角色。
-
建立 Google Cloud 專案:
gcloud projects create PROJECT_ID
將
PROJECT_ID替換為要建立的專案名稱。 Google Cloud -
選取您建立的 Google Cloud 專案:
gcloud config set project PROJECT_ID
將
PROJECT_ID替換為 Google Cloud 專案名稱。
如果尚未啟用必要的 API,請按照下列步驟啟用:
啟用 API 時所需的角色
如要啟用 API,您必須具備
serviceusage.services.enable權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。gcloud services enable container.googleapis.com
-
將角色授予使用者帳戶。針對下列每個 IAM 角色,執行一次下列指令:
roles/container.admingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
更改下列內容:
PROJECT_ID:專案 ID。USER_IDENTIFIER:使用者帳戶的 ID。 例如:myemail@example.com。ROLE:授予使用者帳戶的 IAM 角色。
- 登入或建立 Hugging Face 帳戶。
透過 Hugging Face 存取 DeepSeek-V3.2-Speciale
如要使用 Hugging Face 存取 DeepSeek-V3.2-Speciale 模型,請按照下列步驟操作:
- 登入 Hugging Face。
- 建立 Hugging Face
read存取權杖。 - 複製並儲存
read存取權杖值。本教學課程稍後會用到。
準備環境
如要準備環境,請設定預設環境變數:
更改下列內容:
YOUR_PROJECT_ID:您要在 Google Cloud 專案中建立 GKE 叢集,請輸入該專案的 ID。YOUR_RESERVATION_NAME:您要用來建立 GKE 叢集的預留資源名稱。根據預留項目所在的專案,指定下列其中一個值:專案中已有預留項目:
YOUR_RESERVATION_NAME預留項目位於其他專案,但您的專案可以使用該預留項目:
projects/RESERVATION_PROJECT_ID/reservations/YOUR_RESERVATION_NAME
YOUR_REGION:要建立 GKE 叢集的區域。您只能在預留項目所在的區域建立叢集。YOUR_CLUSTER_NAME:要建立的 GKE 叢集名稱。YOUR_GCS_BUCKET:您下載模型的 Cloud Storage bucket 名稱。YOUR_HF_TOKEN:您在上一節中建立的 Hugging Face 存取權杖。YOUR_NETWORK_NAME:GKE 叢集使用的網路。請指定下列其中一個值:如果您建立的是自訂網路,請指定網路名稱。
否則,請指定
default。
YOUR_SUBNETWORK_NAME:GKE 叢集使用的子網路。請指定下列其中一個值:如果您建立的是自訂子網路,請指定子網路名稱。您只能指定與預留項目位於相同區域的子網路。
否則,請指定
default。
在 Autopilot 模式中建立 GKE 叢集
如要在 Autopilot 模式中建立 GKE 叢集,請執行下列指令:
建立 GKE 叢集可能需要一段時間。如要確認 Google Cloud 已完成叢集建立作業,請前往 Google Cloud 控制台的「Kubernetes clusters」(Kubernetes 叢集)。
為 Hugging Face 憑證建立 Kubernetes Secret
如要為 Hugging Face 憑證建立 Kubernetes Secret,請按照下列步驟操作:
設定
kubectl,與 GKE 叢集通訊:建立 Kubernetes Secret 來儲存 Hugging Face 權杖:
建立 Cloud Storage bucket
如要使用現有的 Cloud Storage bucket,可以略過這個步驟。不過,請務必確保值區與叢集位於相同區域,且服務帳戶具備該值區的必要 write 權限。
如要使用新的 bucket 儲存模型,請執行下列指令:
將 Cloud Storage bucket 的 write 權限授予預設服務帳戶:
將模型下載至 Cloud Storage bucket
建立
deepseek-download-job.yaml檔案:套用
deepseek-download-job.yaml資訊清單來初始化下載工作:如要查看完成狀態,請執行下列指令:
--timeout標記會指定指令監控作業的時間長度,超過這個時間就會逾時。這項工作資源會使用 SSD 磁碟區,從 Hugging Face 將
DeepSeek-V3.2-Speciale模型權重下載至 Google Cloud Storage bucket。下載作業大約需要 40 分鐘才會完成。下載完成後,請前往下一節啟動模型部署作業。如要刪除工作,請執行下列指令:
將 vLLM 容器部署至 GKE 叢集
將模型下載至 Cloud Storage bucket 後,請完成下列步驟,將 vLLM 容器部署至 GKE 叢集:
使用所選 vLLM 部署作業建立
vllm-deepseek3-2.yaml檔案:將
vllm-deepseek3-2.yaml檔案套用至 GKE 叢集:如要查看完成狀態,請執行下列指令:
--timeout標記可讓指令在指定時間內監控部署作業。
使用 curl 與 DeepSeek-V3.2-Speciale 互動
如要驗證您部署的 DeepSeek-V3.2-Speciale 模型,請按照下列步驟操作:
設定通訊埠轉送至 DeepSeek-V3.2-Speciale:
開啟新的終端機視窗。然後,您可以使用
curl與模型對話:輸出內容大致如下:
{ "id": "cmpl-be345f0499e949ed8500e533be2cfe3f", "object": "text_completion", "created": 1764803171, "model": "deepseek-ai/DeepSeek-V3.2-Speciale", "choices": [ { "index": 0, "text": "The ReAct pattern integrates reasoning (thoughts) and actions (tool calls) within an agentic loop... [TRUNCATED FOR BREVITY] ...ReAct improves transparency and reliability by explicit reasoning steps.", "logprobs": null, "finish_reason": "stop", "stop_reason": "<|im_end|>", "token_ids": null, "prompt_logprobs": null, "prompt_token_ids": null } ], "service_tier": null, "system_fingerprint": null, "usage": { "prompt_tokens": 57, "total_tokens": 317, "completion_tokens": 260, "prompt_tokens_details": null }, "kv_transfer_params": null }
觀察模型成效
如要觀察模型效能,可以使用 Cloud Monitoring 中的 vLLM 資訊主頁整合功能。您可以在這個資訊主頁中查看重要的效能指標,例如權杖處理量、要求延遲和錯誤率。
如要瞭解如何使用 Google Cloud Managed Service for Prometheus 收集模型指標,請參閱 Monitoring 說明文件中的 vLLM 可觀測性指南。
清除所用資源
為避免因為本教學課程所用資源,導致系統向 Google Cloud 帳戶收取費用,請刪除含有相關資源的專案,或者保留專案但刪除個別資源。
為避免系統根據您在本教學課程中使用的資源,向您的 Cloud Billing 帳戶收取費用,請刪除含有相關資源的專案,或者保留專案但刪除個別資源。
刪除資源
完成本教學課程後,請刪除不再需要的資源:
如要刪除
vllm-deepseek3-2.yaml檔案中定義的部署作業和服務,以及 GKE 叢集中的 Kubernetes 密鑰,請執行下列指令:如要刪除 Cloud Storage bucket,請執行下列指令:
如要刪除 GKE 叢集,請按照下列步驟操作:
刪除專案
刪除 Google Cloud 專案:
gcloud projects delete PROJECT_ID