Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)48 mil · #3611

model-serving-kubernetes

Ajuda seu agente a implantar modelos de aprendizado de máquina em servidores Kubernetes. Ele usa ferramentas específicas para tornar os modelos acessíveis.

O que ela faz

Esta ferramenta ajuda a colocar modelos de inteligência artificial (IA) para funcionar em servidores usando Kubernetes. Ela permite que os modelos respondam a pedidos de forma eficiente, mesmo com muitos acessos ao mesmo tempo.

Quando usar

  • ✓Quando você tem um modelo de IA pronto para ser usado por outras aplicações.
  • ✓Quando você precisa que seu modelo de IA atenda a muitos usuários ao mesmo tempo.
  • ✓Quando você quer testar novas versões do seu modelo de IA gradualmente.

Exemplo do que pedir para a IA

“Coloque meu modelo de IA para funcionar no Kubernetes para que ele possa receber pedidos.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/model-serving-kubernetes/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/model-serving-kubernetes/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta configura um ambiente no Kubernetes para rodar seu modelo. Ela usa ferramentas como KServe ou Triton para gerenciar o modelo, permitindo que ele escale automaticamente e seja atualizado sem interrupção.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill model-serving-kubernetes

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/model-serving-kubernetes/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Servindo Modelos no Kubernetes

Servindo modelos de ML em produção com KServe e Triton — implantações canary, autoescalonamento e agendamento ciente de GPU.

Quando Usar Esta Habilidade

Use esta habilidade quando:

  • Servir modelos scikit-learn, PyTorch, TensorFlow ou ONNX em escala
  • Implementar implantações canary e testes A/B para modelos de ML
  • Autoescalonar pods de inferência com base na taxa de requisições ou métricas de GPU
  • Implantar LLMs com Triton ou KServe no Kubernetes
  • Gerenciar múltiplas versões de modelos com divisão de tráfego

Pré-requisitos

  • Kubernetes 1.28+ com nós GPU
  • KServe instalado (ou Triton standalone)
  • kubectl e helm configurados
  • NVIDIA GPU Operator instalado no cluster

Instalação do KServe

# Install KServe with Helm
helm repo add kserve https://kserve.github.io/helm-charts
helm repo update

helm install kserve kserve/kserve \
  --namespace kserve \
  --create-namespace \
  --set kserve.controller.gateway.ingressGateway.className=nginx

# Verify
kubectl get pods -n kserve
kubectl get crd | grep kserve

InferenceService Básico (KServe)

apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
  name: sklearn-iris
  namespace: models
spec:
  predictor:
    sklearn:
      storageUri: gs://kfserving-examples/models/sklearn/1.0/model
      resources:
        requests:
          cpu: "1"
          memory: 2Gi
        limits:
          cpu: "2"
          memory: 4Gi
kubectl apply -f inference-service.yaml

# Get inference service URL
kubectl get inferenceservice sklearn-iris -n models
# NAME           URL                                          READY   ...
# sklearn-iris   http://sklearn-iris.models.example.com       True

# Test prediction
curl -X POST http://sklearn-iris.models.example.com/v1/models/sklearn-iris:predict \
  -H "Content-Type: application/json" \
  -d '{"instances": [[6.8, 2.8, 4.8, 1.4]]}'

InferenceService de LLM com GPU Ativada

apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
  name: llama-3-8b
  namespace: models
  annotations:
    serving.kserve.io/enable-prometheus-scraping: "true"
spec:
  predictor:
    containers:
    - name: vllm-container
      image: vllm/vllm-openai:latest
      args:
      - "--model"
      - "meta-llama/Llama-3.1-8B-Instruct"
      - "--tensor-parallel-size"
      - "1"
      - "--gpu-memory-utilization"
      - "0.90"
      ports:
      - containerPort: 8080
        protocol: TCP
      resources:
        requests:
          nvidia.com/gpu: "1"
          memory: "20Gi"
          cpu: "4"
        limits:
          nvidia.com/gpu: "1"
          memory: "24Gi"
          cpu: "8"
      readinessProbe:
        httpGet:
          path: /health
          port: 8080
        initialDelaySeconds: 60
        periodSeconds: 10
      env:
      - name: HUGGING_FACE_HUB_TOKEN
        valueFrom:
          secretKeyRef:
            name: hf-token
            key: token
    nodeSelector:
      nvidia.com/gpu.present: "true"
  transformer:
    containers:
    - name: kserve-container
      image: kserve/kserve-transformer:latest

Implantação Canary (Divisão de Tráfego)

apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
  name: llama-3-8b
  namespace: models
spec:
  predictor:
    canaryTrafficPercent: 20    # 20% to new version, 80% to stable
    containers:
    - name: vllm-container
      image: vllm/vllm-openai:latest
      args:
      - "--model"
      - "meta-llama/Llama-3.1-8B-Instruct-v2"  # new model version
      resources:
        limits:
          nvidia.com/gpu: "1"
# Gradually increase canary traffic
kubectl patch inferenceservice llama-3-8b -n models \
  --type='json' \
  -p='[{"op":"replace","path":"/spec/predictor/canaryTrafficPercent","value":50}]'

# Promote canary to stable
kubectl patch inferenceservice llama-3-8b -n models \
  --type='json' \
  -p='[{"op":"remove","path":"/spec/predictor/canaryTrafficPercent"}]'

Autoescalonamento com KEDA

apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  name: llama-scaler
  namespace: models
spec:
  scaleTargetRef:
    apiVersion: serving.kserve.io/v1beta1
    kind: InferenceService
    name: llama-3-8b
  minReplicaCount: 1
  maxReplicaCount: 5
  triggers:
  - type: prometheus
    metadata:
      serverAddress: http://prometheus-server.monitoring:9090
      metricName: kserve_request_count
      threshold: "10"
      query: |
        sum(rate(kserve_request_count_total{namespace="models",

…
Perguntas frequentes

O que é Kubernetes?

Kubernetes é um sistema que ajuda a gerenciar e organizar aplicações em muitos servidores ao mesmo tempo, garantindo que elas funcionem bem e estejam sempre disponíveis.

O que é KServe/Triton?

KServe e Triton são ferramentas que ajudam a servir modelos de IA. Eles facilitam a configuração, o gerenciamento e o escalonamento dos modelos para que possam responder a pedidos rapidamente.

O que são 'canary deployments'?

É uma forma de lançar uma nova versão de um modelo de IA para apenas uma pequena parte dos usuários. Se tudo funcionar bem, a nova versão é liberada para todos. Isso ajuda a evitar problemas com novas versões.

Detalhes

Descrição original do autor

Deploy ML models on Kubernetes with KServe (formerly KFServing) and NVIDIA Triton Inference Server.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3611
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas