Básico7 min de leituraAtualizado

Como os modelos de linguagem leem o texto: tokens, embeddings e atenção

Os computadores não leem palavras. Como um modelo de linguagem transforma uma frase em tokens e números, e como a atenção lhe permite compreender o significado.

Passo 1: tokens

Um modelo não consegue ler letras como nós. Primeiro, um tokenizador corta o texto em tokens. As palavras comuns são um único token; as raras são divididas em pedaços:

TextoTokens possíveis
«moderação»moder · ação
«olá»olá
«inacreditável!!»in · acredit · ável · !!

Os modelos multilingues partilham um único vocabulário (muitas vezes de 100 000 a 250 000 tokens) entre muitas línguas, por isso «insulto», «insult» e «Insulte» podem acabar perto uns dos outros. O número de tokens também decide o custo: um modelo tem um comprimento máximo (por exemplo 256 ou 512 tokens) e o tempo de cálculo cresce com ele.

Passo 2: embeddings

Cada token é transformado numa longa lista de números, chamada embedding (por exemplo 1024 números). Podes imaginá-la como coordenadas num espaço de significados: tokens com significado parecido ficam perto. «Idiota» e «estúpido» são vizinhos; «idiota» e «tomate» ficam longe.

Passo 3: atenção

Uma palavra sozinha é ambígua. Em «sentei-me num banco do jardim» e «abri uma conta no banco», o mesmo token significa duas coisas diferentes. A atenção resolve isto: em cada camada, cada token olha para todos os outros e junta a informação que importa. Depois de algumas camadas, a representação de «banco» é diferente nas duas frases.

Este é o núcleo do transformer, a arquitetura por trás de quase todos os modelos de linguagem modernos. Um modelo é uma pilha destas camadas (12, 24, 36 ou mais): as primeiras captam a gramática, as seguintes o significado, o tom e a intenção.

Encoders e decoders

Há duas grandes famílias:

  • Os encoders (BERT, XLM-RoBERTa, mmBERT) leem o texto todo de uma vez, nos dois sentidos. Produzem uma representação da frase inteira, perfeita para classificar: é um insulto? É um spoiler? São pequenos e rápidos. A VigiMod assenta num encoder multilingue.
  • Os decoders (GPT, Llama, Qwen, Mistral) leem da esquerda para a direita e geram texto token a token. São ótimos a escrever e a raciocinar, mas gerar é lento, sobretudo num CPU.

Para classificar com um decoder pode evitar-se a geração e ler a probabilidade do primeiro token da resposta («sim»/«não»), ou juntar uma pequena cabeça de classificação à sua representação interna.

Da leitura à decisão

Um classificador acrescenta uma pequena camada final por cima do modelo: pega na representação do texto e transforma-a numa pontuação por categoria. O treino ajusta esta camada e, normalmente, também o modelo por baixo (ver o que é um classificador de texto).

Porque é que o tamanho importa (e porque não é tudo)

Mais camadas e mais números por token permitem captar significados mais subtis: ironia, citações, contexto. Também significam mais cálculo para cada mensagem. Um encoder com 0,5 mil milhões de parâmetros responde em algumas dezenas de milissegundos num CPU; um decoder com 20 mil milhões que escreve o seu raciocínio pode demorar segundos. Para moderar um chat em direto, um modelo mais pequeno treinado com os dados certos é muitas vezes a melhor escolha. Como se tornam os modelos rápidos em computadores comuns é explicado em correr IA num CPU.

Teste-se

Responda às perguntas e depois verifique as respostas.

  1. 1. O que é um token?
  2. 2. O que capta um embedding?
  3. 3. Que problema resolve a atenção?
  4. 4. Que família costuma ser a melhor para classificar depressa?

Todos os guias →

Veja em mensagens reais

Experimente a demo ao vivo ou leia como funciona a API.