Translate

segunda-feira, 16 de março de 2026

Transformers: O Que Todo Programador COBOL Precisa Saber Sobre a Arquitetura que Está Revolucionando a Inteligência Artificial

 

Bellacosa Mainframe e os segredos dos transformers 

☕ Um Café no Bellacosa Mainframe

Transformers: O Que Todo Programador COBOL Precisa Saber Sobre a Arquitetura que Está Revolucionando a Inteligência Artificial

Você Não Está Diante de Mágica. Está Diante de Engenharia de Software em Escala Nunca Vista.

"Toda geração de programadores encontra uma tecnologia que parece mágica. Para quem programava em Assembly, COBOL parecia mágico. Para quem vivia de cartões perfurados, o CICS parecia magia. Hoje, muitos olham para o ChatGPT da mesma forma. Mas, como todo bom sistema, basta abrir a tampa para descobrir que existe muita engenharia por baixo."


Existe uma pergunta que recebo frequentemente quando converso com profissionais de Mainframe:

"Como exatamente um ChatGPT funciona?"

A maioria das respostas que encontramos na Internet são superficiais.

Dizem apenas:

"Ele usa Transformers."

Excelente.

Mas isso é como responder que um IBM Z funciona porque possui processadores.

Não explica absolutamente nada.

Neste artigo vamos desmontar um Transformer da mesma forma que um Programador COBOL gosta de aprender: entendendo cada etapa do processamento.

Você perceberá que muitos conceitos não são tão diferentes do que já conhece há décadas.

A diferença está na escala.

Muito mais do que na ideia.

Pegue seu café.

Hoje vamos abrir o capô do motor.


O maior equívoco sobre IA

Existe uma crença bastante difundida.

Que o ChatGPT "pensa".

Não.

Ele calcula.

Isso muda completamente a forma de enxergar um LLM (Large Language Model).

O Transformer é, essencialmente, uma gigantesca máquina de estatística, álgebra linear e otimização.

Seu trabalho consiste em responder apenas uma pergunta:

"Qual é o próximo token mais provável?"

Nada além disso.

E, surpreendentemente, essa pergunta simples produz resultados extraordinários.


Imagine um Batch COBOL

Vamos fazer uma analogia.

Considere um programa COBOL clássico.

INPUT

↓

Validação

↓

Conversão

↓

Regras de negócio

↓

Atualização do banco

↓

Relatórios

O Transformer segue exatamente essa filosofia.

O texto entra.

Passa por diversas etapas.

Cada etapa transforma um pouco a informação.

No final, surge uma resposta.


Etapa 1 — Tokenização

Nenhum computador entende palavras.

Computadores entendem números.

Quando digitamos

O gato dorme.

Nós enxergamos quatro palavras.

O modelo enxerga algo parecido com:

502

18472

913

25

Cada número representa um token.

Aqui aparece uma surpresa.

Token não significa palavra.

Pode representar:

  • uma palavra inteira;

  • metade de uma palavra;

  • um caractere;

  • pontuação;

  • espaços.

Por exemplo:

Mainframe

↓

Main

frame

Ou

Bellacosa

↓

Bella

cosa

Isso reduz enormemente o vocabulário.

Em vez de decorar milhões de palavras, o modelo aprende milhares de pequenas peças reutilizáveis.

É como reutilizar COPYBOOKs.


O Token é o novo Campo

Pense em um registro VSAM.

Você não grava um texto inteiro como um único bloco.

Você possui campos.

Cada campo possui significado.

O Transformer faz algo semelhante.

Cada token torna-se uma unidade independente de processamento.


Etapa 2 — Embeddings

Agora temos números.

Mas ainda não existe significado.

Entra o Embedding.

Imagine uma tabela gigantesca.

Algo como:

TOKEN

↓

VETOR

Só que esse vetor pode possuir milhares de posições.

Algo parecido com:

0.83

-1.24

3.91

0.18

...

2048 posições

Esse vetor representa características aprendidas durante o treinamento.

