conteúdo
O post Eliminando o slop da IA, da Meta, propõe um novo método de RL que reduz a quantidade de "slop" que um LLM produz ao escrever.
(1) primeiro, coletar exemplos de textos da mais alta qualidade escritos por humanos, e então
(2) aprender avaliações de LLMs por meio de rubricas que atribuem pontuações mais altas a esses textos de especialistas do que aos textos gerados pelos modelos; e
(3) realizar RL com as rubricas aprendidas.
...
Nossa abordagem para aprender rubricas, chamada eXpert Aligned Rubrics (XAR), é simples:
Identifique exemplos de escrita humana muito acima da média / de especialistas, dividindo os textos em contexto e continuação. Gere continuações concorrentes com modelos a partir do mesmo contexto, que esperamos que tenham uma escrita de qualidade inferior (ou seja, slop). Os dados acima formam pares de aprendizado, nos quais os humanos devem receber pontuações mais altas. Esses dados de treinamento são então usados para aprender a gerar rubricas que maximizem a diferença de pontuação entre humanos e modelos. Então, para treinar um modelo para escrever melhor por meio de aprendizado por reforço (RL-XAR) usando essas rubricas, repetimos as seguintes etapas:
Aprenda rubricas XAR que maximizem a diferença entre os humanos e o modelo atual, conforme descrito acima. Realize aprendizado por reforço em um conjunto de treinamento usando as rubricas aprendidas. Repita o procedimento a partir da etapa 1 até que o aprendizado de rubricas não consiga mais identificar uma diferença (ou seja, até que não consigamos mais identificar slop no modelo).
Passei cerca de uma semana tentando reproduzir essa "Investigação empírica inicial", e não consegui. O código, os prompts e o registro completo estão em meta-rlxar-reproduction.
O que tentei
Segui o roteiro do post o mais fielmente que pude. O ciclo funciona assim:
- Pegue um bom texto escrito por humanos e oculte parte dele: uma seção de um artigo científico ou o próximo trecho de um romance.
- Um modelo escritor vê o restante e escreve sua própria versão da parte oculta.
- Um gerador de rubricas escreve uma rubrica para essa parte, orientado por um metaprompt.
- Um juiz pontua a versão humana e a versão do modelo de acordo com a rubrica, sem saber qual é qual.
- Um otimizador analisa os casos em que o modelo venceu e reescreve o metaprompt para que as rubricas favoreçam o humano na próxima vez.
- Repita algumas vezes, escolha o metaprompt que produz as rubricas com a maior preferência pela escrita humana e avalie-o em textos que não foram usados na otimização.
Como textos humanos, usei artigos científicos revisados por pares (primeiro, artigos recentes de PLN do arXiv, depois, artigos de 2016-2021 de 9 áreas) e romances do Project Gutenberg de ganhadores do Nobel e do Pulitzer.
Os modelos que testei, por função:
- Escritor: Muse Spark 1.1, Muse Spark 1.3, MiMo-V2.6-Pro
- Gerador de rubricas: Muse Spark 1.1, Muse Spark 1.3, MiMo-V2.6-Pro
- Juiz: Muse Spark 1.1, Muse Spark 1.3, Qwen3.8 Flash, com MiMo-V2.6-Pro como segundo juiz em uma execução
- Otimizador: Kimi K2.6, MiMo-V2.6-Flash
Também fiz algumas rodadas de alterações nos prompts e executei novamente a otimização 3 vezes a partir do melhor prompt até então, para ver o quanto os resultados variavam.
Nada disso reproduziu o resultado. Depois de várias rodadas de otimização, as rubricas nunca mostraram uma preferência consistente pelos autores humanos. Nos artigos do arXiv, as rubricas otimizadas reduziram um pouco a diferença, mas nunca a inverteram. Na ficção, as rubricas já preferiam ligeiramente o humano antes da otimização, e a otimização deslocou essa preferência em direção ao modelo.
O que tirei disso
- As rubricas otimizadas reduziram a diferença de forma consistente nos artigos científicos, mas nunca produziram uma preferência estável pelo humano.
- Meu prompt inicial e ingênuo (redigido pelo Opus 5.5) preferia a ficção escrita por humanos desde o início. Não acho que seja possível generalizar isso para dizer algo sobre os modelos da Anthropic, mas é mais um indício anedótico de que o Opus tem mais "bom gosto".
- É difícil dizer em que ponto minha configuração difere e impede a reprodução. Talvez seja a qualidade do provedor do modelo (usei um provedor do Kimi K2.6 com quantização fp8), e não prestei muita atenção à qualidade dos provedores dos outros modelos.
🤷