Esquecimento Contextual

From Systems analysis Wiki
Jump to navigation Jump to search

Esquecimento contextual em modelos de linguagem grandes — é um fenômeno multifacetado no qual um modelo de linguagem grande (LLM) perde, ignora ou utiliza de forma ineficaz informações fornecidas anteriormente no âmbito de uma única interação[1]. Diferentemente da memória humana, os LLMs não possuem um armazenamento de estado de longo prazo e dependem apenas da janela de contexto — um volume limitado de texto (em tokens) que o modelo pode processar de uma só vez. Essa janela atua como a memória de curto prazo ou de trabalho do modelo[2].

A manifestação mais conhecida dessa limitação é o problema de "perda no meio" (Lost in the Middle) — a tendência dos modelos de processar melhor as informações localizadas no início e no final de um contexto longo, e pior as que estão no meio[2]. Esse fenômeno não é uma falha, mas uma propriedade fundamental decorrente da arquitetura dos transformadores e dos princípios de seu treinamento.

Dois tipos de esquecimento: Contextual e Catastrófico

É importante distinguir dois tipos fundamentalmente diferentes de "esquecimento" em LLMs: intracontexto e catastrófico.

Esquecimento intracontexto (Perda no meio)

Este tipo de esquecimento ocorre durante uma única sessão de interação (inferência) com um modelo já treinado. Está relacionado às limitações da janela de contexto. Quando o volume do diálogo ou do documento excede o tamanho da janela, o modelo "esquece" os fragmentos mais antigos para dar lugar aos novos. Mesmo dentro da janela, as informações do meio do contexto podem ser usadas de forma menos eficaz. Essa é uma limitação da memória de trabalho do modelo[3]. Na literatura não especializada, esse fenômeno também é chamado de "síndrome de degradação de contexto" (Context Degradation Syndrome, CDS)[1].

Esquecimento catastrófico (Desvio do modelo)

Este tipo de esquecimento, também conhecido como "desvio do modelo" (model drift), ocorre durante o processo de ajuste fino (fine-tuning) do modelo em novos dados. Quando um modelo, pré-treinado em um vasto corpus de conhecimento geral, é ajustado em um conjunto de dados altamente especializado (por exemplo, textos médicos), seus pesos são alterados. Isso pode levar à degradação ou "apagamento" de conhecimentos e habilidades previamente aprendidos que não estão relacionados à nova tarefa[4].

Causas e mecanismos

O esquecimento contextual é uma consequência direta da arquitetura dos transformadores e da geometria dos espaços vetoriais.

Efeito de "Perda no Meio" (Lost in the Middle)

Uma pesquisa da Universidade de Stanford de 2023, intitulada "Lost in the Middle", demonstrou claramente que o desempenho dos LLMs na extração de informações de um contexto longo segue uma curva em forma de U[2]. A precisão das respostas é mais alta quando a informação relevante está no início (efeito de primazia) ou no final (efeito de recência) do contexto, e diminui significativamente se estiver "escondida" no meio. As causas desse fenômeno são:

  • Mecanismo de atenção: A arquitetura Transformer, por sua natureza, dedica uma atenção desproporcional aos tokens iniciais (as chamadas "âncoras de atenção" ou attention sinks) para manter a coerência global, bem como ao contexto local, o que leva a um enfraquecimento do "foco" no meio[5].
  • Dados de pré-treinamento: Os modelos são mais frequentemente treinados em textos relativamente curtos, onde informações importantes raramente estão a dezenas de milhares de tokens do início, o que os impede de utilizar contextos muito longos de forma eficaz[6].

Manifestações e consequências

  • Síndrome de degradação de contexto: Durante diálogos longos, o modelo começa a "perder o fio da conversa", repetir respostas, contradizer fatos estabelecidos anteriormente e fornecer respostas cada vez mais genéricas e vagas[1].
  • Falhas em tarefas multifásicas: Em tarefas onde as condições são refinadas ao longo de várias interações, o modelo pode "se prender" a uma suposição inicial incorreta e ignorar os refinamentos subsequentes, resultando na incapacidade total de resolver a tarefa[7].
  • Análise de documentos não confiável: Ao analisar relatórios longos ou documentos jurídicos, um LLM pode omitir fatos cruciais localizados nas seções centrais, tornando-o uma ferramenta não confiável para tais tarefas.

Estratégias de mitigação e prevenção

