O que é um GPT e como sua arquitetura funciona

Entender o que é GPT começa pela sigla: GPT significa Generative Pre-trained Transformer, uma classe de modelos de linguagem que gera texto coerente, responde perguntas, traduz idiomas e executa muitas outras tarefas linguísticas. Por trás de tudo isso existe um único mecanismo, que consiste em prever qual token vem a seguir em uma sequência.

Neste artigo, você vai percorrer cada peça da arquitetura, do token de entrada até a distribuição de probabilidade da saída. Além disso, vai entender por que uma ideia tão simples, treinada em escala, produz sistemas como o ChatGPT.

O problema que o GPT resolve

Modelos de linguagem existem para capturar a estrutura estatística de um idioma. Formalmente, dada uma sequência de tokens t₁, t₂, ..., tₙ, o modelo aprende a distribuição de probabilidade do próximo token:

P(tₙ₊₁ | t₁, t₂, ..., tₙ)

Isso parece simples demais, mas basta para explicar praticamente toda a capacidade de um LLM moderno. Por isso, quem pergunta o que é GPT precisa começar por essa fórmula.

Quando você faz uma pergunta ao ChatGPT, ele não "entende" a pergunta no sentido humano. Na prática, o modelo completa um documento em que a resposta é o trecho estatisticamente mais plausível para aquele contexto.

A OpenAI apresentou o primeiro GPT em 2018, no artigo Improving Language Understanding by Generative Pre-Training. Em seguida vieram o GPT-2, em 2019, e o GPT-3, em 2020, cada um maior que o anterior.

Se você quer uma visão mais ampla sobre modelos de linguagem antes de mergulhar nos detalhes, leia também o artigo sobre como funciona uma LLM.

O que é GPT na prática: a unidade fundamental chamada token

Um GPT não opera sobre caracteres individuais nem sobre palavras completas. Em vez disso, ele opera sobre tokens, fragmentos de texto que um algoritmo de tokenização como o BPE (Byte Pair Encoding) produz.

Palavras comuns como "the" ou "são" geralmente correspondem a um único token. Já palavras raras ou técnicas acabam fragmentadas em vários tokens.

Esse esquema mantém o vocabulário compacto e, ao mesmo tempo, cobre qualquer texto possível. Por exemplo, o tokenizador do GPT-2 tinha 50.257 tokens, enquanto modelos mais recentes da OpenAI usam vocabulários de cerca de 100 mil a 200 mil tokens.

Durante o treinamento, cada token vira um número inteiro. Assim, a tarefa do modelo é receber os inteiros dos tokens anteriores e prever o inteiro do próximo token.

A arquitetura Transformer por trás do GPT

O GPT usa como base a arquitetura Transformer, que o artigo Attention Is All You Need apresentou em 2017 (Vaswani et al.). Essa arquitetura resolveu uma dificuldade que arquiteturas anteriores, como RNNs e LSTMs, enfrentavam ao capturar dependências entre tokens distantes.

O Transformer original tinha um encoder e um decoder. Um GPT, por sua vez, usa apenas a pilha de decoders, porque o objetivo dele é gerar texto da esquerda para a direita.

A estrutura geral de um GPT pode ser descrita assim:

Input tokens
      |
  Embeddings (token + position)
      |
  Transformer block x N
  ├── RMSNorm
  ├── Multi-Head Attention
  ├── Residual connection
  ├── RMSNorm
  ├── MLP
  └── Residual connection
      |
  Final projection (lm_head)
      |
  Logits → Softmax → Probabilities

Cada componente desse fluxo tem uma função precisa, e nenhum deles é opcional. Nas próximas seções, você vai ver o papel de cada um.

Embeddings: transformando tokens em vetores

Redes neurais não processam inteiros diretamente. Por isso, o primeiro passo converte cada token em um vetor denso de números reais, que recebe o nome de embedding.

O modelo soma dois embeddings diferentes para cada posição da sequência.

