.

Aurich Lawson / Strong The One.
Quando o ChatGPT foi lançado no outono passado, ele causou ondas de choque na indústria de tecnologia e no mundo em geral. Os pesquisadores de aprendizado de máquina vinham experimentando modelos de linguagem grandes (LLMs) por alguns anos até aquele momento, mas o público em geral não prestava muita atenção e não percebia o quão poderosos eles se tornaram.
Hoje, quase todo mundo já ouviu falar dos LLMs e dezenas de milhões de pessoas os experimentaram. Mas muitas pessoas não entendem como eles funcionam.
Se você sabe alguma coisa sobre esse assunto, provavelmente já ouviu falar que os LLMs são treinados para “prever a próxima palavra” e que exigem grandes quantidades de texto para fazer isso. Mas isso tende a ser onde a explicação termina. Os detalhes de como eles prevêem a próxima palavra costumam ser tratados como um profundo mistério.
Uma razão para isso é a maneira incomum como esses sistemas foram desenvolvidos. O software convencional é criado por programadores humanos, que fornecem instruções passo a passo explícitas aos computadores. Por outro lado, o ChatGPT é construído em uma rede neural que foi treinada usando bilhões de palavras da linguagem comum.
Como resultado, ninguém na Terra entende completamente o funcionamento interno dos LLMs. Os pesquisadores estão trabalhando para obter uma melhor compreensão, mas este é um processo lento que levará anos – talvez décadas – para ser concluído.
Ainda assim, há muito que os especialistas entendem sobre como esses sistemas funcionam. O objetivo deste artigo é tornar muito desse conhecimento acessível a um público amplo. Nosso objetivo é explicar o que se sabe sobre o funcionamento interno desses modelos sem recorrer ao jargão técnico ou à matemática avançada.
Começaremos explicando os vetores de palavras, a maneira surpreendente como os modelos de linguagem representam e raciocinam sobre a linguagem. Em seguida, vamos nos aprofundar no transformador, o bloco de construção básico para sistemas como o ChatGPT. Por fim, explicaremos como esses modelos são treinados e exploraremos por que um bom desempenho requer quantidades tão grandes de dados.
vetores de palavras
Para entender como os modelos de linguagem funcionam, primeiro você precisa entender como eles representam palavras. Humanos representam palavras em inglês com uma sequência de letras, como CAT para “gato”. Os modelos de linguagem usam uma longa lista de números chamada de “vetor de palavras”. Por exemplo, aqui está uma maneira de representar o gato como um vetor:
[0.0074, 0.0030, -0.0105, 0.0742, 0.0765, -0.0011, 0.0265, 0.0106, 0.0191, 0.0038, -0.0468, -0.0212, 0.0091, 0.0030, -0.0563, -0.0396, -0.0998, -0.0796, …, 0.0002]
(O vetor completo tem 300 números – para ver tudo, clique aqui e depois clique em “mostrar o vetor bruto”.)
Por que usar uma notação tão barroca? Aqui está uma analogia. Washington, DC, está localizada a 38,9 graus norte e 77 graus oeste. Podemos representar isso usando uma notação vetorial:
- Washington, DC, está em [38.9, 77]
- Nova York está em [40.7, 74]
- Londres está em [51.5, 0.1]
- Paris está em [48.9, -2.4]
Isso é útil para raciocinar sobre relações espaciais. Você pode dizer que Nova York está perto de Washington, DC, porque 38,9 está perto de 40,7 e 77 está perto de 74. Da mesma forma, Paris está perto de Londres. Mas Paris está longe de Washington, DC.
.