GH GambleHub

Infraestrutura AI e PULA

(Secção Tecnologia e Infraestrutura)

Resumo curto

A produção-AI não é um modelo em um único servidor, mas sim um cluster de nós GPU, pool de aceleradores compartilhados, serving unificado, dados/fichas, observabilidade e controle de custo. Para iGaming, é crítico em tempo real: antifrode, personalização, bate-papo, assistentes LLM, recomendações de jogos/promoções. Tijolos básicos: Kubernetes/Slurm para planejamento, isolamento de carga de trabalho, rede de alta velocidade (100/200/400G com RDMA), armazenamento rápido, MLOs maduro, e SLO «de ferro».

1) Mapa arquitetônico

Camadas:

1. Cluster de computação: GPU-nodes (classes A/H, AMD/ROCm, Intel Gaudi etc.), CPU-nodes/fichas.

2. Rede: 100G + Ethernet/IB, RDMA (RoCEv2), topologia NCL, QoS.

3. Armazenamento: objeto (S3- ) , distribuído por POSIX (Ceph/grid), local NVMe-scratch.

4. Dados/fichas: fichestor (online/offline), BB vetorial (ANNE), dinheiro (Redis), filas.

5. Plataforma ML: registro de artefatos e modelos, pipline (CI/CD), controle de versões, fichas como código.

6. Camada de serviço: Triton/KServe/vLLM/text-generation-inference (TGI), A/B/Canary-Depl, recall automático.

7. PII, segredos, auditorias, políticas de exportação, licenças de balança/dataset.

Cargas típicas:
  • Monitoramento online (p95 ≤ 50-150 ms) - antifrode, recomendação, classificação.
  • O LLM-serving (p95 ≤ 200-800 ms para 128-512 tokens) - bate-papo/agentes/dicas.
  • Análise/pré-ensinamento de pacotes - janelas noturnas, métricas offline.
  • Fynetuning/adaptação - periodicamente, com prioridade abaixo da linha.

2) Pulas de GPU e planejamento

Modelo de pool

Pool Serving: consultas curtas, batching alto, SLO rigoroso.
Pool «Training/Feintüning»: longa duração, treinamento distribuído (DDP).
Pool «R & D/Experimentos»: quotas/limites, preempção permitida.
Pool «CPU/Pre-/Post-processing»: normalização, tocenização, rerank por CPU.

Planejadores

Kubernetes (+ device-plugin, NodeFeatureDiscovery, taints/tolerations, PriorityClass, PodPriority/Preemption).
Slurm (muitas vezes para treinamento HPC) - pode ser misturado com K8s através de workers individuais.
Fair share e quotas: namespace quotas de GPU, CPU, memória; «bancos» GPU-relógio; limites de neymspace/projeto.

Particionamento de GPU

MIG (Multi-Instance GPU): corte o acelerador em slides isolados (para serving/multi-tenência).
MPS: sharing SM para tarefas menores (monitorar a interferência).
NVLink/PCIe - Considerar a topologia no pinning de poda (Topology Aware Scheduling).

Exemplo de anotações K8s (conceito):
yaml apiVersion: v1 kind: Pod metadata:
annotations:
scheduling. k8s. io/group-name: "ai-serving"
spec:
nodeSelector: { gpu-pool: serving }
tolerations: [{ key: "gpu", operator: "Exists", effect: "NoSchedule" }]
priorityClassName: ai-serving-critical

3) Rede e desempenho entre nós

RDMA (RoCEv2) para NCCL-all-rews; Configurações ECN/PFC, isolamento das classes de tráfego.
Localização: Treinamento dentro de uma única «fábrica» (pod/host/ótica), serving mais próximo do usuário (edge/região).
Controle Congest: perfis tuned, jumbo frames, interfaces pin-ning.

4) Armazenamento e dados

