Se você já conversou com o ChatGPT, Claude ou Gemini, provavelmente já teve aquela experiência frustrante: no começo da conversa, o modelo lembra de tudo o que você disse. Mas depois de muitas mensagens, ele simplesmente… esquece. Pede para você repetir informações. Contradiz algo que ele mesmo afirmou antes. É como se a conversa tivesse “reiniciado” silenciosamente.

Isso não é um bug. É uma consequência direta de algo chamado janela de contexto, um dos conceitos mais importantes para entender como os LLMs funcionam na prática.

A Memória de Trabalho da IA

Pense na janela de contexto como a memória de trabalho do LLM. Assim como um ser humano consegue manter apenas algumas informações ativas na mente enquanto resolve um problema, o LLM tem um limite de texto que consegue “enxergar” ao mesmo tempo.

Tudo o que você envia no prompt (sua pergunta, o histórico da conversa, os documentos anexados, as instruções do sistema) e tudo o que o modelo gera como resposta precisa caber dentro dessa janela. Quando o limite é ultrapassado, as informações mais antigas são descartadas ou truncadas. O modelo continua respondendo, mas agora com uma visão incompleta da conversa.

A diferença fundamental para a memória humana é que nós temos memória de longo prazo. Podemos esquecer detalhes, mas retemos conceitos e contextos por anos. O LLM, por padrão, não tem nada disso. Cada requisição é uma folha em branco preenchida pelo conteúdo da janela de contexto. Fora dela, nada existe.

O Que São Tokens (e Por Que Não São Palavras)

A janela de contexto não é medida em palavras, mas em tokens. E entender essa distinção é mais importante do que parece.

Antes de processar qualquer texto, o LLM quebra a entrada em unidades menores chamadas tokens através de um processo chamado tokenização. Um token pode ser uma palavra inteira (“casa”), parte de uma palavra (“des” + “envolver”), um caractere especial ou até uma expressão curta.

Em inglês, a regra prática é que 1 token equivale a aproximadamente 0,75 palavras, ou seja, 100 tokens são mais ou menos 75 palavras. Em português, por conta de palavras geralmente mais longas e da acentuação, essa proporção tende a ser um pouco diferente, com mais tokens por palavra.

Para dar uma escala concreta: uma janela de 200.000 tokens equivale a aproximadamente 150.000 palavras, ou algo como um livro de 500 páginas. Uma janela de 1 milhão de tokens se aproxima de 3.000 páginas de texto, a trilogia completa de O Senhor dos Anéis com seus apêndices.

O Panorama Atual: De Milhares a Milhões de Tokens

A evolução das janelas de contexto nos últimos anos vem sendo impressionante. Quando o ChatGPT foi lançado no final de 2022, o GPT-3 que o sustentava operava com apenas 2.048 tokens, pouco mais do que uma página de texto. Isso era suficiente para perguntas simples, mas completamente inadequado para análises de documentos ou conversas longas.

De lá para cá, os números escalaram de forma exponencial. Segundo pesquisadores da Epoch AI, desde meados de 2023 as maiores janelas de contexto têm crescido a uma taxa de aproximadamente 30 vezes por ano.

Veja alguns exemplos de tamanho de janela de contexto, de alguns dos principais modelos ao longo dos últimos anos:

tab

Esses números são impressionantes, mas escondem uma verdade inconveniente: janela de contexto grande não significa uso eficiente dessa janela. 

Mas o fato é que a cada novo modelo lançado, o tamanho da janela de contexto aumenta. Essa tem sido uma das principais evoluções da IA Generativa nos últimos anos.

O Problema do “Lost in the Middle”

Em 2023, pesquisadores de Stanford e da Universidade de Washington publicaram um estudo que se tornou referência na área (link nas referências ao final deste post): “Lost in the Middle: How Language Models Use Long Contexts”. A descoberta principal foi surpreendentemente simples e preocupante.

Os pesquisadores testaram diversos modelos em tarefas que exigiam localizar informações relevantes em diferentes posições do contexto. O resultado revelou uma curva de desempenho em formato de “U”: os modelos performavam bem quando a informação relevante estava no início ou no final do contexto, mas o desempenho caía significativamente (em alguns casos mais de 30%) quando a informação estava no meio.

Isso acontece por causa de como funciona o mecanismo de atenção dos Transformers, a arquitetura que sustenta praticamente todos os LLMs modernos. A atenção não é distribuída uniformemente ao longo do contexto. Há um viés posicional que favorece tokens próximos ao início e ao final da sequência, enquanto tokens intermediários recebem menos “peso” no processamento.

Na prática, isso significa que um modelo com 1 milhão de tokens de janela de contexto pode tecnicamente “caber” um documento enorme, mas não necessariamente vai usar todas as partes desse documento com a mesma qualidade. Informações enterradas no meio de um prompt longo podem simplesmente ser ignoradas.

