Logo NascimentoIgor Nascimento / Blog
IA aplicada

A LLM não resolve o seu problema. E tudo bem.

Antes de colocar um modelo de linguagem no meio do fluxo, vale perguntar o que ele realmente faz, o que custa e o que você perde em previsibilidade. Uma conversa sobre escolher a ferramenta certa, com um caso real em que a resposta foi "não".

IA aplicadaArquitetura10 min de leituraIgor Nascimento

O que o modelo realmente faz

Um modelo de linguagem recebe uma sequência de tokens e devolve uma distribuição de probabilidade sobre o próximo token. Só isso. Tudo que parece raciocínio, planejamento ou compreensão é consequência de fazer essa previsão muito bem, em escala, sobre uma quantidade absurda de texto. Não digo isso para diminuir a tecnologia. Digo porque a maioria das decisões ruins que vi com LLM nasce de esquecer esse ponto: tratar um previsor de texto como se fosse um sistema que entende regras e as obedece.

Na prática, isso aparece de três formas. O modelo não é determinístico: a mesma entrada pode gerar saídas diferentes, e mesmo com temperatura zero você depende da versão do modelo que o fornecedor serve hoje. O modelo não sabe o que não sabe: ele completa com a resposta mais plausível, não com "não tenho essa informação". E o modelo custa por token, na entrada e na saída, o que transforma cada chamada em uma linha na fatura.

A conversa que vale ter antes

Quando alguém chega com "vamos usar uma LLM para isso", a primeira coisa que faço é tentar reformular o problema em uma frase sem a palavra "IA". Quase sempre cai em uma destas categorias, e cada uma tem uma ferramenta mais barata e mais previsível que um modelo generativo.

Problema

  • Decidir entre categorias conhecidas
  • Achar o item parecido num acervo
  • Extrair campos de documento com layout fixo
  • Aplicar regra que o negócio já sabe escrever
  • Gerar texto livre para pessoas lerem

Ferramenta que eu tentaria primeiro

  • Classificador treinado, barato e auditável
  • Embeddings e busca vetorial
  • OCR com regras ou modelo de extração
  • Código. Sério.
  • Aí sim, uma LLM

Isso não significa que a LLM nunca entra nos quatro primeiros. Significa que ela entra como componente, geralmente na ponta mais difícil do funil, depois que as ferramentas previsíveis já resolveram o grosso do volume.

Um caso em que a resposta foi "não"

Precisei detectar logomarcas em imagens em escala, com marcas novas entrando no catálogo o tempo todo. A proposta inicial era mandar cada imagem para um modelo multimodal e perguntar "qual marca aparece aqui?". Funciona na demonstração. Em produção, três problemas: custo por imagem em um volume de milhões, latência incompatível com processamento em tempo real, e marca nova significava reescrever o prompt e torcer.

O que acabou em produção, e virou o Stratosphere, foi separar duas perguntas. Onde tem logo é respondido por um detector agnóstico de marca, que acha regiões candidatas sem saber de quem são. Qual logo é é respondido por busca vetorial num banco de referências. Marca nova vira uma pasta de imagens a mais, sem retreino e sem prompt. É a mesma lógica de detector de rosto mais reconhecimento facial.

Trade-off

O pipeline em duas etapas é mais previsível, mais barato por imagem e explicável: dá para mostrar a região detectada e a referência mais próxima. Em troca, exige manter um banco de referências de qualidade e calibrar limiares de similaridade, trabalho que o modelo generativo "esconderia" dentro de si. Prefiro o trabalho visível ao custo invisível.

Quando a LLM é a ferramenta certa

Existem problemas em que nada substitui um modelo de linguagem: interpretar pedido em linguagem natural, resumir, reescrever, gerar código, conversar. Aí a conversa muda de "se" para "como", e as decisões de arquitetura é que fazem a diferença entre protótipo e sistema.

Fine-tuning, RLHF e agentes: o que cada um resolve

Esses três termos aparecem juntos em toda apresentação e resolvem problemas diferentes. Fine-tuning ajusta pesos para uma tarefa ou um estilo; é caro de manter e congela conhecimento numa data. RLHF é a etapa que o fornecedor faz para o modelo preferir respostas que humanos aprovam; você consome o resultado, raramente faz. Agentes são o modelo decidindo qual ferramenta chamar em sequência; multiplicam capacidade e multiplicam também latência, custo e superfície de erro, porque cada passo é uma nova chance de alucinar.

Minha regra para agentes: só quando o número de passos é imprevisível. Se o fluxo é sempre "buscar, resumir, classificar", isso é um pipeline com três chamadas e não precisa de um modelo decidindo a ordem.

O que eu faria diferente

No primeiro projeto com LLM que coloquei em produção, medi qualidade olhando exemplos à mão. Quando o fornecedor atualizou o modelo, a saída mudou de formato e quebrou o consumidor sem ninguém notar por dias. Hoje a avaliação automática com casos reais entra no mesmo dia que a primeira chamada à API.

Resumo da conversa