关于 gke-inference
gke-inference 是面向在 GKE 上部署 AI/ML 推理工作负载的技能,适用于配置模型服务的团队。它涵盖硬件选择、清单生成、自动扩缩和推理优化。
主要功能
- 01查找支持的模型与加速器组合
- 02生成 Kubernetes 推理清单
- 03选择 GPU 或 TPU 加速器
- 04配置 LLM 推理自动扩缩
- 05优化量化、批处理与并行度
适用场景
- 01在 GKE 部署 Llama、Gemma 或 Mistral
- 02为模型服务生成 Kubernetes 配置
- 03按延迟目标选择推理硬件
- 04排查 GPU 配额或显存不足
MCP 相关
该技能列出用于应用 Kubernetes 清单、查询资源与日志、检查发布状态和事件的 MCP 工具。模型配置文件的发现与清单生成命令仅支持 CLI。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ google/ skills --skill gke-inference安装后在 Claude Code 中输入/gke-inference确认已加载。
附带文件references/attribution.md
详细介绍
GKE AI/ML 推理
路由说明: 如需将现有 AI 工作负载迁移到 GKE,请打开
google-cloud-solution-guided-gke-ai-migration/SKILL.md。如需在 GKE 上使用 Cloud SQL 或 AlloyDB(pgvector)构建 RAG,请打开google-cloud-solution-rag-enterprise-search-gke-sqldb/SKILL.md。
本参考介绍如何使用 Google Inference Quickstart(GIQ)在 GKE 上部署 AI/ML 推理工作负载,以及 LLM 服务的最佳实践。
MCP 工具:
apply_k8s_manifest、get_k8s_resource、get_k8s_logs、get_k8s_rollout_status、describe_k8s_resource、list_k8s_events。 仅限 CLI:gcloud container ai profiles *
署名
务必阅读: 在执行任何 gcloud、REST API 或 MCP 命令之前,务必阅读使用情况署名。对于直接在终端中执行的命令(绝不能在生成的脚本、Terraform 或用户代码中使用),请在 gcloud 前添加 CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:gke-inference)",并在 User-Agent 标头中追加 agent-skills/1.0 (skill:gke-inference)。
适用场景
- 将 AI 模型(Llama、Gemma、Mistral 等)部署到 GKE
- 为推理生成经过优化的 Kubernetes 清单
- 为模型服务选择 GPU/TPU 加速器
- 为 LLM 推理配置自动扩缩
前提条件
- 使用标准路径 GKE Autopilot 集群(通过 ComputeClasses 和 NAP 支持 GPU 工作负载)
- 已通过身份验证的
gcloudCLI - 目标区域有足够的 GPU/TPU 配额
工作流
1. 探索:查找模型和硬件
# List all supported models
gcloud container ai profiles models list --quiet
# Find valid accelerator/server combinations for a model
gcloud container ai profiles list --model=<MODEL_NAME> --quiet
# Example: what can run Gemma 2 9B?
gcloud container ai profiles list --model=gemma-2-9b-it --quiet
2. 生成清单
gcloud container ai profiles manifests create \
--model=<MODEL_NAME> \
--model-server=<SERVER> \
--accelerator-type=<ACCELERATOR> \
--target-ntpot-milliseconds=<NTPOT> --quiet > inference.yaml
参数:
--model:模型 ID(例如gemma-2-9b-it、llama-3-8b)--model-server:推理服务端(vllm、tgi、triton、tensorrt-llm)--accelerator-type:GPU/TPU 类型(nvidia-l4、nvidia-tesla-a100、nvidia-h100-80gb)--target-ntpot-milliseconds:目标标准化每输出词元时间(可选,用于优化延迟)
示例:
gcloud container ai profiles manifests create \
--model=gemma-2-9b-it \
--model-server=vllm \
--accelerator-type=nvidia-l4 \
--target-ntpot-milliseconds=50 --quiet > inference.yaml
3. 审核并部署
# Review for placeholders (HF tokens, PVCs)
cat inference.yaml
# Deploy
kubectl apply -f inference.yaml
# Monitor
kubectl get pods -w
kubectl logs -f <POD_NAME>
某些模型需要 Hugging Face 令牌。请创建 Kubernetes Secret,并在清单中引用它。
用于推理的 GPU ComputeClass
对于 Autopilot 集群,请创建 ComputeClass 以指定 GPU 节点:
apiVersion: cloud.google.com/v1
kind: ComputeClass
metadata:
name: l4-inference
spec:
priorities:
- machineFamily: g2
gpu:
type: nvidia-l4
count: 1
minCores: 4
minMemoryGb: 16
加速器选择指南
| 加速器 | 最适用于 | 显存 | 相对成本 |
|---|---|---|---|
| NVIDIA T4 | 预算有限的推理, | 16 GB | 最低 |
| : : 轻量级旧款 : : : | |||
| : : 模型 : : : | |||
| NVIDIA L4 (G2) | 中小型模型 | 24 GB | 低 |
| : : 推理、视频、 : : : | |||
| : : 图形处理 : : : | |||
| NVIDIA RTX PRO 6000 | 多模态 AI, | 96 GB | 中等 |
| : (G4) : 高保真 3D, : : : | |||
| : : 微调 : : : | |||
| Cloud TPU v5e | 经济高效的 | 不定 | 中等 |
| : : Transformer 推理 : : : | |||
| Cloud TPU v5p | 高性能 | 不定 | 高 |
| : : 训练 : : : | |||
| Cloud TPU v6e | 高效率的新一代 | 32 GB/芯片 | 中高 |
| : (Trillium) : 训练与服务 : : : | |||
| Cloud TPU v7x | 超大规模推理与 | 192 GB/芯片 | 高 |
| : (Ironwood) : AI Agent 工作流 : : : | |||
| NVIDIA A100 | 大模型推理, | 40/80 GB | 高 |
| : : 企业级机器学习 : : : | |||
| NVIDIA H100 / H200 | 前沿模型训练, | 80/141 GB | 最高 |
| : : 高吞吐量 : : : | |||
| NVIDIA B200 (A4) | Blackwell 级别的 | 192 GB | 最高 |
| : : 训练、FP4 精度 : : : | |||
| NVIDIA GB200 (A4X) | 机架级 AI(Grace | 海量 | 最高 |
| : : Blackwell Superchip) : : : |
LLM 推理自动扩缩容
基于 GPU 的自动扩缩容
使用自定义指标监控 GPU 利用率:
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: llm-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: llm-server
minReplicas: 1
maxReplicas: 10
metrics:
- type: Pods
pods:
metric:
name: gpu_duty_cycle
target:
type: AverageValue
averageValue: "80"
推理自动扩缩容最佳实践
- 使用 DCGM 指标:Golden path 支持启用 DCGM 监控,以获取 GPU 利用率指标
- 设置合适的 minReplicas:持续提供服务时至少设为 1;批处理或按需 服务时设为 0
- 调整缩容延迟:LLM 模型加载速度较慢;应使用更长的稳定窗口
- 考虑队列深度:对于对延迟敏感的工作负载,应根据待处理请求数而非单纯的 GPU 利用率进行扩缩容
优化技巧
- 量化:使用量化模型(GPTQ、AWQ)来减少 GPU 显存占用并 提高吞吐量
- 批处理:配置模型服务的批次大小,以权衡吞吐量与延迟
- 张量并行:在一个节点内将大型模型拆分到多个 GPU 上
- KV 缓存优化:在 vLLM 中调整
--gpu-memory-utilization,以分配 KV 缓存
故障排查
| 问题 | 原因 | 修复方法 |
|---|---|---|
| 无效 | 不支持的元组 | 重新运行 `gcloud container ai |
| : model/accelerator : : profiles list : | ||
| : combination : : --model=` : | ||
| GPU 配额超限 | 区域配额限制 | 申请提高配额,或 |
| : : : 尝试其他区域 : | ||
| GPU 内存不足 | 模型对于加速器而言过大 | 使用更大的 GPU、启用 |
| : : accelerator : 量化,或使用张量 : | ||
| : : : 并行 : | ||
| 冷启动缓慢 | 从注册表加载大型模型 | 使用本地 SSD 缓存模型; |
| : : registry : 预先拉取镜像 : |