Atenção é o mecanismo central do Transformer. Em essência, é uma forma matemática de o modelo perguntar: "para entender essa palavra que estou processando agora, em quais outras palavras devo prestar mais atenção?"
Imagine que o modelo está processando a frase "O cachorro mordeu o gato porque ele estava com fome". Para entender o que "ele" se refere, o modelo precisa olhar para "cachorro" e "gato" e decidir qual deles "ele" representa. Atenção dá pesos: 0.7 para cachorro, 0.2 para gato, 0.1 para os outros — e usa esse peso para combinar as representações.
Tipos de atenção:
- Self-attention: tokens de uma sequência atendem a si mesmos. Base do Transformer.
- Cross-attention: tokens de uma sequência atendem a tokens de outra (usado em encoder-decoder).
- Multi-head attention: várias atenções em paralelo, cada cabeça aprende um tipo de relação (sintática, semântica, etc.).
- Causal attention (masked): token só atende a tokens anteriores. Usado em modelos generativos para prever próximo token.
A atenção é cara: complexidade O(n²) no comprimento da sequência. Por isso janelas de contexto enormes (200k+) só viraram realidade em 2024 com técnicas como:
- Flash Attention: implementação eficiente em GPU.
- Sparse attention: olhar só uma fração dos tokens.
- Linear attention: aproximações que escalam linearmente.
- Mamba / State Space Models: arquiteturas alternativas que não usam atenção pura.
Para o profissional brasileiro, atenção importa porque ela explica:
- Por que LLMs têm "atenção limitada" — em janelas muito longas, tokens do meio podem ser "esquecidos" (lost in the middle).
- Por que prompts bem estruturados (instruções no início e no final) funcionam melhor.
- Por que custo de inferência cresce não linearmente com o tamanho do prompt.
Quando você escreve um prompt para o Claude Sonnet 4 e coloca a pergunta principal no final, perto da resposta, está aproveitando como atenção funciona.
