Pular para conteúdo

Capítulo 7.1 — Ambientes e CI/CD

🎯 Objetivo

Estruturar ambientes e pipelines de CI/CD próprios para IA. Em sistemas tradicionais, "ambiente" é uma cópia da aplicação. Em IA, ambiente também envolve modelo, prompts, índices RAG, tools, policy bundles, memória e dados - cada um com seu ciclo de vida.

🧠 Ambientes recomendados

Ambiente Para que serve Cuidados
Local Desenvolvimento individual Modelos locais (Ollama, llama.cpp) para evitar custo e PII em provider
Dev Compartilhado pelo time Index RAG sintético; dados de PII redigidos; budgets baixos
Staging Espelho próximo da produção Modelo igual ao de produção; índice de staging; dados de produção redigidos
Sandbox de segurança Execução isolada (código gerado, tools experimentais) Rede bloqueada por default; egress allowlist mínima
Shadow mode Versão candidata recebe tráfego real sem efeito Apenas para componentes sem efeito colateral; mede diferença vs produção
Produção Tráfego real SLO, monitoramento, budgets, audit

🧠 CI/CD específico para IA

  • CI/CD de modelos. Pipeline de treino/fine-tuning, eval gate (golden + adversarial + regression), promoção em model registry com aprovação.
  • CI/CD de prompts. Versionamento (semver ou alias), regression tests com golden set, eval automatizado em PR.
  • CI/CD de tools. Schema versionado, contract tests, security tests (injection nos argumentos), compatibility tests entre versões.
  • CI/CD de agentes. Eval harness fim a fim em casos golden + adversarial; testes de trajetória; budgets em eval.
  • CI/CD de MCP servers. Compatibility tests entre versões; capabilities review a cada upgrade; assinatura do artefato.
  • CI/CD de índices RAG. Eval de recall e groundedness antes de promover novo índice; suporte a dual-read em migrações.
  • CI/CD de policies. opa test (ou equivalente) em todo PR; bundles assinados.

📌 Princípios

  • Eval gate é não-opcional. Mudanças que afetam comportamento passam por eval; sem isso, regressão entra silenciosa.
  • Pinning. Modelos, frameworks de serving, tokenizers, modelos de embedding e digests de container são pinados.
  • Promoção tem dono. Approver explícito em cada degrau de ambiente.