mcpField
G
gke-inference

gke-inference

github.com/google云与 DevOps21.6k7.0k 次安装今天更新
代码仓库

关于 gke-inference

gke-inference 是面向在 GKE 上部署 AI/ML 推理工作负载的技能,适用于配置模型服务的团队。它涵盖硬件选择、清单生成、自动扩缩和推理优化。

主要功能

  1. 01查找支持的模型与加速器组合
  2. 02生成 Kubernetes 推理清单
  3. 03选择 GPU 或 TPU 加速器
  4. 04配置 LLM 推理自动扩缩
  5. 05优化量化、批处理与并行度

适用场景

  1. 01在 GKE 部署 Llama、Gemma 或 Mistral
  2. 02为模型服务生成 Kubernetes 配置
  3. 03按延迟目标选择推理硬件
  4. 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 工作负载)
  • 已通过身份验证的 gcloud CLI
  • 目标区域有足够的 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"
推理自动扩缩容最佳实践
  1. 使用 DCGM 指标:Golden path 支持启用 DCGM 监控,以获取 GPU 利用率指标
  2. 设置合适的 minReplicas:持续提供服务时至少设为 1;批处理或按需 服务时设为 0
  3. 调整缩容延迟:LLM 模型加载速度较慢;应使用更长的稳定窗口
  4. 考虑队列深度:对于对延迟敏感的工作负载,应根据待处理请求数而非单纯的 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 : 预先拉取镜像 :

评论

支持 Markdown