# Como 3 vetores explicam self-attention em LLMs

> Published 2026-09-24T18:52:18.247Z on https://www.crazystack.com.br/pt/p/como-3-vetores-explicam-self-attention-em-llms/
> Source video: https://www.youtube.com/watch?v=qaQn978_S40

Basta trocar "banco" de frase: em "O banco aprovou o crédito" e em "A menina sentou no banco", o mesmo token muda de sentido. O self-attention resolve exatamente esse problema. Ele compara cada token com todos os outros, gera um score de importância e produz um novo vetor que combina significado e contexto antes da predição do próximo token.

## O que é self-attention em LLMs e por que ela mudou tudo

Self-attention em LLMs é o mecanismo que calcula, para cada token, o quanto todos os outros tokens da sequência importam para definir o seu significado. Ele foi descrito no artigo [Attention Is All You Need](https://arxiv.org/abs/1706.03762), publicado em 2017 por Vaswani e coautores, e virou a base da arquitetura Transformer.

Antes desse mecanismo, embeddings davam a cada token um vetor fixo de significado. O token "banco" carregava traços de instituição financeira e de assento ao mesmo tempo, sem saber qual valia naquela frase. A atenção resolve isso produzindo um novo vetor por token, já ajustado pelos vizinhos da sequência.

O ganho aparece na predição. Com representações contextuais, o modelo estima o próximo token com informação de toda a janela de entrada, e não apenas da posição anterior. É esse passo que explica a diferença de qualidade que você percebe ao conversar com o ChatGPT ou com o Claude, assistentes de IA da OpenAI e da Anthropic.

## Tokens e embeddings: a base que precede a atenção

Tokens são os pedaços em que o texto de entrada é quebrado antes de virar número. Um token não equivale a uma palavra: pode ser a palavra inteira, uma sílaba ou até um caractere. Cada token recebe um ID que aponta para a sua posição no vocabulário daquele modelo.

O ID sozinho não carrega significado. Ele é só um índice. Para virar representação utilizável, o modelo consulta uma matriz de embeddings treinada e troca cada ID por um vetor de números. Esses números descrevem o token dentro de um mapa multidimensional de padrões linguísticos aprendido no treinamento.

Uma ressalva importante: o comprimento desse vetor não é uma constante universal. Cada equipe escolhe o valor que funciona melhor para a arquitetura. Um modelo pequeno como o GPT-2, da OpenAI, usa vetores de 768 posições, mas nada impede um projeto de usar 50 ou 1.000.

## Como o embedding vira um mapa de significado

Durante o treinamento, cada token começa com um vetor aleatório e vai sendo ajustado até que tokens usados em contextos parecidos fiquem próximos no espaço vetorial. O resultado é um mapa em que vizinhança indica relação semântica, e distância indica ausência de relação.

Você não precisa confiar só na explicação: dá para inspecionar esse mapa. O [guia de embeddings do Hugging Face](https://huggingface.co/blog/tokenizer) e o [Embedding Projector](https://projector.tensorflow.org) do TensorFlow, ferramenta de visualização mantida pelo Google, mostram palavras vizinhas em um plano reduzido para duas ou três dimensões. Buscar "apple" traz termos como Macintosh, Microsoft e IBM; buscar "tree" aproxima forest, leaf e plants.

Essas visualizações são educacionais. O espaço real tem centenas ou milhares de dimensões, e a projeção em duas dimensões distorce as distâncias. Ainda assim, ela mostra o comportamento central: proximidade vetorial acompanha proximidade de uso.

## Por que o embedding sozinho não resolve ambiguidade

O embedding de um token é o mesmo em qualquer frase, porque a matriz é fixa depois do treinamento. Isso cria o problema da polissemia. Na frase "O banco aprovou o crédito", banco é instituição financeira. Em "A menina sentou no banco", banco é assento.

O vetor de banco guarda traços das duas acepções ao mesmo tempo, e nenhuma informação interna ao token diz qual delas vale naquele contexto. Falta um passo que use os outros tokens como evidência.

Esse passo é o self-attention. Ele pega a representação genérica e a reescreve com base na frase concreta. Sem ele, o modelo teria apenas um dicionário numérico, não uma leitura da frase.

## Positional embedding: por que a ordem dos tokens importa

O Transformer processa todos os tokens em paralelo, e essa eficiência tem um custo: sem informação extra, a ordem da sequência desaparece. O positional embedding resolve isso somando ao vetor de cada token um vetor que codifica a sua posição na entrada.

A ordem muda o sentido. "A mãe matou a filha" e "a filha matou a mãe" usam os mesmos tokens em ordens diferentes e descrevem eventos diferentes. Sem sinal de posição, o modelo trataria as duas frases como equivalentes.

Vale separar positional embedding de positional encoding. Muitos textos usam os dois nomes para o mesmo papel, mas implementações diferentes fazem isso de formas distintas: vetores aprendidos, funções senoidais fixas ou variantes rotativas usadas em modelos recentes.

## Query, key e value: como o cálculo do score de atenção funciona

A atenção gera três projeções para cada token: query (o que este token procura), key (o que este token oferece) e value (a informação que ele entrega). O score nasce da comparação entre a query de um token e a key de cada outro token da sequência.

O produto escalar entre query e key mede compatibilidade. Esse valor passa por uma divisão pela raiz da dimensão e depois pela função softmax, que normaliza os scores em uma distribuição que soma 1. Por fim, os weights ponderam os vetores value e geram a saída daquela posição.

Na frase "O banco aprovou o crédito", a query de banco encontra em crédito uma key muito compatível, e o weight desse par fica alto. O artigo "o" contribui pouco. Explico o mecanismo conceitualmente, porque a álgebra completa exige estatística e cálculo linear.

Uma tabela ajuda a visualizar a lógica dos pesos, sem tratá-los como medida real de um modelo:

| Par de tokens | Importância relativa para o sentido | Papel na frase |
| --- | --- | --- |
| banco → crédito | Alta | Define a acepção financeira de banco |
| banco → aprovou | Média-alta | Indica ação de instituição financeira |
| banco → o | Baixa | Só marca gênero e número |

Em modelos reais, o passo seguinte é o multi-head attention, que roda várias dessas operações em paralelo com projeções distintas. Cada cabeça tende a capturar um tipo de relação, e as saídas são concatenadas.

## O que o self-attention muda na predição do próximo token

A saída da atenção é um vetor por token que combina significado e contexto. Esse é o material que as camadas seguintes usam para calcular a distribuição de probabilidade sobre o próximo token do vocabulário.

Na prática, o modelo passa a distinguir os dois sentidos de banco sem precisar de regra explícita. A informação de qual acepção vale está codificada na relação com crédito ou com sentou, e essa relação sobrevive até o cálculo final.

Esse é o motivo pelo qual a atenção é descrita como a virada de chave dos LLMs. Ela transforma uma sequência de símbolos em uma sequência de representações que dependem umas das outras.

## O que o mecanismo não resolve

Atenção não dá ao modelo memória de longo prazo, consciência ou compreensão humana do texto. Ela é um cálculo de pesos sobre vetores dentro de uma janela limitada. O que existe fora dessa janela simplesmente não participa da soma.

A complexidade também pesa. Como cada token compara com todos os outros, o custo cresce de forma quadrática com o tamanho da sequência. É por isso que janelas de contexto longas exigem otimizações de implementação e mais memória.

Um detalhe de nomenclatura confunde muita gente: o positional embedding é frequentemente chamado de positional encoding em textos e aulas. O nome muda, o papel é o mesmo, e não existe erro grave em usar os dois.

## Perguntas frequentes sobre self-attention

- **Self-attention é o mesmo que atenção?** Não exatamente. Self-attention é o caso em que queries, keys e values vêm da mesma sequência. A atenção em geral também cobre situações em que a consulta vem de uma sequência e as chaves vêm de outra, como no encoder-decoder.

- **Por que dividir pelo tamanho da dimensão antes do softmax?** Porque produtos escalares entre vetores longos crescem de magnitude e empurram o softmax para regiões com gradientes pequenos. A divisão pela raiz da dimensão estabiliza o treinamento.

- **Um embedding pode ser invertido para reconstruir o texto?** Não de forma geral. O vetor é uma representação distribuída, e a matriz de embeddings não guarda uma correspondência reversível entre vetor e frase original.

- **Qual é o tamanho típico de um vetor de embedding?** Depende do modelo e da escolha da equipe. O GPT-2 usa 768 posições, mas projetos diferentes adotam dimensões menores ou maiores conforme o custo e a arquitetura.

- **Self-attention sozinha explica o desempenho dos LLMs?** Não. Ela é um componente central do Transformer, mas o resultado final depende também do volume de dados, do número de parâmetros, do treinamento e das camadas que vêm depois da atenção.

- **O que significa dizer que a saída é contextual?** Significa que o vetor de um token muda conforme os outros tokens da sequência. O mesmo ID de token produz saídas diferentes em frases diferentes, e é isso que permite distinguir sentidos de uma palavra ambígua.

## Como levar esse conhecimento para os seus vídeos

Explicar tokens, embeddings e self-attention funciona bem em vídeo, com desenho no quadro e exemplos trocando de sentido. O problema aparece depois, quando alguém procura esse mesmo conteúdo por escrito e encontra só fragmentos soltos.

Se você tem uma aula, uma live ou uma entrevista em que explica um mecanismo técnico com clareza, o material escrito já existe dentro do vídeo. A parte que falta é transformá-lo em texto: no [Skala Blog](https://skalablog.com), você cola a URL do vídeo, gera a transcrição e recebe um artigo estruturado para revisar e publicar.

Para conteúdos de programação do dia a dia, o [CrazyStack](https://crazystack.com.br) reúne material prático que complementa esse tipo de estudo. Vale acompanhar também o trabalho do Dev Doido do canal do youtube, que cobre temas de tecnologia em linguagem acessível.

[Source video](https://www.youtube.com/watch?v=qaQn978_S40)
