Como funciona por dentro · Leitura de 8 min

Como se treina um modelo de linguagem, do zero ao assistente

Primeiro lê metade da internet. Depois aprende boas maneiras. São duas etapas bem distintas e confundi-las leva a mal-entendidos.

Como se treina um modelo de linguagem se resume a três etapas encadeadas e nessa ordem: primeiro ele engole texto por milhões de páginas até aprender a prever a palavra seguinte (pré-treinamento), depois pratica com exemplos de "é assim que se responde a uma instrução" (ajuste por instruções) e, por último, pole seu comportamento com feedback de pessoas que lhe dizem qual de duas respostas preferem (RLHF). Cada etapa faz algo que a anterior não conseguia. Confundi-las é a raiz de quase todos os mal-entendidos sobre essas máquinas.

Digo isso com a analogia que me surge sozinha, porque me dedico a observar como esses sistemas se comportam: eles não se programam, se criam. E, como qualquer um que já criou algo sabe, existe uma diferença abissal entre alguém que leu muito e alguém que, além disso, sabe se comportar. Um modelo recém-saído do pré-treinamento é a primeira coisa. O assistente com quem você conversa é a segunda. Entre um e outro, muita coisa aconteceu.

01 · a farturaPré-treinamento: ler metade da internet sem entender nada

A primeira etapa é a mais longa, a mais cara e a mais incompreendida. Ao modelo se entrega uma montanha descomunal de texto (livros, artigos, código, fóruns, boa parte da web pública) e uma única tarefa, ridiculamente simples: adivinhar a palavra que vem a seguir. Tapa-se a última peça de uma frase e ele precisa apostar. Acerta, se corrige, aposta de novo. Bilhões de vezes.

Parece uma brincadeira boba, e aí está o assombroso: para prever bem a palavra seguinte em tantíssimos contextos, o sistema se vê forçado a aprender gramática, fatos do mundo, estilos, associações, até rudimentos de raciocínio. Ninguém lhe ensina essas coisas de frente; elas emergem como efeito colateral de brincar de adivinhar. O resultado se chama modelo base: uma máquina com uma competência linguística assombrosa e nem um grama de boas maneiras.

Prever a palavra seguinte parece brincadeira boba. É a escola mais exigente que existe.

Figura 1 · as três etapas, em ordem
1 · Pré-treinamento prever a palavra seguinte → modelo base 2 · Instruções imitar boas respostas → sabe obedecer 3 · RLHF preferências humanas → tem boas maneiras de ler muito a se comportar bem
As três fases seguem sempre nesta ordem. Cada uma recebe o que a anterior deixou pela metade: o pré-treinamento dá conhecimento; o ajuste por instruções, obediência; o RLHF, critério.

Para dimensionar a fartura: o estudo das "leis de escala" de Kaplan e seus colegas em 2020 mostrou que a qualidade do modelo melhora de forma previsível ao elevar ao mesmo tempo o tamanho do modelo, a quantidade de dados e a computação [1]. Em 2022, o trabalho de Hoffmann e sua equipe (o modelo Chinchilla) corrigiu o equilíbrio: para um orçamento de computação dado convém menos parâmetros e muito mais dados do que se acreditava [2]. Traduzindo: esta etapa se mede em centenas de bilhões de palavras e em meses de fazendas de processadores. É, de longe, onde o dinheiro vai embora.

02 · as boas maneirasAjuste por instruções: ensiná-lo a dar ouvidos

Se você fala com um modelo base recém-pré-treinado, a experiência é estranha. Você escreve "Qual é a capital da França?" e, em vez de responder "Paris", talvez ele continue com "Qual é a capital da Itália? Qual é a capital da Espanha?". Não é que ele não saiba a resposta: é que aprendeu a continuar texto, não a obedecer a um pedido. Leu metade da internet e continua sem entender que você está perguntando algo.

A segunda etapa conserta isso. Chama-se ajuste por instruções (uma forma de fine-tuning) e consiste em continuar treinando o modelo base, mas agora com um cardápio cuidadoso de exemplos com a forma "instrução → boa resposta": perguntas e sua resposta correta, tarefas e como resolvê-las, pedidos e como atendê-los. Ao imitar milhares desses pares, o modelo aprende o formato de ser útil: entender que um turno de conversa pede uma resposta, não uma continuação.

O detalhe que quase ninguém percebe

Esta etapa mal lhe ensina fatos novos. Todo o conhecimento já estava dentro desde o pré-treinamento; o ajuste por instruções só lhe ensina a extraí-lo quando lho pedem e no formato adequado. Por isso usa relativamente poucos exemplos comparada com a fartura inicial. Você não está enchendo uma biblioteca: está ensinando um bibliotecário muito lido a atender o balcão.