Curiosamente ninguém programa isso.

O próprio treinamento descobre essas relações.


O "Espaço" onde as palavras vivem

Imagine um mapa.

Nele existem milhões de pontos.

Palavras semelhantes ficam próximas.

Por exemplo:

COBOL

PL/I

Assembler

ficariam relativamente próximas.

Enquanto

Pizza

Astronomia

Dinossauro

estariam muito mais distantes.

Esse espaço vetorial é uma das maiores descobertas da IA moderna.


Etapa 3 — Positional Encoding

Existe um problema.

O Transformer não sabe ordem.

Para ele,

A B C

e

C B A

seriam quase iguais.

Mas ordem importa.

Então adicionamos informação de posição.

É como numerar linhas de um arquivo sequencial.

Cada token recebe:

Embedding

+

Posição

Agora ele sabe:

"Sou a quarta palavra."

Sem isso a linguagem desapareceria.


O Coração do Transformer

Chegamos ao conceito mais importante.

Self-Attention.

Se você entender isso, compreenderá por que os Transformers mudaram toda a Inteligência Artificial.


Self-Attention

Imagine a frase:

João entregou o livro para Maria porque ela precisava estudar.

Quem precisava estudar?

João?

Maria?

O modelo precisa descobrir.

É exatamente isso que a Self-Attention faz.

Cada palavra pergunta:

"Quais outras palavras desta frase são importantes para mim?"

Não existe regra fixa.

Cada frase produz um conjunto diferente de relações.


Parece um JOIN Inteligente

Quem trabalha com DB2 pode imaginar algo semelhante.

Cada token consulta os demais.

Mas não procura igualdade.

Procura relevância.

É como um JOIN baseado em significado.


Queries, Keys e Values

Aqui aparece um conceito inspirado em recuperação de informação.

Cada token gera três vetores.

Query

O que estou procurando?


Key

Quem sou eu?


Value

Qual informação entrego?

Imagine uma biblioteca.

Você chega procurando:

"Livros sobre COBOL."

Essa é sua Query.

Cada livro possui uma Key.

Quando uma Key combina com sua Query...

...o conteúdo daquele livro (Value) é utilizado.


Attention Scores

Agora entra matemática.

O Transformer mede a semelhança entre Query e Key.

Quanto maior a semelhança...

Maior a atenção.

Imagine algo assim:

COBOL

92%

DB2

84%

JCL

70%

Linux

12%

Sorvete

0%

O modelo naturalmente concentra esforço onde existe maior relevância.


Softmax

Esses valores ainda precisam virar probabilidades.

Entra o Softmax.

Ele transforma qualquer conjunto de números em probabilidades cuja soma é exatamente 100%.

Exemplo:

COBOL

61%

JCL

24%

Assembler

9%

Java

6%

Agora o modelo sabe exatamente quanto deve "prestar atenção" em cada token.


Multi-Head Attention

Agora imagine uma equipe inteira de analistas.

Um especialista observa gramática.

Outro observa tempo verbal.

Outro procura relações semânticas.

Outro identifica sujeito e objeto.

Todos trabalham simultaneamente.

Depois unem suas descobertas.

Isso é Multi-Head Attention.

Em vez de uma única visão da frase...

Existem dezenas delas.

Ao mesmo tempo.


Por que isso revolucionou a IA?

Antes dos Transformers existiam as RNNs.

Depois vieram as LSTMs.

Ambas liam texto sequencialmente.

Palavra por palavra.

Como um READ NEXT.

Os Transformers mudaram completamente essa abordagem.

Eles conseguem analisar toda a frase simultaneamente.

Isso permitiu enorme paralelismo.

GPUs adoram processamento paralelo.

Resultado?

Treinamentos centenas de vezes mais rápidos.


Feed-Forward Network

Depois da atenção, cada token entra em uma pequena rede neural.

Ela refina a informação.

É semelhante a uma rotina interna.

Imagine:

PERFORM PROCESSA-TOKEN

Para cada token.

Independentemente dos demais.

