7 MIN LEITURA · Pedro Thomaz

Em defesa de não usar IA — usa ML

Toda a app entregue em 2026 colou um chat a qualquer coisa. Aqui fica a defesa da alternativa aborrecida: sugestões ranqueadas por um modelo pequeno, baratas para correr a cada load, explicáveis o suficiente para defender numa clínica.
Em defesa de não usar IA — usa ML

Toda a reunião de produto em 2026 acaba na mesma frase: "e depois o GPT podia sugerir…". Já estivemos do outro lado dessa frase vezes suficientes para escrever o que fazemos em vez disso — e porque, para o tipo de produtos que construímos, ganha quase sempre.

O imposto LLM que ninguém soma

Uma chamada a um LLM não é uma feature. É um custo recorrente, um orçamento de latência, uma exposição regulatória e um problema de avaliação — tudo agrupado numa única API key. Num ecrã de bem-estar com 30 000 utilizadores activos por dia, até um modelo pequeno se torna a linha do P&L que o teu CFO aprende a soletrar. E isto antes da infraestrutura de streaming, do prompt caching, da monitorização de jailbreaks e dos embaraços "como modelo de linguagem AI" que a tua caixa de suporte te reenvia.

Nada disto é um argumento contra LLMs em geral. É um argumento contra usá-los para listas de sugestões ranqueadas — que é o que a maioria das "features de IA" realmente são, assim que tiras o embrulho.

O que uma "sugestão" normalmente precisa

Recua um passo. Uma sugestão num produto está quase sempre a responder às mesmas três perguntas:

  1. Que candidatos existem? O conjunto de candidatos é finito e teu — receitas, exercícios, artigos, suplementos, sons, produtos. Escreveste-os tu.
  2. Qual a relevância de cada um para este utilizador, agora?
  3. Qual o custo de errar?

Repara no que não está na lista: gerar texto novo. Na maior parte das vezes não precisas de prosa inédita — precisas de ordenar bem coisas já conhecidas.

O modelo aborrecido que ganha ao chatbot

No Jofit — a nossa app de fitness e bem-estar — entregamos um pequeno ranker que pontua cada intervenção candidata (um suplemento, uma troca de refeição, um cue de sono, um ajuste de treino) em três eixos:

Multiplica, ordena, fica com o topo. Tudo o que esteja no tier URGENT clínico salta o ranker por completo. A coisa toda corre em menos de um milissegundo e cabe num único ficheiro.

Porque um chatbot faria isto pior

Um LLM conseguiria gerar a mesma recomendação. Mas:

O ranker não tem nenhum destes problemas. Cada pontuação é uma função de inputs que controlamos. Podemos repetir os dados da semana passada contra o modelo desta semana e quantificar o lift. Podemos perguntar "o que acontecia se duplicássemos o peso do custo de adesão?" e responder numa tarde.

A caixa de ferramentas, por ordem de uso

  1. Scoring ponderado com coeficientes afinados à mão. Aborrecido. Eficaz. Dois fins-de-semana para entregar.
  2. Gradient-boosted trees (XGBoost / LightGBM) sobre labels de engagement. O melhor ROI em ML aplicado da última década. Treina num portátil.
  3. Matrix factorisation para recomendações colaborativas quando já tens histórico user-item. Mesma família do Netflix por volta de 2009. Continua excelente.
  4. Contextual bandits quando queres explorar tanto como explorar. O Vowpal Wabbit corre-os no edge.
  5. Um pequeno transformer ou modelo de embeddings para semelhança semântica. Sentence-transformers entrega um modelo de 90 MB que bate o GPT-4 na maioria dos benchmarks de retrieval.
  6. LLM — só quando o output é genuinamente texto novo que o utilizador precisa de ler, e tens uma linha de orçamento para isso.

Quando ir mesmo buscar um LLM

Três casos legítimos:

Perguntas frequentes

Porquê usar um pequeno ranker de ML em vez de um LLM numa funcionalidade de sugestões?

Porque uma lista de sugestões responde a uma pergunta finita e ordenável — qual dos seus próprios candidatos é mais relevante para este utilizador agora — em vez de exigir gerar texto novo. Um LLM faz isto pior: não cita fontes de forma fiável (com alucinações de 4-10%), não se consegue testar unitariamente, não consegue explicar uma pontuação nem fazer testes A/B de forma limpa. Uma chamada a um LLM é ainda um custo recorrente, um orçamento de latência e exposição regulatória.

Como é que o ranker da Jofit pontua cada intervenção candidata?

Pontua cada candidato em três eixos — peso da evidência (um artigo-fonte anotado mais uma pontuação de qualidade do estudo, em que RCT supera coorte que supera relato de caso, avaliada uma vez por um clínico), delta pessoal (quão longe o utilizador está do seu objetivo clínico) e custo de adesão (um modelo de histórico de hábitos que estima a fricção). Os três são multiplicados, ordenados, e ficam os primeiros.

O que acontece em casos clínicos urgentes?

Um nível clínico URGENTE contorna totalmente o ranker, ficando fora da pontuação e ordenação normais.

Isto é um argumento contra os LLMs em geral?

Não — o argumento é especificamente contra usar LLMs para listas de sugestões ordenadas, que é o que a maioria das "funcionalidades de IA" realmente são. A ideia é que não é preciso gerar texto novo; é preciso ordenar bem coisas já conhecidas.

Que técnicas de ML devemos usar primeiro?

Comece com pontuação ponderada com coeficientes afinados à mão, depois árvores com gradient boosting como XGBoost ou LightGBM sobre rótulos de envolvimento, e fatorização de matrizes assim que tiver histórico utilizador-item. O ranker da Jofit corre em menos de um milissegundo e cabe num único ficheiro.

A ordem de entrega

Se estás a olhar para uma spec que diz "sugestões com IA", faz isto:

  1. Lista os candidatos. Se não consegues, não tens um problema de recomendação — tens um problema de conteúdo. Resolve isso primeiro.
  2. Escolhe três eixos de scoring. Afina os pesos à mão durante uma semana.
  3. Entrega. Regista cada sugestão mostrada e cada uma sobre a qual o utilizador agiu.
  4. Ao fim de 4–6 semanas de dados, treina um modelo gradient-boosted sobre os logs. Substitui os pesos manuais.
  5. Só então, se ainda precisares de prosa inédita, adiciona um LLM — para explicar, não para decidir.

Entregas mais depressa, gastas menos, dormes melhor, e — mais importante — consegues responder à única pergunta que importa quando um utilizador pergunta porque recebeu aquela sugestão: aqui estão os três números, e aqui está o que significam.