Penalidade de repetição é um ajuste de decodificação usado por alguns geradores de texto para reduzir a probabilidade de reutilizar tokens ou sequências que já apareceram. Ela pode tornar uma resposta menos repetitiva, mas o efeito depende da implementação e da configuração do modelo.

Como funciona

Durante a geração, o modelo calcula pontuações para possíveis próximos tokens. Uma penalidade pode alterar as pontuações de tokens que já foram usados, antes de o sistema selecionar o próximo token. A regra exata varia: algumas implementações consideram tokens vistos em toda a resposta, enquanto outras limitam a janela analisada ou tratam frequências de forma diferente.

O parâmetro não entende o significado de uma repetição. Ele opera sobre tokens, que são pedaços de texto definidos pelo tokenizador. Por isso, pode reduzir uma repetição útil, como o nome de uma variável ou um termo importante, junto com uma repetição indesejada. O efeito também depende de temperatura, top-p, top-k e outras opções de geração.

A penalidade não corrige uma resposta mal planejada nem garante variedade natural. Um valor muito forte pode tornar o texto estranho, omitir palavras necessárias ou atrapalhar formatos previsíveis, como código, JSON e listas. Antes de ajustar esse parâmetro, verifique a documentação do provedor porque nomes, escalas e valores aceitos não são universais.

Exemplo prático

Imagine que um chatbot de suporte responde várias vezes “reinicie o aplicativo” mesmo depois de o cliente dizer que já tentou. A equipe pode testar uma penalidade de repetição para reduzir a repetição literal de tokens. Porém, isso não ensina o sistema a compreender que a sugestão já foi tentada.

Para corrigir a causa, o fluxo também precisa manter o histórico relevante da conversa e orientar o modelo a considerar as tentativas anteriores. Uma avaliação com exemplos de diálogo ajuda a comparar duas configurações: a resposta ficou menos repetitiva sem perder clareza, precisão ou consistência?

Em geração de código, a configuração deve ser testada com cuidado. Repetir identificadores, chaves de objeto ou estruturas sintáticas pode ser obrigatório. Se a penalidade prejudicar essas repetições, é melhor ajustar as instruções ou a estratégia de geração do que aumentar o parâmetro sem observar o resultado.

Para que serve

Esse ajuste pode ser útil quando uma aplicação gera texto livre e repete frases ou trechos de forma perceptível. Serve como uma das opções para controlar o estilo de geração, junto com instruções, contexto, temperatura e métodos de amostragem.

O parâmetro deve ser calibrado com tarefas reais. Separe exemplos em que repetição é ruim e casos em que ela é necessária, como resumos com nomes próprios ou respostas com estrutura fixa. Compare as saídas e acompanhe erros, não apenas a impressão de variedade.

Se a repetição vier de contexto duplicado, memória mal organizada ou instruções conflitantes, trate primeiro essa origem. A penalidade atua durante a seleção de tokens; ela não remove conteúdo duplicado do prompt nem substitui uma boa preparação do contexto. Registre o valor testado por provedor e modelo, pois configurações iguais podem produzir efeitos diferentes entre sistemas.