Token embedding: cada token do vocabulário tem um vetor associado, que o treinamento ajusta. Tokens com significados semelhantes tendem a ficar próximos no espaço, e essa tabela tem dimensão [vocab_size × d_model].

Position embedding: o Transformer não tem noção nativa de ordem. Para que o modelo saiba que o token da posição 3 vem depois do token da posição 2, cada posição também recebe um vetor aprendido, em uma tabela de dimensão [block_size × d_model].

A soma dos dois produz a representação inicial de cada token:

# representação inicial de um token na posição pos
x = token_embedding(t) + position_embedding(pos)

Modelos modernos frequentemente substituem os position embeddings aprendidos por esquemas relativos como o RoPE (Rotary Position Embedding). Mesmo assim, o princípio continua o mesmo.

Normalização com RMSNorm

Antes de cada bloco de atenção e de cada MLP, as ativações passam por uma camada de normalização. O GPT-2 original usava LayerNorm, enquanto muitos modelos recentes, e também o microgpt de Andrej Karpathy, usam RMSNorm (Root Mean Square Normalization):

RMSNorm(x) = x / sqrt(mean(x²) + ε)

O objetivo é manter os valores em uma escala controlada. Sem normalização, as ativações crescem ou encolhem exponencialmente à medida que percorrem as camadas, e o treinamento fica instável.

O ε, tipicamente 1e-5, evita a divisão por zero. Além disso, o RMSNorm dispensa o cálculo da média que o LayerNorm faz, o que o torna um pouco mais barato.

Atenção: o mecanismo central do GPT

A atenção diferencia o Transformer de todas as arquiteturas anteriores. Ela responde à seguinte questão: ao processar um token na posição t, quais tokens anteriores importam para prever o próximo?

Quem quer entender o que é GPT de verdade precisa dominar esse mecanismo, porque é nele que os tokens trocam informação.

Query, Key e Value

Para cada token, o modelo aprende três projeções lineares:

Q = x · Wq    # query: "o que estou procurando?"
K = x · Wk    # key:   "o que eu contenho?"
V = x · Wv    # value: "o que eu ofereço se for selecionado?"

Intuitivamente, o mecanismo lembra uma busca. A query do token atual se compara com as keys de todos os tokens anteriores para medir o quanto cada um importa, e então o modelo combina os values dos tokens relevantes.

Cálculo dos pesos de atenção no GPT

O produto interno entre uma query e uma key mede a compatibilidade entre elas. Em seguida, o GPT divide esse valor pela raiz quadrada da dimensão de cada cabeça:

scores = Q · Kᵀ / sqrt(d_head)

Esse escalonamento é necessário porque produtos internos em alta dimensão tendem a crescer em magnitude. Caso contrário, o softmax saturaria e os gradientes ficariam pequenos demais.

Depois, o softmax converte os scores em pesos de atenção:

attn_weights = softmax(scores)

Por fim, a saída é a média ponderada dos values:

output = attn_weights · V

Com isso, o token atual recebe uma combinação de informações dos tokens anteriores, ponderada pela relevância de cada um para o contexto.

Atenção causal

Em um GPT, o modelo só pode "olhar para trás", nunca para frente. Esse comportamento se chama atenção causal ou atenção mascarada.

Na prática, o modelo atribui -∞ aos scores das posições futuras antes do softmax, o que zera o peso delas. Assim, ao prever o token na posição t, o modelo usa apenas os tokens de 0 até t-1 como contexto.

Multi-head attention

Em vez de calcular a atenção uma única vez, o GPT divide o espaço de embedding em H cabeças e calcula a atenção em paralelo em cada uma:

head_h = Attention(Q_h, K_h, V_h)
output = concat(head_1, ..., head_H) · Wo

Cada cabeça opera em um subespaço de dimensão d_head = d_model / H. A motivação é que cabeças diferentes podem aprender relações diferentes ao mesmo tempo.