Essa etapa extrai padrões mais complexos e prepara os dados para a próxima camada.


Residual Connections

Programadores COBOL antigos conhecem uma boa prática.

Nunca destruir a informação original.

As Residual Connections seguem essa ideia.

Em vez de substituir completamente o resultado anterior...

O Transformer soma:

Entrada

+

Saída

Assim nenhuma informação importante se perde.

Esse pequeno detalhe permitiu construir redes com centenas de camadas.


Layer Normalization

Quem trabalha com processamento numérico conhece problemas de overflow.

Na IA existe algo semelhante.

Valores podem crescer demais.

Ou diminuir demais.

A Layer Normalization mantém tudo equilibrado.

Ela impede que o treinamento fique instável.

É um mecanismo silencioso.

Mas indispensável.


Context Window

Imagine ler um livro.

Se você esquecer tudo que aconteceu duas páginas atrás...

A história deixa de fazer sentido.

O Context Window representa exatamente essa memória temporária.

Modelos antigos:

2 mil tokens.

Depois:

8 mil.

32 mil.

128 mil.

Hoje encontramos modelos capazes de trabalhar com milhões de tokens.

Quanto maior o contexto...

Maior a capacidade de manter conversas longas.

Mas existe um preço.

O custo computacional cresce aproximadamente com o quadrado da quantidade de tokens.

É por isso que surgiram otimizações como FlashAttention e Sliding Window Attention.


Encoder

Alguns Transformers apenas leem.

Eles não escrevem.

Seu objetivo é compreender.

É o caso do BERT.

Imagine um auditor lendo um programa COBOL.

Ele não modifica nada.

Apenas entende.

Esse é o Encoder.


Decoder

Já o GPT pertence à família dos Decoders.

Seu trabalho consiste em gerar texto.

Token após token.

Ele escreve:

Hoje

↓

Hoje vamos

↓

Hoje vamos estudar

↓

Hoje vamos estudar COBOL

Cada palavra exige um novo processamento completo.


Masked Attention

Existe uma regra fundamental.

Durante o treinamento o modelo não pode olhar o futuro.

Imagine um exame.

O aluno não pode consultar o gabarito.

Da mesma forma, quando precisa prever a próxima palavra, o modelo só pode enxergar as anteriores.

Essa restrição torna o aprendizado muito mais realista.


Cross-Attention

Em tarefas como tradução automática, um Decoder consulta constantemente as informações produzidas pelo Encoder.

Imagine:

Entrada:

The Mainframe is reliable.

Encoder:

Compreende toda a frase.

Decoder:

Produz

O Mainframe é confiável.

Enquanto escreve, consulta continuamente o significado construído pelo Encoder.


O Grande Treinamento

Antes de responder qualquer pergunta, o modelo passou meses aprendendo.

São trilhões de tokens.

Livros.

Artigos.

Código-fonte.

Documentação técnica.

Sites.

Papers.

Repositórios.

A tarefa parece simples.

Prever o próximo token.

Mas essa simplicidade força o modelo a aprender:

  • gramática;

  • lógica;

  • sintaxe;

  • programação;

  • matemática;

  • estilo;

  • contexto;

  • relações de causa e efeito.

É um gigantesco treinamento estatístico.


Fine-Tuning

Depois disso, surgem especializações.

Imagine pegar um programador COBOL.

Depois treiná-lo apenas em seguros.

Ou apenas em bancos.

Ou apenas em telecomunicações.

É exatamente isso.

O conhecimento geral permanece.

Mas surge especialização.

Hoje existem modelos treinados especificamente para:

  • medicina;

  • direito;

  • engenharia;

  • segurança;

  • programação;

  • IBM Z;

  • documentação técnica.

Além disso, técnicas como Instruction Tuning e RLHF (Reinforcement Learning from Human Feedback) refinam o comportamento do modelo para seguir instruções, responder de forma útil e reduzir respostas inadequadas.


Next Token Prediction

Aqui está a maior surpresa.

O modelo não escreve um texto inteiro.

