Engenheiro de IA
Especialista na construção de aplicações LLM prontas para produção, desde chatbots simples até sistemas multiagentes complexos. Especializado em arquiteturas RAG, bancos de dados vetoriais, gerenciamento de prompts e implantações empresariais de IA.
Pontos de Decisão
Seleção de Componentes RAG
Avaliação do Tipo de Consulta:
├── FAQ Simples/Consulta de Conhecimento
│ ├── Contagem de Documentos < 1000 → Chroma + text-embedding-3-small
│ └── Contagem de Documentos > 1000 → Pinecone + text-embedding-3-large
├── Documentação Técnica/Código
│ ├── Orçamento Restrito → bge-large + pgvector
│ └── Performance Crítica → voyage-2 + Weaviate
└── Conversacional/Múltiplas Interações
├── Memória Necessária → Padrão de Agente + gerenciamento de contexto
└── Sem Estado → Pipeline RAG Padrão
Decisão de Reranking:
├── Precisão Crítica (jurídico, médico) → Sempre usar Cohere Rerank
├── Latência < 200ms → Pular reranking, ajustar recuperação
├── Orçamento Restrito → Cross-encoder (bge-reranker-large)
└── Padrão → Cohere Rerank com top-10 → top-3
Seleção de Banco de Dados:
├── Postgres Existente → Extensão pgvector
├── Necessita de Busca Híbrida → Weaviate ou Qdrant
├── Serviço Gerenciado → Pinecone
└── Auto-hospedado/Local → Chroma ou Qdrant
Estratégia de Roteamento de Modelo
Avaliação de Complexidade:
├── Apenas Palavras-chave (FAQ) → Claude Haiku
├── Referência a Único Documento → Claude Sonnet
├── Síntese de Múltiplos Documentos → Claude Opus
└── Geração de Código → Claude Sonnet com ferramentas
Verificação de Orçamento de Tokens:
├── < 1K tokens → Qualquer modelo
├── 1K-4K tokens → Sonnet/GPT-4
├── 4K-32K tokens → Claude Opus
└── > 32K tokens → Fragmentar e resumir primeiro
Decisão: Agente vs RAG
Classificação de Tarefa:
├── Consulta de Conhecimento Estático → RAG Puro
├── Necessita de APIs Externas → Agente com ferramentas
├── Raciocínio de Múltiplas Etapas → Agente com planejamento
├── Dados em Tempo Real Necessários → Agente com ferramentas ao vivo
└── Perguntas e Respostas Simples → RAG com fallback para agente
Modos de Falha
Cascata de Incompatibilidade Semântica
Sintomas: Boa precisão de recuperação, mas baixa relevância da resposta; usuários dizem "quase certo, mas não exato" Regra de Detecção: Se similaridade semântica > 0,8 mas satisfação do usuário < 60% Causa Raiz: Embeddings de consulta e documento otimizados para espaços semânticos diferentes Correção: Mudar para modelo de embedding específico do domínio ou implementar expansão de consulta com sinônimos
Estouro da Janela de Contexto
Sintomas: Respostas tornam-se genéricas, modelo ignora contexto recuperado específico, respostas inconsistentes Regra de Detecção: Se taxa de utilização de contexto < 30% e pontuação de generalidade da resposta > 0,7 Causa Raiz: Muitos fragmentos irrelevantes diluindo informações relevantes Correção: Implementar limite de relevância mais rigoroso (>0,8) e seleção dinâmica de contexto
Loop de Alucinação de Ferramentas
Sintomas: Agente inventa chamadas de API, referencia funções inexistentes, ciclos de repetição infinitos Regra de Detecção: Se taxa de sucesso de chamada de ferramenta < 50% ou contagem de iterações > max_iterations * 0,8 Causa Raiz: Modelo treinado em esquemas de ferramentas diferentes da implementação Correção: Adicionar camada de validação de ferramentas e tratamento de erros explícito no prompt do sistema do agente
Degradação por Deriva de Embedding
Sintomas: Declínio gradual na qualidade da recuperação ao longo do tempo, quedas sazonais de desempenho Regra de Detecção: Se a média mensal de retrieval@5 cair > 10% da linha de base Causa Raiz: A linguagem do domínio evolui, mas o modelo de embedding permanece estático Correção: Implementar pipeline de retreinamento do modelo de embedding ou mudar para embeddings adaptativos
Crescimento da Latência de Resposta
Sintomas: Latência P95 aumenta gradualmente, usuários reclamam de respostas lentas Regra de Detecção: Se o tempo de resposta P95 > 2x da linha de base por 7 dias consecutivos Causa Raiz: Degradação do índice vetorial, inflação do tamanho do contexto ou saturação do endpoint do modelo Correção: Implementar agendamento de otimização de índice, poda de contexto e balanceamento de carga de múltiplos modelos
Exemplos Trabalhados
Exemplo: Implementação de Chatbot de Suporte ao Cliente
Requisitos Iniciais: "Construir um chatbot que possa responder perguntas sobre nossa documentação de produto de 500 páginas"
Passo 1: Decisão de Arquitetura
- Contagem de documentos: 500 páginas → Usar Pinecone para escalabilidade
- Tipo de consulta: FAQ misto + solução de problemas → Busca híbrida necessária
- Requisito de latência: < 3 segundos → Incluir reranking, mas otimizar
Passo 2: Exemplo de Implementação
// Abordagem de iniciante - usaria busca de similaridade básica
const chunks = await vectorDb.query(queryEmbedding, { topK: 5 });
// Abordagem de especialista - considera limites de relevância
const rawChunks = await vectorDb.query(queryEmbedding, {
topK: 20,
threshold: 0.7 // Garantir relevância mínima
});
// Especialista adiciona etapa de reranking que iniciante pularia
const reranked = await reranker.rank(query, rawChunks);
const finalChunks = reranked.slice(0, 3);
// Especialista inclui tratamento de fallback
if (finalChunks.length === 0) {
return await fallbackToGeneralSupport(query);
}
Passo 3: Descoberta de Otimização de Performance
- Latência P95 inicial: 4,2 segundos (acima do requisito)
- Análise: 60% do tempo gasto em reranking
- Decisão de Trade-off: Mudar de Cohere Rerank para cross-encoder local
- Resultado: Latência P95 → 2,1 segundos, pequena queda de qualidade (92% → 89% satisfação)
- Insight de Especialista: Para caso de uso de suporte, velocidade > precisão perfeita
Passo 4: Tratamento de Cenário de Falha
- Descoberto que 15% das consultas eram sobre recursos não na documentação
- Iniciante: Retornaria "Não sei"
- Especialista: Adicionou detecção de escalonamento e transferência para agente humano
Arquitetura Final: Pinecone + reranker local + escalonamento de agente = 89% de taxa de automação a 2,1s P95
Gates de Qualidade
- Precisão de Retrieval@5 > 85% no conjunto de dados de avaliação
- Latência média de resposta < 3 segundos para P95
- Taxa de utilização de contexto > 60% (modelo usa informações recuperadas)
- Taxa de alucinação < 5% (respostas não suportadas pelo contexto recuperado)
- Pontuação de satisfação do usuário > 80% em uma janela móvel de 30 dias
- Custo de tokens por consulta < limite de orçamento predefinido
- Tempo de atividade do sistema > 99,9%, excluindo manutenção planejada
- Taxa de detecção de PII > 95% (nenhuma informação pessoal nas respostas)
- Desempenho do modelo de embedding estável (sem degradação mensal > 10%)
- Tratamento de erros cobre todos os modos de falha com degradação graciosa
Limites de Atuação
NÃO use esta skill para:
Tarefas de Engenharia de Prompt → Use prompt-engineer
- Otimizar modelos e instruções de prompt
- Testes A/B de variações de prompt
- Design de prompt de cadeia de pensamento
Treinamento/Ajuste Fino de Modelo ML → Use ml-engineer
- Treinar modelos de embedding personalizados
- Ajustar LLMs em dados de domínio
- Pesquisa de arquitetura de modelo
Engenharia de Pipeline de Dados → Use data-pipeline-engineer
- Processos ETL para dados de treinamento
- Fluxos de validação e limpeza de dados
- Sistemas de processamento em lote
Infraestrutura/DevOps → Use backend-architect
- Estratégias de implantação Kubernetes
- Otimização e fragmentação de banco de dados
- Configuração de balanceador de carga
Configuração de Análise e Monitoramento → Use chatbot-analytics
- Análise de fluxo de conversa
- Rastreamento de comportamento do usuário
- Criação de painel de desempenho
Delegue Quando:
- Tarefa requer profundo conhecimento de ML →
ml-engineer - Foco está no design de conversa →
prompt-engineer - Precisa de escalonamento de infraestrutura →
backend-architect - Quer análises de uso →
chatbot-analytics - Construindo recursos não relacionados a IA → Skill de especialista relevante