Armazenamento de balanças/artefatos: objeto (versionização, imutabilidade).
Datasets/fichas: Lakehouse (Delta/Iceberg/Hudi) + offline-fitchistor; fichestor online (SLA milissegundos).
BB vetoriais (ANNE): Faiss/SaNN/aceleradores, ou motores vetores vendedores; charding, HNSW/IVF, replicação.
NVMe-cash local: balança aquecida/embeddings para partida a frio.

5) Modelos Serving

Quadros

Triton Inference Server (multi-model, multi-taim, batching dinâmico).
KServe (K8s nativo, autoscaling HPA/KPA, canários).
vLLM/TGI para Tocenização LLM e decodificação de alto desempenho (paged-attence, KV-Cet Offlood).
ONX Runtime/ TensorRT-LLM - para compilação e aceleração.

Otimização

Quantificação: INT8/FP8/INT4 (Percentili/Calibragem, AWQ/GPTQ) - em linha, cuidado para medir a qualidade.
Compilação de grafo: TensorRT, TorchInductor/XLA, fused-kernels.
Batching/microatching: dinâmico e estático; для LLM — continuous batching.
KV KV: Sharing entre solicitações, off para CPU/NVMe em contextos longos.
Decodificação especulativa: modelo draft + verificador para acelerar a linguagem de token.
Limites de token/contexto, paragem precoce, pares-palavras, time-budet para consulta.

Políticas de deploy

A/B, canários, shadow - comparação latência/qualidade/métricas de negócios.
Blue Green, sem downthame.
Rollback por SLO/erro.

6) Treinamento/fintuning

DDP/FSDP/ZeRO: memória/gradiente distribuída, contabilidade NVLink/topologia.
Checkpoints: incessantes/completos, frequência vs I/O.
Mixed Precision: bf16/fp16 + loss scaling; perfilar a estabilidade.
Dataset-charding: Iterador uniforme, replicação por nós.
Prioridades: jobs intermitentes (preemptible) a favor do serving.
Pypline autônoma: data → → eval → minúscula → promoção no PROD com critérios gate.

7) MLOps e plataforma

Registro de modelos: versões, assinaturas, dependências, licenças/permissões de balança.
I/CD modelos: testes de compatibilidade, performance-regressão, quality-gate, deplom seguro.
Composição offline/online (função parity), TTL e backfill.
Data/Modelo Lineage: rastreamento do dataset até o relatório/experiência.
Diretório de prompt/modelo para LLM (versioning).

8) Observabilidade e SLO

Métricas online:
  • Latitude p50/p95/p99, tocens/s, batch ocupance, queue wait, GPU-util/SM ocupance, memória, erros.
  • Especificação LLM: tokens de entrada/saída, comprimento médio de resposta, proporção de falhas de limite, dinheiro-hit KV.
  • Qualidade: testes de regressão automáticos (offline), telemetria online (conteúdo-bandeiras, toxicidade, precisão de emissão em amostras de ouro).
  • Negócio SLO: conversão de personalização, precisão de antifrode, retenção.

Alerts: crescimento de p99/fila, queda de tocens/s, degradação de batch-fill, esgotamento de VRAM/PCIe-throttle, crescimento de rate-limit falhas.

9) Segurança, Complacência e Privacidade

PII/finded: segmentação de computação e dados por região, criptografia em paz/transito, toquenização.
Segredos/chaves: KMS/Secret Gerente; excluir armazenamento em imagens/código.
Políticas de saída LLM: filtros de segurança, red-teaming, registro de prompt/respostas (com anonimato).
Licenças: conformidade com as licenças de dataset/peso; «no-redistute «/restrições comerciais.
Isolamento dos tenentes: namespace-RBAC, redes, slides MIG, limites e quotas.

10) Custo e finopes

Planeamento de capaciti: perfis de carga (RPS, tokens/segundos), caudas de torneios e campanhas.
Reserva/Spot: Poulas mistas (reserved + spot/preemptil) com tarefas e checkpoint repetidas.
Scale automático: HPA/KPA por RPS/queue depth/GPU-util; «Início quente» com balanças aquecidas.
Zoológico modelo: reduza o número de opções; use a adaptação (LoRA/PEFT) em vez da duplicação completa.
Cash: embeddings/resultados de consultas caras, sharing KV KV para LLM.
Otimização de tokens: compressão de prompt, retrieval-augmented generation (RAG), rerank antes da geração.

