Texto e documentos
Números e cálculo
Dados e formatos
Segurança
Desenvolvimento e DevOps
Inteligência Artificial
Finanças
Saúde & Bem-estar
Produtividade
Jogos & Entretenimento
Multimédia e design
Empresa
Guia de utilização
Para o que olha cada palavra?

A atenção é o coração dos transformers (BERT, GPT…). Cada token calcula, para todos os outros, o quanto deve «olhar» para eles ao construir a sua representação. Aqui vês isso: a matriz é token a token (cada linha soma 1) e os arcos mostram para onde olha o token que escolheres. Escreve a tua própria frase.

Query, Key e Value (Q/K/V)

Para decidir para quem olhar, de cada token saem três vetores: Query (Q, «o que procuro»), Key (K, «o que ofereço») e Value (V, «o que dou se olharem para mim»).

• O peso do token i sobre o j é o produto escalar da Query de i pela Key de j.
• Divide-se por √dk (escalonamento, para que os números não disparem) e passa-se por softmax, que converte os pesos de cada linha em percentagens que somam 1.
• Em resumo: A = softmax(Q·Kᵀ / √dk). Esta ferramenta desenha essa matriz A; um modelo real usaria esses pesos para misturar os Value.

Múltiplas cabeças

Um transformer não tem UMA atenção, mas sim várias cabeças em paralelo, cada uma com projeções distintas → cada uma foca-se em relações diferentes (uma na palavra anterior, outra no sujeito…). Muda de cabeça e observa como o padrão muda.

Máscara causal (GPT)

Os modelos que geram texto (GPT) não podem olhar para o futuro: cada token atende apenas aos anteriores. Ativa a máscara causal e verás a metade superior da matriz apagar-se — é assim que é treinado para prever o token seguinte. Sem máscara (BERT) cada token vê a frase inteira.

Como ler o mapa de calor

A matriz de atenção é um mapa de calor de token × token: a linha é o token que olha (a partir de) e a coluna o token observado (para).

• Quanto mais azul intensa a célula, maior o peso; o branco é quase zero.
• Cada linha soma 100% (é uma distribuição).
• Passe o rato sobre uma célula para ler o valor exato (p. ex. gato → gato: 40%).
• A diagonal costuma acender-se: quase sempre um token atende bastante a si próprio.

Os arcos: para onde olha um token

Sobre a tira da frase, clique numa palavra e aparecem arcos para as palavras que olha, retirados dessa linha da matriz. A espessura e a opacidade de cada arco são proporcionais ao peso (ocultam-se os pesos abaixo de 2%). Clique novamente para desselecionar. É a mesma informação de uma linha do heatmap, mas desenhada sobre o texto para a ler de relance.

Como se usa (passo a passo)

1. Escreva uma frase no campo de cima (é tokenizada por palavras e sinais, até 40 tokens).
2. Escolha uma Cabeça (1–4) para ver padrões diferentes.
3. Marque ou desmarque a Máscara causal para comparar GPT vs. BERT.
4. Faça clique numa palavra (na tira ou na sua etiqueta de linha) para desenhar os seus arcos.
5. Passe o rato pelo heatmap para ler pesos exatos. Tudo é recalculado ao instante, no seu navegador.

Este demo vs. um modelo real

Este visualizador é didático e determinista (offline): os vetores de cada token são gerados por hash (tokens iguais → mesmo vetor) mais uma codificação posicional sinusoidal, e as projeções Q/K são fixadas com uma semente, pelo que o resultado é reprodutível. O cálculo de atenção (produto escalar escalonado + softmax, com máscara causal opcional) é o real. Um modelo verdadeiro aprende Q/K/V a partir de dados e empilha dezenas de camadas e cabeças. Relacionadas: Tokenizador, Mini-LLM e Redutor de dimensionalidade.

Visualizador de atençãoPara o que olha cada palavra num transformer
Visualizador de atençãoVê para que palavras «olha» cada token — o mecanismo dentro de um transformer
Cabeça

Clica numa palavra para ver para onde olha:

Elgatosesentóenlaalfombraporqueestabacansado
Matriz de atenção (linha = de, coluna = para)
ElgatosesentóenlaalfombraporqueestabacansadoElEl → El: 9%El → gato: 3%El → se: 13%El → sentó: 3%El → en: 0%El → la: 2%El → alfombra: 1%El → porque: 37%El → estaba: 5%El → cansado: 27%gatogato → El: 3%gato → gato: 1%gato → se: 13%gato → sentó: 6%gato → en: 26%gato → la: 2%gato → alfombra: 10%gato → porque: 2%gato → estaba: 36%gato → cansado: 1%sese → El: 5%se → gato: 4%se → se: 6%se → sentó: 11%se → en: 12%se → la: 13%se → alfombra: 33%se → porque: 1%se → estaba: 13%se → cansado: 1%sentósentó → El: 2%sentó → gato: 11%sentó → se: 19%sentó → sentó: 21%sentó → en: 9%sentó → la: 6%sentó → alfombra: 20%sentó → porque: 3%sentó → estaba: 7%sentó → cansado: 2%enen → El: 3%en → gato: 45%en → se: 17%en → sentó: 13%en → en: 12%en → la: 4%en → alfombra: 1%en → porque: 2%en → estaba: 1%en → cansado: 1%lala → El: 6%la → gato: 11%la → se: 25%la → sentó: 34%la → en: 7%la → la: 3%la → alfombra: 4%la → porque: 3%la → estaba: 6%la → cansado: 1%alfombraalfombra → El: 6%alfombra → gato: 13%alfombra → se: 21%alfombra → sentó: 21%alfombra → en: 7%alfombra → la: 8%alfombra → alfombra: 10%alfombra → porque: 6%alfombra → estaba: 4%alfombra → cansado: 5%porqueporque → El: 26%porque → gato: 17%porque → se: 9%porque → sentó: 11%porque → en: 2%porque → la: 7%porque → alfombra: 4%porque → porque: 5%porque → estaba: 9%porque → cansado: 9%estabaestaba → El: 14%estaba → gato: 13%estaba → se: 15%estaba → sentó: 32%estaba → en: 11%estaba → la: 3%estaba → alfombra: 2%estaba → porque: 7%estaba → estaba: 1%estaba → cansado: 2%cansadocansado → El: 17%cansado → gato: 17%cansado → se: 7%cansado → sentó: 27%cansado → en: 11%cansado → la: 7%cansado → alfombra: 6%cansado → porque: 2%cansado → estaba: 5%cansado → cansado: 2%

Isto é o mecanismo de atenção (produto escalar escalado + softmax). Um modelo real aprende as projeções Q/K/V e empilha dezenas de camadas e cabeças, mas a ideia é esta. Relacionado: Tokenizador, Mini-LLM e Redutor de dimensionalidade.