Registros conflitantes, e não o tamanho do contexto, derrubam a precisão de LLMs de 97–100% para 11–21%

Costuma-se dizer que as LLMs se perdem em prompts longos por causa do tamanho, mas pesquisadores da UC San Diego mostraram outra coisa. Em texto neutro de até 32 mil tokens, o Qwen2.5-1.5B responde corretamente em 97–100% dos casos. Quando se adicionam registros no mesmo formato, como uma versão antiga de um arquivo de configuração com outro valor para a mesma chave, a precisão cai para 11–21%. Para RAG, vale mais remover duplicatas desatualizadas do que cortar o contexto.

Processado por IA de Hugging Face Daily Papers; editado por Hamidun News
Registros conflitantes, e não o tamanho do contexto, derrubam a precisão de LLMs de 97–100% para 11–21%
Fonte: Hugging Face Daily Papers. Colagem: Hamidun News.
Ouvir artigo
Ficha técnica e números-chave
ParâmetroDados
Fonte originalHugging Face Daily Papers ↗
Editor-chefe
Dado-chave #1Um único registro com outro valor para a chave procurada piora a resposta de 9 a 110 vezes
Dado-chave #2A fatia de atenção que fica na linha certa explica até 58% das perdas; o tamanho do contexto, até 8%
Dado-chave #3Texto oculto do modelo custa 46 p.p. de precisão; o mesmo texto visível não custa nada

Costuma-se achar que redes neurais se confundem em documentos longos simplesmente porque há texto demais. Pesquisadores da Universidade da Califórnia em San Diego testaram essa hipótese em uma tarefa de busca de fatos no contexto e chegaram a outra resposta. Imagine um sistema RAG cujo prompt recebeu duas versões do mesmo arquivo de configuração: a antiga e a nova, com valores diferentes para o mesmo parâmetro.

São registros assim, e não os milhares de tokens em si, que estragam a resposta. Enquanto o contexto de até 32 mil tokens é preenchido com texto neutro, o Qwen2.5-1.

5B responde corretamente em 97–100% dos casos. Quando esses mesmos espaços são ocupados por registros no formato do fato procurado, a precisão cai para 11–21%. A conclusão prática: antes de enviar o material ao prompt, convém limpar duplicatas conflitantes, e não apenas encurtar o documento.

Como o experimento foi montado

A tarefa é propositalmente simples. Uma única linha, como «o código secreto do rio é 4821», fica escondida em um texto longo, e no final o modelo é perguntado sobre o código do rio. A linha fica em uma profundidade aleatória, e o tamanho do contexto varia de 512 a 32 mil tokens. O teste foi executado em cinco modelos abertos, com tamanhos de 0,5 a 3 bilhões de parâmetros, de quatro famílias, entre elas Qwen2.5, Llama-3.2, SmolLM2 e OLMo-2.

A regra central do desenho experimental: o comprimento e a posição da linha procurada são sempre os mesmos, e muda apenas o que há ao redor dela. Em uma variante, são números aleatórios, palavras aleatórias ou uma única frase repetida. Em outra, são registros no modelo da linha procurada, com chaves tiradas de um conjunto de 51 substantivos. Há ainda uma terceira variante: o mesmo texto neutro é ocultado da atenção do modelo, mas as posições dos tokens são mantidas.

O que as medições mostraram

Em texto neutro, a precisão fica em 97–100% em quatro dos cinco modelos: até 4 mil tokens em todos os quatro e até 32 mil no Qwen2.5-1.5B. A exceção é o OLMo-2-1B: com 2048 tokens de texto neutro, ele perde 0,57 nat (precisão de 91%). O nat é aqui a unidade de perda associada à probabilidade da resposta correta: quanto maior, pior.

Registros no formato da linha procurada, em contextos de 8 a 32 mil tokens, derrubam a precisão para 11–21%. O caso mais prejudicial é o registro com a mesma chave e outro valor. Um único registro desse tipo aumenta as perdas do modelo de 9 a 110 vezes, e cada registro seguinte soma mais. Comparação no Qwen2.5-1.5B com 32 mil tokens: o texto neutro custa 0,004 nat, o texto neutro oculto custa 1,20 nat e os registros concorrentes custam 4,76 nats. As perdas medianas com concorrentes nesse modelo são de 2,82, 3,94, 4,03 e 4,76 nats em 8, 16, 24 e 32 mil tokens.