11) Multiregião, HA e DR

Ativo/Ativo serving mais próximo do usuário, routing global (latency-based).
Replicar balanças e fichas com verificação de integridade; O raio de dinheiro nos lançamentos.
Plano DR.: perda de AZ/região, evacuação de pool de reserva, controle de dependência de catálogo centralizado.
Dias Chaos: testes de falha GPU-nod/domínios de rede/armazenamento.

12) Modelos de configuração (conceitos)

Triton - batching dinâmico:
text dynamic_batching {
preferred_batch_size: [4, 8, 16, 32]
max_queue_delay_microseconds: 2000
}
instance_group { count: 2 kind: KIND_GPU }
KServe - Canários:
yaml spec:
predictor:
canaryTrafficPercent: 20 model:
modelFormat: { name: triton }
resources:
limits: { nvidia. com/gpu: "1" }
vLLM - iniciar (ideias):

--tensor-parallel-size 2
--max-num-seqs 512
--gpu-memory-utilization 0. 9
--enforce-eager

13) especificação LLM: RAG e circuito de busca

Indexação: chanking, embeddings, ANN-charding por 'tenant/local'.
Ranank: modelo leve em um slide CPU/GPU para melhorar a precisão.
Cash prompt/contextos: Dedup, canonalization.
Políticas de citação/responsabilidade para domínios sensíveis (CUS/regras).

14) Folha de cheque de implementação

1. Fixe SLO (p95 latency/tocens/s, disponibilidade) e perfis de carga.
2. Divida o cluster em pool (serving/train/R & D) e digite quotas/prioridades.
3. Inclua RDMA/NCCL e planejamento topologicamente consciente.
4. Configure a balança, o dataset, o fichestor (online/offline), a base de dados vetoriais.
5. Selecione a pilha de serving (Triton/KServe/vLLM) e adicione a batching/KV-dinheiro/quantificação.
6. Execute o registro de modelos, CI/CD, canários/shadow.
7. Coloque observabilidade em sistemas + métricas de negócios, qualidade, rastreamento.
8. Digite as políticas de segurança/PII, licenças, auditorias.
9. Otimize o TCO: reserved + spot, scale automático, cachê, PeFT em vez de clones completos.
10. Prepare a HA/DR. e realize o game-day.

15) Antipattern

«Um GPU grande para tudo», sem pool ou prioridade.
A falta de batching dinâmico e de cachê KV para o LLM → uma explosão de p99 e custo.
Treinamento e serving em uma bala sem preempção → SLO incidentes.
Telemetria qualidade/segurança zero → degradação e riscos imperceptíveis.
Monólito centralizado sem fichador/registro de modelos → sem reprodução.
Ignorar licenças de balança/dados.

Resumo

A bem-sucedida infraestrutura AI é um pool de GPU com planejamento inteligente, alta rede e armazenamento correto, serving eficiente (batching, dinheiro, quantificação, compilação), MLOs maduro e SLO rigoroso. Combinada com segurança/PII, HA/DR. multiregional e finops elaborados, a plataforma oferece um p99 estável, monitorado $/pedido e implementação rápida de novos modelos, desde antifrode até personalização e assistentes LLM.

Contact

Entrar em contacto

Contacte-nos para qualquer questão ou necessidade de apoio.Estamos sempre prontos para ajudar!

Iniciar integração

O Email é obrigatório. Telegram ou WhatsApp — opcionais.

O seu nome opcional
Email opcional
Assunto opcional
Mensagem opcional
Telegram opcional
@
Se indicar Telegram — responderemos também por lá.
WhatsApp opcional
Formato: +indicativo e número (ex.: +351XXXXXXXXX).

Ao clicar, concorda com o tratamento dos seus dados.