Estou escrevendo isto porque um dos meus editores acordou no meio da noite e rabiscou em um bloco de notas ao lado da cama: “O que é um parâmetro?” Ao contrário de muitos pensamentos que surgem às 4 da manhã, essa é uma pergunta muito boa, uma que vai direto ao coração de como os grandes modelos de linguagem funcionam. E não estou dizendo isso só porque ele é meu chefe. (Oi, chefe!)
Costuma-se dizer que os parâmetros de um grande modelo de linguagem são os botões e as alavancas que controlam como ele se comporta. Pense em uma máquina de pinball do tamanho de um planeta que envia suas bolas ricocheteando de uma ponta à outra por meio de bilhões de paletas e para-choques ajustados de um jeito específico. Ajuste essas configurações e as bolas se comportarão de uma maneira diferente.
O GPT-3 da OpenAI, lançado em 2020, tinha 175 bilhões de parâmetros. O LLM mais recente do Google DeepMind, o Gemini 3, pode ter pelo menos um trilhão, e alguns acham que provavelmente é mais como 7 trilhões, mas a empresa não está dizendo isso. (Com a competição agora acirrada, as empresas de IA não compartilham mais informações sobre como seus modelos são construídos.)
Mas os fundamentos do que são parâmetros e de como eles fazem os LLMs realizarem as coisas notáveis que realizam são os mesmos em diferentes modelos. Já se perguntou o que realmente faz um LLM funcionar, o que está por trás das metáforas coloridas de máquina de pinball? Vamos mergulhar nisso.
O que é um parâmetro?
Volte à álgebra do ensino fundamental, como 2a + b. Essas letras são parâmetros: atribua valores a elas e você obtém um resultado. Em matemática ou programação, parâmetros são usados para estabelecer limites ou determinar a saída. Os parâmetros dentro dos LLMs funcionam de maneira semelhante, apenas em uma escala impressionante.
Como eles recebem seus valores?
Resposta curta: um algoritmo. Quando um modelo é treinado, cada parâmetro é definido com um valor aleatório. O processo de treinamento então envolve uma série iterativa de cálculos, conhecida como etapas de treinamento, que atualiza esses valores. Nos estágios iniciais do treinamento, um modelo cometerá erros. O algoritmo de treinamento analisa cada erro e volta pelo modelo, ajustando o valor de cada um dos muitos parâmetros do modelo para que, na próxima vez, esse erro seja menor. Isso acontece repetidamente até que o modelo se comporte da maneira que seus criadores querem. Nesse ponto, o treinamento para e os valores dos parâmetros do modelo são fixados.
Parece simples…
Em teoria! Na prática, como os LLMs são treinados com tantos dados e contêm tantos parâmetros, treiná-los exige um número enorme de etapas e uma quantidade assustadora de computação. Durante o treinamento, os 175 bilhões de parâmetros dentro de um LLM de tamanho médio como o GPT-3 serão atualizados dezenas de milhares de vezes.
No total, isso soma quatrilhões, um número com 15 zeros, de cálculos individuais. É por isso que treinar um LLM consome tanta energia. Estamos falando de milhares de computadores especializados de alta velocidade funcionando sem parar por meses.
Ufa. Para que servem todos esses parâmetros, exatamente?
Há três tipos diferentes de parâmetros dentro de um LLM que têm seus valores atribuídos por meio do treinamento: embeddings, pesos e vieses. Vamos considerar cada um deles por vez.
Certo! Então, o que são embeddings?
Um embedding é a representação matemática de uma palavra, ou de parte de uma palavra, conhecida como token, no vocabulário de um LLM. O vocabulário de um LLM, que pode conter até algumas centenas de milhares de tokens únicos, é definido por seus projetistas antes de o treinamento começar. Mas não há significado associado a essas palavras. Isso vem durante o treinamento.
Quando um modelo é treinado, cada palavra em seu vocabulário recebe um valor numérico que captura o significado dessa palavra em relação a todas as outras palavras, com base em como a palavra aparece em incontáveis exemplos em todo o conjunto de dados de treinamento do modelo.
Cada palavra é substituída por uma espécie de código?
Sim. Mas há um pouco mais do que isso. O valor numérico, o embedding, que representa cada palavra, é, na verdade, uma lista de números, com cada número na lista representando uma faceta diferente de significado que o modelo extraiu de seus dados de treinamento. O comprimento dessa lista de números é outra coisa que os projetistas de LLM podem especificar antes de um LLM ser treinado. Um tamanho comum é 4.096.
Cada palavra dentro de um LLM é representada por uma lista de 4.096 números?
Sim, isso é um embedding. E cada um desses números é ajustado durante o treinamento. Diz-se que um LLM com embeddings que têm 4.096 números de comprimento tem 4.096 dimensões.
Por que 4.096?
Pode parecer um número estranho. Mas os LLMs, como qualquer coisa que roda em um chip de computador, funcionam melhor com potências de dois, 2, 4, 8, 16, 32, 64 e assim por diante. Engenheiros de LLM descobriram que 4.096 é uma potência de dois que atinge um ponto ideal entre capacidade e eficiência. Modelos com menos dimensões são menos capazes; modelos com mais dimensões são caros demais ou lentos demais para treinar e executar.
Usar mais números permite que o LLM capture informações muito detalhadas sobre como uma palavra é usada em muitos contextos diferentes, que conotações sutis ela pode ter, como ela se relaciona com outras palavras e assim por diante.
Em fevereiro, a OpenAI lançou o GPT-4.5, o maior LLM da empresa até agora. Algumas estimativas colocaram sua contagem de parâmetros em mais de 10 trilhões. Nick Ryder, um cientista pesquisador da OpenAI que trabalhou no modelo, disse-me na época que modelos maiores podem trabalhar com informações extras, como pistas emocionais, por exemplo, quando as palavras de um falante sinalizam hostilidade: “Todos esses padrões sutis que surgem em uma conversa humana são as partes que esses modelos cada vez maiores vão captar.”
O resultado é que todas as palavras dentro de um LLM são codificadas em um espaço de alta dimensionalidade. Imagine milhares de palavras flutuando no ar ao seu redor. Palavras que estão mais próximas têm significados semelhantes. Por exemplo, “mesa” e “cadeira” estarão mais próximas uma da outra do que de “astronauta”, que está próxima de “lua” e “Musk”. Bem ao longe você consegue ver “prestidigitação”. É um pouco assim, mas, em vez de estarem relacionadas entre si em três dimensões, as palavras dentro de um LLM estão relacionadas em 4.096 dimensões.
Ops!
É coisa de deixar tonto. Na prática, um LLM comprime a internet inteira em uma única estrutura matemática monumental que codifica uma quantidade insondável de informações interconectadas. É tanto por isso que os LLMs conseguem fazer coisas impressionantes quanto por isso que é impossível entendê-los completamente.
Certo. Então isso é um embedding. E os pesos?
Um peso é um parâmetro que representa a força de uma conexão entre diferentes partes de um modelo, e um dos tipos mais comuns de botão para ajustar o comportamento de um modelo. Pesos são usados quando um LLM processa texto.
Quando um LLM lê uma frase ou um capítulo de livro, ele, primeiramente, busca os embeddings de todas as palavras e depois passa esses embeddings por uma série de redes neurais, conhecidas como transformers, que são projetadas para processar sequências de dados, como texto, de uma só vez. Cada palavra na frase é processada em relação a todas as outras palavras.
É aqui que os pesos entram. Um embedding representa o significado de uma palavra sem contexto. Quando uma palavra aparece em uma frase específica, os transformers usam pesos para processar o significado dessa palavra nesse novo contexto. Na prática, isso envolve multiplicar cada embedding pelos pesos de todas as outras palavras.
E os vieses?
Vieses são outro tipo de botão que complementa os efeitos dos pesos. Pesos definem os limiares em que diferentes partes de um modelo disparam, e assim passam dados para a próxima parte. Vieses são usados para ajustar esses limiares para que um embedding possa disparar atividade mesmo quando seu valor é baixo. Vieses são valores que são adicionados a um embedding, em vez de multiplicados por ele.
Ao deslocar os limiares em que partes de um modelo disparam, vieses permitem que o modelo capte informações que, de outra forma, poderiam ser perdidas. Imagine que você está tentando ouvir o que alguém está dizendo em uma sala barulhenta. Pesos amplificariam as vozes mais altas; vieses são como um botão em um dispositivo de escuta que coloca as vozes mais baixas mais para cima na mistura.
Aqui vai o resumo: pesos e vieses são duas maneiras diferentes pelas quais um LLM extrai o máximo de informação possível do texto que recebe. E ambos os tipos de parâmetros são ajustados repetidamente durante o treinamento para garantir que façam isso.
Certo. E os neurônios? Eles também são um tipo de parâmetro?
Não, neurônios são mais uma forma de organizar toda essa matemática, recipientes para os pesos e os vieses, ligados por uma rede de caminhos entre eles. Tudo isso é inspirado de maneira bem livre em neurônios biológicos dentro de cérebros de animais, com sinais de um neurônio acionando novos sinais no próximo e assim por diante.
Cada neurônio em um modelo contém um único viés e pesos para cada uma das dimensões do modelo. Em outras palavras, se um modelo tem 4.096 dimensões, e, portanto, seus embeddings são listas de 4.096 números, então cada um dos neurônios desse modelo conterá um viés e 4.096 pesos.
Os neurônios são organizados em camadas. Na maioria dos LLMs, cada neurônio em uma camada está conectado a cada neurônio na camada acima. Um modelo de 175 bilhões de parâmetros como o GPT-3 pode ter cerca de 100 camadas com algumas dezenas de milhares de neurônios em cada camada. E cada neurônio está executando dezenas de milhares de cálculos ao mesmo tempo.
Tonto de novo. Isso é muita matemática.
Isso é muita matemática.
E como tudo isso se encaixa? Como um LLM pega um monte de palavras e decide que palavras devolver?
Quando um LLM processa um trecho de texto, a representação numérica desse texto, o embedding, é passada por múltiplas camadas do modelo. Em cada camada, o valor do embedding, essa lista de 4.096 números, é atualizado muitas vezes por uma série de cálculos envolvendo os pesos e os vieses do modelo, ligados aos neurônios, até chegar à camada final.
A ideia é que todo o significado e a nuance e o contexto desse texto de entrada sejam capturados pelo valor final do embedding depois que ele passa por uma série impressionante de cálculos. Esse valor então é usado para calcular a próxima palavra que o LLM deve cuspir.
Não vai ser surpresa que isso é mais complicado do que parece: o modelo, na verdade, calcula, para cada palavra em seu vocabulário, quão provável é que essa palavra venha a seguir e classifica os resultados. Então ele escolhe a palavra do topo. Mais ou menos. Veja abaixo…
Essa palavra é anexada ao bloco de texto anterior, e todo o processo se repete até que o LLM calcule que a próxima palavra mais provável a cuspir é uma que sinaliza o fim de sua saída.
É isso? Claro. Bem…
Continue.
Os projetistas de LLM também podem especificar alguns outros parâmetros, conhecidos como hiperparâmetros. Os principais são chamados de temperatura, top-p e top-k.
Você está inventando isso.
Temperatura é um parâmetro que funciona como uma espécie de botão de criatividade. Ele influencia a escolha do modelo sobre qual palavra vem a seguir. Eu acabei de dizer que o modelo classifica as palavras em seu vocabulário e escolhe a do topo. Mas o parâmetro de temperatura pode ser usado para levar o modelo a escolher a próxima palavra mais provável, tornando sua saída mais factual e relevante, ou uma palavra menos provável, tornando a saída mais surpreendente e menos robótica.
Top-p e top-k são mais dois botões que controlam a escolha do modelo das próximas palavras. Eles são configurações que forçam o modelo a escolher uma palavra aleatoriamente de um conjunto das palavras mais prováveis em vez da palavra do topo. Esses parâmetros afetam como o modelo soa, peculiar e criativo versus confiável e sem graça.
Uma última pergunta! Houve muito burburinho sobre modelos pequenos que podem superar modelos grandes.
Como um modelo pequeno faz mais com menos parâmetros?
Essa é uma das perguntas mais quentes em IA agora. Há muitas maneiras diferentes de isso acontecer. Pesquisadores descobriram que a quantidade de dados de treinamento faz uma diferença enorme. Primeiro, você precisa garantir que o modelo veja dados suficientes: um LLM treinado com pouco texto não vai tirar o máximo proveito de todos os seus parâmetros, e um modelo menor treinado com a mesma quantidade de dados pode superá-lo.
Outro truque que pesquisadores encontraram é o sobretreinamento. Mostrar aos modelos muito mais dados do que se pensava necessário anteriormente parece fazê-los ter um desempenho melhor. O resultado é que um modelo pequeno treinado com muitos dados pode superar um modelo maior treinado com menos dados. Veja os LLMs Llama da Meta. O Llama 2, com 70 bilhões de parâmetros, foi treinado em cerca de 2 trilhões de palavras de texto; o Llama 3, com 8 bilhões de parâmetros, foi treinado em cerca de 15 trilhões de palavras de texto. O Llama 3, muito menor, é o melhor modelo.
Uma terceira técnica, conhecida como destilação, usa um modelo maior para treinar um menor. O modelo menor é treinado não apenas com os dados brutos de treinamento, mas também com as saídas dos cálculos internos do modelo maior. A ideia é que as lições duramente conquistadas codificadas nos parâmetros do modelo maior escorram para os parâmetros do modelo menor, dando a ele um impulso.
De fato, os dias de modelos monolíticos únicos podem ter acabado. Até mesmo os maiores modelos do mercado, como o GPT-5 da OpenAI e o Gemini 3 do Google DeepMind, podem ser pensados como vários modelos pequenos em um sobretudo. Usando uma técnica chamada “mistura de especialistas”, modelos grandes podem ativar apenas as partes de si mesmos, os “especialistas”, que são necessárias para processar um trecho específico de texto. Isso combina as habilidades de um modelo grande com a velocidade e o menor consumo de energia de um pequeno.
Mas isso não é o fim. Pesquisadores ainda estão descobrindo maneiras de tirar o máximo proveito dos parâmetros de um modelo. À medida que os ganhos de simplesmente escalar diminuem, aumentar o número de parâmetros já não parece fazer a diferença que antes fazia. Não é tanto quantos você tem, mas o que você faz com eles.