Por exemplo, uma cabeça pode capturar concordância gramatical, outra pode capturar proximidade semântica e uma terceira pode resolver referências anafóricas.

MLP: computação por posição

Após a atenção, cada token passa por um bloco MLP (multilayer perceptron) de forma independente. Enquanto a atenção funciona como um mecanismo de comunicação entre tokens, o MLP funciona como um mecanismo de computação local:

h = ReLU(x · W1)
output = h · W2

A primeira projeção expande a dimensão para 4 × d_model. Em seguida, a não linearidade introduz capacidade expressiva, e a segunda projeção retorna à dimensão original.

O microgpt de Karpathy usa ReLU nesse ponto, enquanto o GPT-2 usava GELU. Contudo, a lógica de expandir e contrair a dimensão continua idêntica.

Essa expansão e contração parece ser onde o modelo armazena e aplica conhecimento factual. De fato, pesquisas como a de Geva et al. (2021) mostram que as camadas feed-forward se comportam como memórias chave-valor, associando padrões de entrada a conteúdos concretos, como capitais de países ou propriedades de objetos.

Conexões residuais

Tanto a atenção quanto o MLP usam conexões residuais. Ou seja, o modelo soma a saída de cada bloco à sua própria entrada antes de prosseguir.

x = x + Attention(RMSNorm(x))
x = x + MLP(RMSNorm(x))

Esse padrão surgiu nas ResNets (He et al., 2016) e resolve o problema do gradiente que desaparece em redes profundas. A conexão residual cria um caminho direto para o gradiente fluir durante o backward pass, sem atravessar as operações não lineares do bloco.

Por isso, dá para treinar redes com dezenas ou centenas de camadas de forma estável. Sem esse atalho, um GPT profundo simplesmente deixaria de aprender nas primeiras camadas.

Projeção final e a distribuição de saída do GPT

Após percorrer todas as camadas Transformer, o vetor resultante passa pela camada lm_head, que o projeta para o tamanho do vocabulário:

logits = x · W_lm_head    # dimensão: [vocab_size]
probs  = softmax(logits)

O resultado é uma distribuição de probabilidade sobre todos os tokens do vocabulário. Durante o treinamento, a loss corresponde à cross-entropy entre essa distribuição e o token correto:

loss = -log(probs[correct_token])

Intuitivamente, se o modelo atribui probabilidade alta ao token correto, a loss fica baixa. Por outro lado, se atribui probabilidade próxima de zero, a loss tende ao infinito.

O treinamento consiste em minimizar essa loss sobre todos os tokens de todos os documentos do corpus. Na geração, o GPT sorteia ou escolhe um token dessa distribuição, acrescenta o token à sequência e repete o processo.

Os quatro pilares da arquitetura GPT

Depois de percorrer cada componente, fica fácil identificar quatro pilares que sustentam o funcionamento do GPT.

Atenção causal é o mecanismo de comunicação entre tokens. Ela permite que qualquer token consulte qualquer token anterior, independentemente da distância, e assim elimina o gargalo de dependências longas que travava as arquiteturas recorrentes.

Conexões residuais tornam viável treinar redes com muitas camadas. Sem elas, os gradientes desaparecem antes de alcançar as primeiras camadas e o modelo para de aprender.

Normalização mantém o fluxo de ativações em escala controlada ao longo de todas as camadas. Dessa forma, o treinamento continua estável mesmo em redes muito profundas.

Predição autorregressiva é o objetivo de treinamento que une tudo. Ao prever o próximo token em bilhões de exemplos de texto real, o modelo precisa internalizar gramática, fatos, raciocínio e estrutura narrativa como efeito colateral.

Em outras palavras, a resposta para o que é GPT cabe nesses quatro pilares. Todo o resto, como Karpathy resume no microgpt, é eficiência.

O microgpt como laboratório para estudar o GPT

Em fevereiro de 2026, Andrej Karpathy publicou o microgpt, uma implementação completa de um GPT em cerca de 200 linhas de Python puro. O código usa apenas as bibliotecas os, math e random, sem PyTorch nem TensorFlow.

