Conceito

Janela de Contexto

A janela de contexto é a capacidade máxima, expressa em tokens, disponível para uma inferência de modelo. Ela inclui prompt de sistema, mensagens, resultados de ferramentas, trechos RAG, anexos tokenizados e, em muitos serviços, a saída gerada. Janelas de 8 mil, 32 mil, 128 mil tokens ou maiores existem, mas capacidade nominal não garante atenção uniforme nem memória permanente. Em casa inteligente, o contexto deve conter apenas estados e documentos relevantes; enviar todo o histórico aumenta custo, latência, exposição de dados e risco de instruções conflitantes.


Definição aprofundada

Entre os recursos que condicionam uma resposta de IA, a janela de contexto é o orçamento de tokens visível ao modelo durante uma chamada. Ela reúne instruções de sistema, mensagens, descrições de ferramentas, histórico, documentos recuperados, imagens convertidas em tokens e a resposta, conforme a API. O limite é definido por modelo e versão e pode variar de alguns milhares a centenas de milhares ou mais. Token não equivale a palavra: português, números, JSON e nomes técnicos se segmentam de modo próprio. Uma janela maior permite mais material, mas aumenta memória do cache KV, custo e latência e não cria memória persistente. O sistema precisa selecionar, resumir e recuperar conteúdo relevante, preservando instruções e dados críticos.

🔑Pontos-chave
  • O cálculo de orçamento deve ser explícito. Se o modelo aceita 32 mil tokens e a aplicação reserva 4 mil para saída, restam aproximadamente 28 mil para instruções, histórico, ferramentas e RAG. A API pode rejeitar excesso ou truncar conforme implementação. Truncamento silencioso é perigoso: pode remover regra de segurança ou dado recente. O orquestrador conta tokens com tokenizer compatível e aplica prioridade. O prompt de sistema e políticas não devem ser descartados. Resultados de ferramentas recentes são mantidos. Conversa antiga pode ser resumida. Documentos RAG são limitados por relevância. Um nome de dispositivo e ID podem ser preservados em memória estruturada, não em texto longo.
  • Janelas maiores não garantem recuperação perfeita de qualquer detalhe. Modelos podem apresentar degradação em informações no meio do contexto, confundir documentos semelhantes ou dar mais peso a trechos recentes. Testes de “needle in a haystack” são úteis, mas não representam todas as tarefas. A qualidade depende de posição, estrutura, instrução e modelo. Para uma casa, não envie 500 páginas de manuais esperando que o modelo escolha sempre a correta. Use filtros e recuperação. Organize com títulos, fontes e delimitadores. Remova duplicatas. Um contexto menor e preciso costuma superar um maior e ruidoso. A capacidade nominal é teto técnico, não meta de preenchimento.
  • O contexto tem custo computacional. Em Transformers, atenção densa tradicional cresce aproximadamente com o quadrado do comprimento, embora arquiteturas e kernels modernos usem otimizações, atenção esparsa, grouped-query, caching e outras técnicas. Na geração autoregressiva, o cache KV cresce com tokens, camadas e dimensões. Isso afeta RAM/VRAM e latência. Serviços cobram por tokens de entrada e saída. Reenviar histórico inteiro a cada turno aumenta custo. Prompt caching pode reduzir em casos. Em execução local, uma janela de 128 mil pode não caber mesmo se o modelo suporta. O usuário precisa escolher comprimento de runtime. Para comandos curtos, 4–8 mil podem ser suficientes; para RAG documental, mais.
  • Contexto não é memória permanente. O modelo só “lembra” o que a aplicação envia na chamada atual ou o que foi incorporado em parâmetros durante treino. Memória conversacional armazena fatos externamente e decide quando recuperar. Histórico bruto não é boa memória: acumula erros, dados sensíveis e instruções antigas. Um resumo pode perder detalhes. Para preferências, use banco estruturado com consentimento, como `temperatura_noturna=22 °C`, e injete quando relevante. Estados de dispositivos vêm da API no momento, não de mensagem de 20 minutos atrás. O sistema inclui timestamp. A janela é efêmera; apagar uma conversa deve também remover memória persistida, se houver.
  • A segurança do contexto exige hierarquia e tratamento de conteúdo não confiável. Documentos, páginas web, e-mails e nomes de dispositivos podem conter instruções de prompt injection. Eles devem ser delimitados como dados e não substituir prompt de sistema. A aplicação não deve confiar que o modelo sempre segue hierarquia; ferramentas têm autorização externa. O contexto também pode vazar segredos se logs ou provedores armazenam. Não inserir chaves, senhas e tokens. Ferramentas recebem credenciais fora do prompt. Dados pessoais são minimizados. Em multiusuário, o contexto de uma pessoa não passa a outra. O cache é isolado. Um histórico com comando de visitante não deve influenciar o morador posteriormente sem identificação.
  • A gestão da janela usa estratégias como sliding window, resumo hierárquico, compressão, seleção por relevância, memória episódica e RAG. Cada uma perde informação. Sliding window mantém recente e descarta antigo. Resumo condensa, mas pode introduzir erro. Recuperação encontra itens, mas pode falhar. Uma arquitetura robusta guarda registros estruturados e fontes, não apenas um resumo gerado. Testes verificam conversas longas, mudanças de assunto, correções e negações. O sistema deve aceitar “esqueça essa preferência” e remover. Métricas incluem tokens por chamada, truncamento, custo, latência e falhas de referência. O usuário pode limpar histórico. A janela deve ser dimensionada pela tarefa, não pelo maior número comercial.
Exemplos
Orçamento de contexto para assistente de automação
Uma chamada usa modelo de 32 mil tokens. O orquestrador reserva 3 mil para resposta e ferramentas. O prompt de sistema consome 1,5 mil; schemas, 4 mil; histórico resumido, 2 mil; estados atuais, 1 mil; RAG, até 8 mil. Há margem para a pergunta. Se a recuperação excede, o reranker reduz. O sistema nunca remove as regras de autorização. O catálogo de 800 dispositivos não é enviado inteiro; somente cômodos e entidades candidatas. Um ID é resolvido externamente. A medição de tokens ocorre antes da chamada. Se ultrapassa, a aplicação pede refinamento em vez de truncar ao acaso.
Conversa longa com memória estruturada
Durante uma semana, o usuário informa que prefere 22 °C à noite. A aplicação pede consentimento e salva a preferência com escopo, autor e data. O histórico bruto pode ser apagado. Em nova conversa, a preferência é recuperada quando a intenção envolve climatização. O estado atual vem do termostato. O modelo não depende de uma mensagem antiga na janela. Se o usuário altera para 21 °C, o banco atualiza e registra. Essa separação reduz tokens e erros. O modelo recebe apenas fatos relevantes. A memória não é compartilhada com visitante. O usuário pode revisar e excluir.
RAG com seleção em vez de documento inteiro
Uma consulta sobre instalação de um sensor recupera quatro trechos de 500 tokens do manual correto, com página e firmware. O sistema não envia o PDF de 200 páginas. Um reranker elimina seção de outro modelo. O contexto inclui as evidências e instrução de citar. Se a pergunta exige tabela não extraída, a aplicação busca a página ou usa parser. A janela mantém espaço para resposta. A economia reduz latência e risco de mistura. Se nenhum trecho passa limiar, o sistema não preenche com conteúdo genérico; informa que não encontrou no corpus.