O encoder usa atenção bidirecional; o decoder usa atenção causal + atenção cruzada. Decoder-only venceu pela simplicidade e escalabilidade. Encoder-only (BERT) ainda é dominante para embeddings, classificação e busca.
Encoder-only (BERT): vê toda a entrada de uma vez, ideal para entender texto — classificação, NER, busca semântica. Decoder-only (GPT, Claude, Llama): gera token por token, domina geração de texto. Encoder-decoder (T5, BART): encoder processa entrada, decoder gera saída condicionada — natural para tradução e sumarização.
Decoder-only é mais simples de escalar: um único stack de camadas, sem atenção cruzada, e o pré-treinamento é direto (prever próximo token). Essa simplicidade permitiu escalar para centenas de bilhões de parâmetros com menos complexidade de engenharia. Na prática, decoder-only faz tudo razoavelmente bem, mesmo tarefas onde encoder-decoder teoricamente seria melhor.