Pesquisas mais recentes da Epoch AI mostram que a situação está melhorando e a capacidade dos modelos de usar contextos longos de forma eficiente está avançando mais rápido do que o próprio crescimento das janelas. Mas o problema ainda não está resolvido.

Implicações Práticas: O Que Isso Muda Para Quem Usa LLMs?

Entender a janela de contexto muda fundamentalmente a forma como você deve interagir com LLMs, seja como usuário final, desenvolvedor ou arquiteto de soluções.

Para conversas longas, significa que o modelo vai gradualmente “esquecer” o início da conversa à medida que novas mensagens são adicionadas. Se você está usando um assistente para uma tarefa complexa que se desenvolve ao longo de muitas trocas de mensagens, as informações iniciais podem ser silenciosamente descartadas.

Para análise de documentos, significa que simplesmente jogar um PDF enorme no prompt não garante que o modelo vai processar tudo com a mesma atenção. As informações mais críticas devem idealmente estar posicionadas no início do contexto.

Para Engenheiros de IA ou AI Data Engineers construindo aplicações com RAG (Retrieval-Augmented Generation), o “Lost in the Middle” é um desafio direto. Quando você recupera 20 trechos de documentos e os concatena no prompt, a ordem em que eles aparecem importa muito. Estratégias como reranking (reordenar os documentos por relevância), context reduction (enviar apenas os trechos mais relevantes em vez de todos) e posicionar os documentos mais importantes no início e no final do prompt fazem diferença real na qualidade das respostas.

Para Agentes de IA, o problema é amplificado. Um agente que executa dezenas de etapas em sequência acumula contexto a cada chamada ao modelo. Em um workflow de 50 etapas, com 20.000 tokens por chamada, o consumo total pode chegar a 1 milhão de tokens. E diferente de um erro tradicional, quando o contexto estoura em um agente, ele não necessariamente para, ele continua operando com informações incompletas, gerando resultados confiantes mas potencialmente incorretos (o que costuma ser chamado de alucinação).

Estratégias Para Lidar Com os Limites

Existem várias abordagens para trabalhar de forma inteligente dentro dos limites da janela de contexto:

  • Sumarização progressiva — Em vez de manter todo o histórico de uma conversa, sistemas inteligentes criam resumos das interações anteriores e inserem apenas o resumo no contexto, liberando espaço para novas informações.
  • RAG bem implementado — Em vez de colocar documentos inteiros no contexto, recupere apenas os trechos mais relevantes usando busca vetorial, reordene-os por relevância com um modelo de reranking e posicione os mais importantes no início do prompt.
  • Cache de contexto — Alguns provedores (como o Google com o Gemini) oferecem mecanismos de cache onde documentos estáticos podem ser pré-processados e reutilizados em múltiplas chamadas sem consumir a janela de contexto repetidamente.
  • Engenharia de contexto — Talvez a abordagem mais importante: tratar o espaço da janela de contexto como um recurso escasso e gerenciá-lo deliberadamente. Isso significa ser conciso nos prompts, remover informações redundantes e estruturar o input de forma que as informações mais críticas fiquem em posições de alta atenção.

O Futuro: Janelas Infinitas ou Memória Real?

A tendência de crescimento das janelas de contexto é clara: estamos caminhando de milhões para potencialmente dezenas de milhões de tokens. Mas a pesquisa sugere que simplesmente aumentar a janela não é suficiente. É preciso que os modelos aprendam a usar esse espaço de forma mais eficiente.

Paralelamente, outras abordagens estão surgindo. Sistemas de memória persistente, como os que alguns chatbots já implementam, permitem que informações-chave sobre o usuário sejam armazenadas fora da janela de contexto e injetadas quando necessário. Técnicas como Cache-Augmented Generation (CAG) pré-processam documentos e armazenam os resultados em cache, eliminando a necessidade de re-enviar os mesmos dados a cada chamada.

A janela de contexto, em última análise, é uma limitação técnica que está sendo atacada de múltiplas direções. Mas enquanto não chegamos ao ponto de uma IA com memória verdadeiramente persistente e eficiente, entender seus limites não é apenas um exercício teórico, é uma habilidade prática essencial para qualquer pessoa que trabalhe com LLMs.

A janela de contexto pode ser invisível para o usuário casual, mas para quem constrói soluções com IA, ela é a restrição mais fundamental com a qual se lida todos os dias. Conhecê-la profundamente é o primeiro passo para usar LLMs de forma realmente eficaz. E se quiser compreender isso na prática de forma profissional, recomendamos a Formação AI Data Engineer 4.0.

Equipe DSA

Referências:

LLMs with largest context windows

What is a context window?

LLMs now accept longer inputs, and the best models can use them more effectively

Lost in the Middle: How Language Models Use Long Contexts