Pesquisadores e desenvolvedores aplicam várias abordagens para resolver o problema do esquecimento contextual.

Aumento da janela de contexto

A abordagem mais direta é aumentar o tamanho da janela de contexto. Modelos modernos, como o Claude 3 (200 mil tokens) e o Gemini 1.5 Pro (até 2 milhões de tokens), expandiram significativamente esse limite[8][9]. No entanto, pesquisas mostram que simplesmente aumentar a janela não garante seu uso eficaz, e o problema da "perda no meio" persiste[2].

Engenharia de prompts avançada

A estruturação adequada dos prompts pode melhorar significativamente o desempenho. A empresa Anthropic sugere as seguintes práticas[10]:

  • Posicionar documentos no início: Colocar textos longos no início do prompt, antes das instruções e da pergunta.
  • Uso de tags XML: Envolver os documentos em tags `<document>` para uma separação clara.
  • Justificar respostas com citações: Instruir o modelo a primeiro extrair citações relevantes e, em seguida, formular a resposta com base nelas.

Externalização da memória: Geração Aumentada por Recuperação (RAG)

Uma abordagem fundamentalmente diferente é não colocar todas as informações na janela de contexto, mas externalizá-las para um sistema externo (um banco de dados vetorial) e fornecê-las sob demanda.

  1. Recuperação (Retrieve): Quando uma consulta é recebida, o sistema busca informações relevantes no banco de dados externo.
  2. Aumento (Augment): Os fragmentos encontrados são adicionados à consulta original.
  3. Geração (Generate): O LLM gera uma resposta com base no contexto fornecido.

RAG permite trabalhar com volumes de dados praticamente ilimitados e garante o acesso a informações atualizadas e verificadas, o que reduz o risco de alucinações e é a solução mais confiável atualmente[11].

Ligações externas

Literatura

  • Liu, N. F. et al. (2023). Lost in the Middle: How Language Models Use Long Contexts. arXiv:2307.03172.
  • An, C. et al. (2024). Why Does the Effective Context Length of LLMs Fall Short?. arXiv:2410.18745.
  • Ding, J. et al. (2023). LongNet: Scaling Transformers to 1,000,000,000 Tokens. arXiv:2307.02486.
  • Yang, A. et al. (2024). Context Parallelism for Scalable Million-Token Inference. arXiv:2411.01783.
  • Chen, S. et al. (2023). Extending Context Window of Large Language Models via Positional Interpolation. arXiv:2306.15595.
  • Ding, Y. et al. (2024). LongRoPE: Extending LLM Context Window Beyond 2 Million Tokens. arXiv:2402.13753.
  • Li, S. et al. (2023). Functional Interpolation for Relative Positions Improves Long Context Transformers. arXiv:2310.04418.
  • Dong, Z. et al. (2024). Exploring Context Window of Large Language Models via Decomposed Positional Vectors. arXiv:2405.18009.
  • Laban, P. et al. (2025). LLMs Get Lost in Multi-Turn Conversation. arXiv:2505.06120.
  • Li, R. et al. (2024). Extending Context Window in Large Language Models with Segmented Base Adjustment for Rotary Position Embeddings. Applied Sciences, 14(7), 3076. DOI:10.3390/app14073076.
  • Yang, A. & Reizenstein, J. (2024). Exploring Context Window of LLMs via Decomposed Positional Vectors (NeurIPS Poster). NeurIPS 2024.

Notas

  1. 1.0 1.1 1.2 Howard, James. «Context Degradation Syndrome: When Large Language Models Lose the Plot». jameshoward.us. [1]
  2. 2.0 2.1 2.2 2.3 Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». arXiv. [2]
  3. Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». ACL Anthology. [3]
  4. Greyling, Cobus. «Catastrophic Forgetting In LLMs». Medium. [4]
  5. «Exploring Context Window of Large Language Models via Decomposed Positional Vectors». NeurIPS Proceedings. [5]
  6. An, Chenxin; et al. «Why Does the Effective Context Length of LLMs Fall Short?». arXiv. [6]
  7. «LLMs Get Lost In Multi-Turn Conversation». arXiv. [7]
  8. «Introducing the next generation of Claude». Anthropic. [8]
  9. «Google's Gemini 1.5 Pro - Revolutionizing AI with a 1M Token Context Window». Medium. [9]
  10. «Long context prompting tips». Anthropic Documentation. [10]
  11. «What is Retrieval-Augmented Generation (RAG)?». Google Cloud. [11]