O projeto inclui um tokenizador por caracteres, um motor de autograd escrito do zero e o otimizador Adam. Além disso, ele treina sobre um conjunto de cerca de 32 mil nomes próprios e, segundo o autor, o treino leva cerca de um minuto em um MacBook.

Esse experimento deixa claro que embeddings, atenção, MLP, normalização e conexões residuais bastam para ter um GPT funcional. Portanto, ele serve como um ótimo laboratório para quem quer ver cada fórmula deste artigo rodando.

Se você prefere aprender escrevendo código, o artigo criando um GPT em Python mostra esse caminho passo a passo.

Pré-treinamento, ajuste fino e escala

Um GPT base, após o pré-treinamento, é apenas um completador de documentos. Dado um contexto, ele continua o texto de forma estatisticamente plausível.

Para transformá-lo em um assistente conversacional como o ChatGPT, a OpenAI acrescentou etapas de fine-tuning supervisionado e aprendizado por reforço com feedback humano (RLHF). Ainda assim, o núcleo da arquitetura permanece o mesmo.

O que torna os modelos modernos tão capazes não é uma descoberta algorítmica recente. Na verdade, é a combinação de uma arquitetura sólida com escala massiva: mais parâmetros, mais dados e mais tempo de computação.

As leis de escala de Kaplan et al. (2020) demonstraram empiricamente que a performance de LLMs melhora de forma previsível com o aumento desses três fatores. Segundo o mesmo estudo, detalhes como largura e profundidade da rede pesam muito menos que a escala dentro de uma faixa ampla.

Para ter uma noção dessa escala, o GPT-2 chegou a 1,5 bilhão de parâmetros e o GPT-3 chegou a 175 bilhões. Enquanto isso, o microgpt de Karpathy tem apenas 4.192 parâmetros e segue exatamente a mesma receita.

Conclusão

Saber o que é GPT significa reconhecer que a arquitetura é, em sua essência, surpreendentemente simples. Embeddings somados alimentam blocos repetidos de atenção e MLP, com normalização e conexões residuais, e o fluxo termina em uma projeção para o vocabulário.

Cada componente tem uma justificativa matemática clara e uma função específica no fluxo de informação. Além disso, nenhum deles depende de mágica para funcionar.

O que emerge dessa combinação, treinada em escala sobre texto humano, são sistemas capazes de raciocinar, escrever, traduzir e conversar. Isso acontece porque prever o próximo token com precisão exige internalizar uma quantidade extraordinária de estrutura sobre o mundo.

Para continuar a jornada, vale explorar os conceitos fundamentais de inteligência artificial e entender como esses modelos se encaixam no ecossistema de IA generativa.

FAQ

O que significa a sigla GPT?

GPT significa Generative Pre-trained Transformer. O nome indica um modelo generativo, pré-treinado em grandes volumes de texto e baseado na arquitetura Transformer.

O GPT entende o que eu escrevo?

Não no sentido humano. Na prática, o modelo calcula qual continuação é estatisticamente mais plausível para o contexto, e essa previsão exige internalizar muita estrutura da linguagem.

Qual a diferença entre GPT e ChatGPT?

O GPT é o modelo base, que apenas completa documentos. O ChatGPT é um produto construído sobre modelos GPT ajustados com fine-tuning supervisionado e RLHF para conversar.

Por que o GPT usa apenas o decoder do Transformer?

Porque a tarefa é gerar texto da esquerda para a direita. A pilha de decoders com atenção causal atende exatamente a esse objetivo.

O que é um token no GPT?

Um token é um fragmento de texto produzido por um algoritmo como o BPE. Palavras comuns costumam virar um único token, enquanto palavras raras se dividem em vários.

Preciso de muito hardware para estudar a arquitetura?

Não. O microgpt de Karpathy roda em Python puro, em um notebook comum, e implementa todos os componentes descritos neste artigo.