Dentro do modelo, os autores acompanharam uma grandeza: a fatia de atenção que permanece na linha procurada. Ela foi calculada a partir das oito cabeças de atenção que mais olham para essa linha, tomando como referência o último token da consulta. Em 126 473 execuções, essa fatia explica de 35 a 58% da variação das perdas, enquanto o logaritmo do tamanho do contexto explica apenas 2–8%. A diferença se mantém em contextos de 8 a 32 mil tokens. Em resumo, a ideia é simples: registros parecidos tiram atenção da linha certa, e é isso que coincide com os erros.

Por que a ideia de que «o tamanho prejudica por si só» não se confirmou

Trabalhos anteriores ocultavam tokens excedentes da atenção mantendo as posições e observavam queda de precisão, o que levava à conclusão de que o tamanho do contexto causava o dano. Os autores reproduziram isso com 1000 perguntas do MMLU, usando Llama-3.2-3B e Qwen2.5-7B-Instruct: com 30 mil tokens ocultos, as perdas foram de 11–18 pontos. Mas, na tarefa de busca, a mesma ocultação custa 46 pontos de precisão com 32 mil tokens, enquanto o mesmo texto deixado visível não custa nada. Isso significa que esse protocolo não mede o custo puro do tamanho do contexto.

O que fazer com isso

Na prática, importa menos o número de tokens e mais o número de afirmações que contradizem a resposta certa. Versões desatualizadas de contratos, rascunhos e duplicatas de logs com valores diferentes são os vizinhos mais perigosos para o trecho procurado. Os autores também publicaram no GitHub e no Hugging Face o código, a ferramenta de medição de atenção e todas as 126 mil medições, de modo que, em modelos abertos, é possível verificar por conta própria a fatia de atenção sobre o trecho procurado.

Há também limitações. Os modelos são pequenos, de 0,5 a 3 bilhões de parâmetros, e a tarefa é uma busca simples de valor por chave, não documentos corporativos reais. A relação entre atenção e erros foi obtida por estatística das execuções. Por isso, a conclusão vale especificamente para a busca de fatos em contexto longo, e não para todas as tarefas com entradas longas.

História

Perguntas frequentes sobre a notícia

Como o experimento foi montado?

A tarefa é propositalmente simples. Uma única linha, como «o código secreto do rio é 4821», fica escondida em um texto longo, e no final o modelo é perguntado sobre o código do rio. A linha fica em uma profundidade aleatória, e o tamanho do contexto varia de 512 a 32 mil tokens. O teste foi executado em cinco modelos abertos, com tamanhos de 0,5 a 3 bilhões de parâmetros, de quatro famílias, entre elas Qwen2.5, Llama-3.2, SmolLM2 e OLMo-2.

O que as medições mostraram?

Em texto neutro, a precisão fica em 97–100% em quatro dos cinco modelos: até 4 mil tokens em todos os quatro e até 32 mil no Qwen2.5-1.5B. A exceção é o OLMo-2-1B: com 2048 tokens de texto neutro, ele perde 0,57 nat (precisão de 91%). O nat é aqui a unidade de perda associada à probabilidade da resposta correta: quanto maior, pior. Registros no formato da linha procurada, em contextos de 8 a 32 mil tokens, derrubam a precisão para 11–21%. O caso mais prejudicial é o registro com a mesma chave e outro valor.

Por que a ideia de que «o tamanho prejudica por si só» não se confirmou?

Trabalhos anteriores ocultavam tokens excedentes da atenção mantendo as posições e observavam queda de precisão, o que levava à conclusão de que o tamanho do contexto causava o dano. Os autores reproduziram isso com 1000 perguntas do MMLU, usando Llama-3.2-3B e Qwen2.5-7B-Instruct: com 30 mil tokens ocultos, as perdas foram de 11–18 pontos. Mas, na tarefa de busca, a mesma ocultação custa 46 pontos de precisão com 32 mil tokens, enquanto o mesmo texto deixado visível não custa nada.

ZK
Zhemal Khamidun — CPO da Alpina Digital, gerente de produto do AlpinaGPT. Cria produtos de IA desde 2019. O Hamidun News é um projeto pessoal que virou um agregador em produção com mais de 6.000 leitores.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
O que você acha?
Carregando comentários…