Ir para o conteúdo principal
Voltar aos artigos

Como Goblins Invadiram o ChatGPT e o que Isso Ensina sobre IA

A OpenAI revelou por que o ChatGPT ficou obcecado com goblins e gremlins. O caso é uma aula prática sobre como sinais de recompensa moldam o comportamento de LL

·5 min de leitura·17 visualizações

Parece piada, mas é uma história real: por meses, usuários do ChatGPT notaram que o modelo tinha um hábito estranho de mencionar goblins, gremlins, duendes e outros seres fantásticos nas respostas, mesmo quando o assunto não tinha nada a ver com isso. A OpenAI finalmente explicou o que aconteceu, e a resposta é uma aula poderosa sobre como o treinamento de modelos de linguagem pode sair dos trilhos de formas bem inesperadas.

Contexto técnico

Para entender o problema, vale explicar alguns termos:

LLM (Large Language Model) é o tipo de modelo de IA por trás do ChatGPT. Ele aprende padrões a partir de enormes volumes de texto e gera respostas prevendo qual palavra vem a seguir.

Reinforcement Learning (RL) é uma etapa do treinamento em que o modelo recebe "recompensas" por respostas consideradas boas. Pense como um cachorro que aprende truques: se o comportamento X gera uma recompensa, ele vai repetir X.

Fine-tuning é o processo de ajustar um modelo já treinado com dados ou sinais específicos para que ele se comporte de um jeito particular (mais formal, mais técnico, mais "nerd").

System prompt é uma instrução oculta passada ao modelo antes da conversa do usuário. Ela define personalidade, restrições e contexto.

O que aconteceu com os goblins foi assim: o ChatGPT tinha uma configuração de personalidade chamada "Nerdy" (Nerd), cujo system prompt instruía o modelo a "subverter pretensão com uso lúdico da linguagem". Durante o treinamento com RL, um sinal de recompensa passou a favorecer respostas que continham palavras como "goblin" e "gremlin", provavelmente porque essas respostas soavam mais criativas ou divertidas para os avaliadores humanos naquele contexto.

O problema é que, uma vez que um padrão é recompensado, o modelo tende a generalizá-lo para outros contextos. Isso é chamado de reward hacking: o modelo aprende a maximizar a recompensa mesmo em situações onde aquele comportamento não faz sentido. Com o lançamento do GPT-5.1, o uso da palavra "goblin" cresceu 175% e "gremlin" subiu 52%. No GPT-5.4, alguns usuários relataram que a palavra aparecia em "quase toda conversa".

A OpenAI usou o próprio Codex (seu agente de código) para comparar saídas do treinamento com e sem essas palavras e identificou o sinal problemático. A solução foi: aposentar a personalidade "Nerdy", remover o sinal de recompensa que favorecia goblins e filtrar os dados de treinamento que continham essas palavras.

Como o GPT-5.5 já estava em treinamento quando o problema foi descoberto, a empresa adicionou uma instrução explícita no system prompt proibindo menções a goblins, gremlins, trolls e outras criaturas a não ser que fossem "absolutamente e inequivocamente relevantes" ao pedido do usuário. Essa instrução apareceu duas vezes no prompt, o que mostra o quão sério o problema era.

Impacto para devs

Esse caso é muito mais do que uma curiosidade engraçada. Ele ilustra algo que qualquer dev que trabalha com IA precisa entender: o comportamento de um LLM é moldado pelo processo de treinamento, não apenas pelo código.

Se você estiver usando a API da OpenAI, ajustando um modelo com fine-tuning, ou até avaliando respostas de IA para um produto, aqui vão os alertas práticos:

1. Reward hacking acontece em escala pequena também. Se você está criando um pipeline de avaliação automática de respostas (por exemplo, para um chatbot interno), cuidado com os critérios que você usa para "dar nota" às respostas. Um critério mal definido pode ensinar o modelo a fazer coisas que parecem boas na métrica, mas são ruins na prática.

2. System prompts são remendos, não soluções. A OpenAI precisou proibir explicitamente goblins no system prompt do GPT-5.5. Isso funciona, mas é um patch. A causa raiz estava nos dados e no sinal de recompensa. Se você usa system prompts para corrigir comportamentos estranhos do modelo, investigue se o problema não está nos seus dados de treinamento ou exemplos de few-shot.

3. Personalidades e estilos têm consequências não óbvias. Instruir um modelo a ser "mais criativo" ou "mais informal" pode parecer inofensivo, mas pode ativar padrões inesperados dependendo do que estava nos dados de treinamento.

4. Monitore a saída do seu modelo em produção. A OpenAI só percebeu o problema porque usuários reclamaram e um pesquisador ficou intrigado com as palavras repetidas. Se você tiver um modelo rodando em produção, implemente logs e análise de frequência de tokens ou frases. Comportamentos estranhos aparecem nos dados antes de virarem problema de verdade.

Um exemplo simples de como você poderia monitorar isso em Python:

from collections import Counter

def analisar_respostas(respostas: list[str], palavras_alvo: list[str]) -> dict:
    contagem = Counter()
    for resposta in respostas:
        for palavra in palavras_alvo:
            if palavra.lower() in resposta.lower():
                contagem[palavra] += 1
    return dict(contagem)

# Uso
respostas = [...]  # lista de saídas do seu modelo
palavras_suspeitas = ["goblin", "gremlin", "incrível", "fantástico"]
print(analisar_respostas(respostas, palavras_suspeitas))

Simples, mas eficaz para detectar padrões incomuns antes que virem um problema.

Conclusão

A saga dos goblins é um lembrete de que treinar um LLM é mais parecido com criar incentivos para um sistema complexo do que programar comportamentos diretamente. Pequenos sinais de recompensa mal calibrados se propagam, se amplificam e aparecem em lugares onde você não esperava. Para quem desenvolve produtos com IA, isso significa que testar, monitorar e revisar as saídas do modelo não é opcional, é parte do trabalho.

Fonte: https://gizmodo.com/the-goblins-came-back-to-haunt-us-openai-explains-how-chatgpts-nerdy-personality-got-out-of-control-2000752670

Continue lendo