Ele apenas responde:

Qual é o próximo token?

Depois repete.

Depois repete.

Depois repete novamente.

Em velocidade impressionante.

Uma resposta de 800 palavras pode representar milhares de ciclos de previsão consecutivos.


Inference

É a fase em que você conversa com o modelo.

Você digita:

Explique VSAM.

Internamente acontecem bilhões de multiplicações matriciais.

Tudo isso para escolher...

Uma única palavra.

Depois outra.

Depois outra.

Até formar a resposta completa.


O que o infográfico não mostra

O excelente infográfico que inspirou este artigo apresenta o fluxo principal, mas um Transformer moderno ainda possui diversos componentes fundamentais que trabalham nos bastidores.

Entre eles estão:

  • Funções de ativação, como GELU e SiLU, que permitem à rede aprender relações complexas.

  • Backpropagation, responsável por ajustar bilhões de parâmetros durante o treinamento.

  • Otimizadores, como AdamW, que definem como os pesos serão atualizados.

  • Dropout, utilizado para evitar overfitting.

  • Temperature, Top-k e Top-p Sampling, que controlam criatividade e diversidade na geração de texto.

  • Mixture of Experts (MoE), onde apenas parte da rede é ativada para cada token, aumentando eficiência.

  • RAG (Retrieval-Augmented Generation), que permite consultar documentos externos durante a inferência.

  • Quantização, que reduz o tamanho dos modelos para execução em hardware mais modesto.

  • FlashAttention, uma otimização que diminui drasticamente o custo da atenção em contextos longos.

Esses elementos ajudam a explicar por que os modelos atuais conseguem ser ao mesmo tempo maiores, mais rápidos e mais eficientes do que os primeiros Transformers apresentados em 2017.


O que um Programador COBOL pode aprender com tudo isso?

Talvez a maior lição não seja técnica.

Seja filosófica.

Durante décadas, nós, desenvolvedores Mainframe, aprendemos que bons sistemas são construídos em camadas.

Entrada.

Validação.

Processamento.

Persistência.

Saída.

Os Transformers seguem exatamente essa filosofia.

A diferença é que, em vez de registros VSAM e tabelas DB2, trabalham com vetores em espaços de milhares de dimensões. Em vez de IFs escritos por programadores, utilizam bilhões de parâmetros ajustados durante o treinamento. Em vez de regras de negócio explícitas, aprendem padrões estatísticos a partir de volumes gigantescos de dados.

Ainda assim, os princípios continuam familiares: modularidade, processamento em etapas, reutilização de informação, otimização de desempenho e preocupação constante com escalabilidade.


Um Café Antes de Ir...

Quando ouvimos falar em Inteligência Artificial, é fácil imaginar algo misterioso ou quase mágico.

Mas, depois de abrir o capô de um Transformer, percebemos que não existe magia.

Existe engenharia.

Existe matemática.

Existe arquitetura.

Existe otimização.

E existe uma ideia brilhante: permitir que cada palavra "converse" com todas as outras para construir contexto antes de decidir qual será a próxima.

Talvez seja justamente por isso que tantos profissionais experientes em Mainframe conseguem compreender rapidamente essa tecnologia. Quem passou anos projetando sistemas robustos, escaláveis e confiáveis reconhece os mesmos princípios fundamentais, apenas aplicados em uma escala sem precedentes.

No fim das contas, um Transformer não substitui a engenharia de software. Ele é uma das maiores realizações da engenharia de software moderna.

E, para um Programador COBOL Padawan, entender essa arquitetura não significa abandonar décadas de experiência. Significa descobrir que muitos dos conceitos que sustentam a Inteligência Artificial já faziam parte do seu repertório — apenas ganharam novas formas, novos algoritmos e uma capacidade de processamento que transformou a maneira como interagimos com computadores.

Porque, como sempre dizemos aqui no Bellacosa Mainframe, tecnologias mudam. Bons princípios de engenharia permanecem.


Sem comentários:

Enviar um comentário