O conhecimento já estava dentro. O que faltava era ensiná-lo a entregá-lo quando lho pedem.

03 · o critérioRLHF: polir o comportamento com preferências humanas

Depois das instruções o modelo já obedece, mas obedecer não é o mesmo que responder bem. Entre duas respostas ambas corretas, qual é mais clara, mais honesta, menos tóxica, mais útil? Escrever à mão uma regra para isso é impossível: não existe fórmula para "a melhor resposta". Mas reconhecer a melhor quando a temos diante de nós, isso sabemos fazer.

Aí entra a terceira etapa, o aprendizado por reforço com feedback humano (RLHF). Mostram-se a pessoas duas respostas do modelo ao mesmo pedido e pede-se apenas que apontem qual preferem. Com milhares dessas comparações treina-se um segundo modelo (o modelo de recompensa) que aprende a prever o que um humano escolheria. Esse modelo passa a ser o professor automático: o sistema se ajusta para produzir respostas que esse juiz pontua alto. Em 2022 a equipe de Ouyang o aplicou a um modelo de linguagem e publicou o InstructGPT, e o salto foi tão grande que um modelo muito menor mas polido com RLHF era preferido pelas pessoas frente a outro cem vezes maior sem polir [3].

Figura 2 · como aprende de uma preferência
1 pedido resposta A resposta B a pessoa prefere A modelo de recompensa aprende a pontuar como um humano
O humano não escreve a resposta perfeita: apenas escolhe entre duas. Dessas escolhas se destila um juiz automático, e contra esse juiz o modelo afina seu critério. Fonte do método: Christiano et al. (2017) e Ouyang et al. (2022) [3][4].

Convém ser honesta com os limites: esse juiz é uma medida do que queremos, não o que queremos em si. Um sistema que empurra com todas as suas forças rumo a uma medida imperfeita encontra atalhos: responder longo porque o comprimento se confunde com qualidade, soar seguro em vez de estar correto, bajular o usuário. Por isso o polimento com preferências melhora muitíssimo o comportamento, mas não o deixa "resolvido" para sempre: fica sob vigilância.

04 · por que a ordem importaConfundir as etapas confunde o modelo (e você)

A razão de contar isso em ordem estrita é prática. Quase todo mal-entendido comum sobre esses sistemas vem de atribuir a uma etapa o que outra faz. O modelo "sabe" coisas? Isso veio do pré-treinamento. Responde ao que você pede em vez de divagar? Isso são as instruções. É prudente, cortês, evita certo conteúdo? Isso é o polimento com preferências. Se algo falha, ajuda saber em que etapa procurar.

Um exemplo cotidiano: quando um modelo "alucina" um dado falso com total aprumo, não é que o ajuste por instruções lhe tenha metido um erro; é que o pré-treinamento lhe ensinou a produzir texto plausível e nenhuma etapa posterior garante que o plausível seja verdadeiro. E quando um modelo se recusa a algo razoável, não é que "não saiba": é sua camada de comportamento, a do RLHF, sendo excessivamente cautelosa. Distinguir as camadas transforma um "a IA é uma caixa-preta" em perguntas concretas e respondíveis.

No fim, criar um modelo de linguagem se parece mais com a criação de um filho do que com a engenharia de uma planilha. Primeiro você o deixa ler sem parar até que saiba muito. Depois você o ensina a dar ouvidos. E, por fim, você lhe ensina critério, mostrando-lhe exemplos do que está certo e do que não está, com a paciência de quem sabe que o aluno tomará cada instrução de forma temivelmente literal. Três etapas, uma ordem. Mude-a e você não obtém um assistente: obtém um leitor brilhante que não entende que você está falando com ele.

Fontes

  1. Kaplan, J., McCandlish, S., Henighan, T. et al. (2020). Scaling Laws for Neural Language Models. arXiv:2001.08361.
  2. Hoffmann, J., Borgeaud, S., Mensch, A. et al. (2022). Training Compute-Optimal Large Language Models ("Chinchilla"). Advances in Neural Information Processing Systems (NeurIPS) 35. arXiv:2203.15556.
  3. Ouyang, L., Wu, J., Jiang, X. et al. (2022). Training Language Models to Follow Instructions with Human Feedback ("InstructGPT"). Advances in Neural Information Processing Systems (NeurIPS) 35. arXiv:2203.02155.
  4. Christiano, P., Leike, J., Brown, T., Martic, M., Legg, S. y Amodei, D. (2017). Deep Reinforcement Learning from Human Preferences. Advances in Neural Information Processing Systems (NeurIPS) 30. arXiv:1706.03741.

Aprenda mais sobre IA

Ver tudo Aprenda IA