← Todos os Posts

A compactação de contexto está se tornando um objetivo de treinamento

Toda sessão longa de agente termina do mesmo jeito. O contexto enche, um resumo dispara e a execução continua sobre uma memória comprimida do que veio antes. No Claude Code o gatilho é o /compact, ou a passagem automática que roda conforme você se aproxima do limite da janela. Os operadores tratam o momento como um atrito a administrar: proteger o estado que importa, torcer para que o resumo o preserve e seguir em frente. Um conjunto de pesquisas recentes diz que esse instinto está prestes a envelhecer. A compactação está deixando de ser um remendo em tempo de inferência ao redor do qual você projeta e virando um objetivo em tempo de treinamento que o modelo otimiza diretamente. Quando um modelo é recompensado por produzir trajetórias que sobrevivem à própria compressão, o gerenciamento de contexto deixa de ser a sua tarefa de babá e passa a ser uma propriedade que você seleciona. {.answer-block}

TL;DR

  • Hoje, a compactação de contexto vive em tempo de inferência. A própria Anthropic a enquadra como uma técnica de engenharia de contexto: resumir uma conversa que se aproxima do limite da janela e reinicializar com o resumo.2 O ferramental de runtime ao redor dela, o /compact, a compactação automática, a edição de contexto, a ferramenta de memória, tudo isso envolve um modelo que não sabe que está sendo compactado.34
  • O CompactionRL treina o modelo para esperar a compactação. Ele otimiza conjuntamente a execução da tarefa e a geração do resumo com aprendizado por reforço, de modo que o agente aprende com trajetórias compactadas em vez de ser interrompido por elas.1
  • Os números são reais. No GLM-4.5-Air, ele alcança 66,8% de Pass@1 no SWE-bench Verified, um ganho de 7,0 pontos, e 24,5% no Terminal-Bench 2.0.1 Os benchmarks são contestados e atuais, não brinquedos.89
  • Não é um único artigo. O Memory-R1 treina operações de memória ADD/UPDATE/DELETE com RL; o MemAct trata a curadoria de contexto como ações que a política toma e as otimiza de ponta a ponta.67 Três grupos independentes recorreram ao mesmo movimento.
  • A lição para o operador vale de qualquer forma. Trate a costura da compactação como uma superfície de design, não como um acidente: decida o que vive na memória durável versus no contexto transitório, proteja a fronteira com um hook PreCompact e comece a ler a competência de compactação treinada de um modelo como uma linha de especificação, não como um rodapé.5

O remendo que todos já administram

O contexto é um recurso finito, e todo operador que roda sessões longas aprendeu a racioná-lo. A própria escrita de engenharia da Anthropic nomeia o modo de falha com precisão: conforme a contagem de tokens sobe, a recuperação se degrada, uma deterioração que eles chamam de context rot.2 O mesmo texto define a contramedida em termos simples. A compactação é a prática de pegar uma conversa que se aproxima do limite da janela de contexto, resumir seu conteúdo e reinicializar uma nova janela de contexto com o resumo.2

Leia essa definição de novo e repare onde o trabalho acontece. Ele acontece ao redor do modelo, em tempo de inferência, por um maquinário do qual o modelo não faz parte. O Claude Code torna esse maquinário concreto. O comando /compact libera contexto resumindo a conversa até ali, e você pode passar instruções de foco para orientar o que o resumo preserva.4 A compactação automática roda a mesma passagem automaticamente conforme o contexto se aproxima do limite; ela vem ativada por padrão pela configuração autoCompactEnabled, e você define a janela efetiva contra a qual ela dispara com CLAUDE_CODE_AUTO_COMPACT_WINDOW ou a desativa com DISABLE_AUTO_COMPACT.4 Do lado da plataforma, a edição de contexto limpa automaticamente chamadas de ferramenta e resultados obsoletos conforme você se aproxima dos limites de tokens, e uma ferramenta de memória baseada em arquivos permite que o modelo armazene informações inteiramente fora da janela.3

Essas são boas ferramentas. A Anthropic relata que a edição de contexto sozinha melhorou uma avaliação de agente de longo horizonte em 29%, e combiná-la com a ferramenta de memória reduziu o consumo de tokens em 84% ao longo de uma execução de cem turnos.3 A questão não é que a abordagem de runtime seja fraca. A questão é o que ela pressupõe. Cada uma dessas técnicas gerencia o contexto como uma propriedade externa de uma sessão, aplicada a um modelo que foi treinado com trajetórias não compactadas e só encontra a compactação na implantação. O modelo produz uma trajetória longa do jeito que sempre fez. Outra coisa decide quando resumir, o que manter e como retomar. O modelo então acorda dentro de um contexto comprimido que ele não escreveu e que nunca foi treinado para esperar.

Essa lacuna, entre como o modelo foi treinado e como ele é executado, é a costura que a nova pesquisa está fechando.

O que o CompactionRL realmente muda

O CompactionRL, da equipe do GLM na Zhipu, parte do mesmo enunciado do problema e inverte a solução. Em vez de acoplar a compactação à inferência, ele torna a compactação parte daquilo que o modelo é treinado para fazer. O método otimiza conjuntamente a execução da tarefa e a geração do resumo, usando normalização de perda em nível de token e estimativa de vantagem generalizada entre trajetórias, para que o agente possa aprender com trajetórias compactadas de longo horizonte em vez de ser desviado por elas.1

Tire o maquinário e a mudança fica fácil de enunciar. Na abordagem de runtime, um resumidor fica fora da política e o modelo tolera o que quer que ele produza. No CompactionRL, o resumo é gerado pela mesma política que faz a tarefa, e ambos são recompensados juntos. O modelo é treinado para escrever resumos sobre os quais consegue agir e para agir bem sobre resumos que ele mesmo escreveu. A compactação deixa de ser uma interrupção e se torna um movimento que o agente praticou.

Os resultados aterrissam em benchmarks atuais. Construído sobre o modelo aberto GLM-4.5-Air, o CompactionRL alcança 66,8% de Pass@1 no SWE-bench Verified, um ganho absoluto de 7,0 pontos, e 24,5% no Terminal-Bench 2.0.1 No menor GLM-4.7-Flash, ele adiciona 5,5 e 6,8 pontos nos dois benchmarks.1 Ambos os benchmarks são reais e difíceis: o SWE-bench Verified é um subconjunto de 500 issues validado por humanos para resolver issues reais do GitHub, e o Terminal-Bench 2.0 são 89 tarefas de linha de comando verificadas por humanos, nas quais os agentes de fronteira ainda pontuam abaixo de dois terços.89 O SWE-bench Verified merece uma ressalva, já que a OpenAI publicamente se afastou dele no início de 2026 por falhas nos testes e contaminação, então trate-o como o benchmark de codificação agêntica mais citado, e não como um irrepreensível.8 Os ganhos sobrevivem a essa ressalva porque são deltas dentro do mesmo modelo: o mesmo modelo base, treinado para compactar, supera a si próprio.

A frase mais reveladora do artigo não é um benchmark. O CompactionRL está implantado no pipeline de aprendizado por reforço para treinar o próximo modelo aberto GLM.1 A compactação deixou de ser algo que você faz a um modelo para se tornar algo com que um modelo é construído.

Não é um caso isolado

Um artigo é um resultado. Três grupos independentes recorrendo ao mesmo movimento é uma direção. Ao lado do CompactionRL, dois outros artigos de 2025 tratam o gerenciamento de contexto como algo a treinar, e não algo a envolver.

O Memory-R1 equipa um agente com um gerenciador de memória que aprende operações estruturadas, ADD, UPDATE, DELETE e NOOP, por meio de aprendizado por reforço, de modo que a decisão sobre o que lembrar e o que descartar se torna uma política aprendida em vez de uma heurística fixa.6 Ele alcança seus resultados com apenas 152 exemplos de treinamento, o que sugere que a capacidade está mais perto de latente do que de cara.6 O MemAct avança ainda mais no enquadramento de que este ensaio trata. Ele formula o gerenciamento de contexto como operações de edição no lugar, exclusão e inserção, e otimiza conjuntamente a retenção de informação e o desempenho na tarefa por meio de aprendizado por reforço de ponta a ponta.7 Memória como ação, nas palavras deles: a curadoria do contexto de trabalho não é uma etapa de pré-processamento, é parte da política.

Lidos em conjunto, os três artigos descrevem uma única migração. O ferramental de runtime, edição de contexto, memória externa, resumo agendado, é a resposta atual para uma janela finita. A abordagem em tempo de treinamento torna os mesmos comportamentos intrínsecos ao modelo, aprendidos contra a recompensa que de fato importa, que é concluir a tarefa. Quando a mesma ideia aparece em operações de memória, em edição de contexto e em compactação de trajetória dentro de um único ano, os artigos individuais importam menos do que o vetor que compartilham.

O que isso significa para como você constrói hoje

Nada disso chega ao seu harness amanhã, e a pergunta honesta do operador é o que fazer enquanto isso chega. A resposta não é esperar. A migração reprecifica o trabalho que você já faz em torno do contexto, e alguns movimentos posicionam você para a versão que está por vir.

Trate a fronteira da compactação como uma superfície de design. Neste momento, a maioria dos operadores descobre o comportamento de compactação por acidente, percebendo depois do fato que um resumo descartou uma decisão do terceiro turno. Torne isso deliberado. Decida de antemão o que pertence à memória durável que sobrevive a qualquer reset, suas regras, as convenções do seu projeto, o contrato da tarefa, e o que é contexto transitório que um resumo tem permissão de comprimir. No Claude Code, a camada durável é o seu CLAUDE.md e os arquivos de regras, que são recarregados após a compactação por meio do evento InstructionsLoaded, e um armazenamento de memória baseado em arquivos para o estado que precisa durar além da janela.35 Todo o resto é presa fácil para o resumidor.

Proteja a costura com um hook, não com esperança. O Claude Code expõe um hook PreCompact que dispara antes da compactação e pode orientá-la ou bloqueá-la, e um hook PostCompact para limpeza depois.5 Se uma classe de estado nunca puder ser eliminada por resumo, um hook PreCompact é onde você a impõe de forma determinística, em vez de confiar que uma instrução de foco será respeitada. A disciplina é a mesma que faz dos hooks a ferramenta certa para qualquer coisa que precise sempre executar: você tira uma garantia do prompt e a coloca no código.

Comece a ler a competência de compactação treinada como uma linha de especificação. Conforme a direção do CompactionRL amadurece, os modelos vão diferir não só no tamanho da janela de contexto, mas em quão bem foram treinados para trabalhar comprimidos. O tamanho da janela foi o número de destaque por dois anos, a comparação de 200K contra 1M que ancora todo model card. Esse número está prestes a dividir o palco com um mais discreto: com que elegância um modelo se degrada quando precisa resumir a si mesmo. Quando você avaliar um modelo para trabalho de longo horizonte, coloque diante dele uma tarefa genuinamente longa, uma que force ao menos uma compactação, e observe o que sobrevive. Esse comportamento está se tornando uma propriedade que vale a pena selecionar.

Estruture o trabalho longo para que as costuras caiam em lugares limpos. Um modelo treinado para compactar ainda compacta melhor sobre uma subtarefa concluída do que sobre uma escrita pela metade. Até que o treinamento se atualize em todos os lugares, você obtém a maior parte do benefício de graça ao moldar o trabalho de modo que checkpoints naturais, um teste que passa, uma mudança commitada, uma subtarefa encerrada, se alinhem com o ponto onde a compactação provavelmente vai disparar. Isso é um bom design de harness de qualquer forma, e é exatamente a estrutura que os modelos treinados estão aprendendo a esperar.

A posição

O tamanho da janela de contexto deixa de ser a restrição que define a arquitetura do harness. Por dois anos a conversa de design partiu de um orçamento de tokens: quanto cabe, o que despejar, quando resumir. Esse enquadramento trata o modelo como um recipiente fixo e o contexto como um recurso que você despeja com cuidado. A direção do CompactionRL dissolve o recipiente. Quando o modelo é treinado para gerenciar a própria compressão, a janela deixa de ser uma parede rígida contra a qual você projeta e se torna um gradiente suave que o modelo aprendeu a descer.

O ferramental de runtime não desaparece. A edição de contexto, as ferramentas de memória e o /compact manual continuam sendo os controles certos para as partes do gerenciamento de contexto que são genuinamente suas: quais fatos são autoritativos, quais arquivos são a fonte da verdade, qual é de fato a tarefa. A migração é mais estreita e mais interessante do que a automação total. Ela move a metade mecânica do gerenciamento de contexto, o encanamento de resumir-e-retomar, para dentro do modelo, e deixa a metade editorial, decidir o que importa, com você. A engenharia de contexto se bifurca no que o modelo cuida e no que você ainda possui, e a fronteira entre os dois é o novo lugar onde vive o bom design de harness.

O sinal já está no artigo do CompactionRL. A compactação conquistou um lugar no pipeline de treinamento de um modelo de fronteira, ao lado dos sinais de recompensa para codificação e raciocínio. Capacidades que chegam ao loop de treinamento normalmente não o deixam. Os operadores que vencem no próximo ano são aqueles que param de tratar a compactação como um acidente a sobreviver e passam a tratá-la como um contrato a projetar.

Principais conclusões

  • A compactação está migrando do tempo de inferência para o tempo de treinamento. O CompactionRL, o Memory-R1 e o MemAct usam, de forma independente, aprendizado por reforço para tornar o gerenciamento de contexto um comportamento aprendido em vez de um invólucro externo.167
  • As ferramentas de runtime são a resposta atual, não a definitiva. O /compact, a compactação automática, a edição de contexto e a ferramenta de memória gerenciam o contexto ao redor de um modelo que não foi treinado para esperar a compressão.34
  • Separe a memória durável do contexto transitório, deliberadamente. Coloque regras, convenções e o contrato da tarefa na camada que sobrevive a um reset; deixe todo o resto ser comprimível.35
  • Imponha a fronteira com um hook PreCompact. Tire qualquer garantia de não-resumir de uma instrução de foco e coloque-a em código determinístico.5
  • Leia a competência de compactação como uma linha de especificação. Teste um modelo candidato em uma tarefa longa o suficiente para forçar uma compactação, e observe o que sobrevive. O tamanho da janela não é mais o único número que importa.

FAQ

O que é compactação de contexto?

Compactação é resumir uma conversa que se aproxima do limite da janela de contexto e reinicializar uma nova janela a partir do resumo, para que um agente de longa duração possa continuar além do ponto em que o histórico bruto transbordaria.2 Ela troca o histórico literal por uma representação comprimida que cabe.

O Claude Code compacta o contexto automaticamente?

Sim. A compactação automática vem ativada por padrão e roda conforme o contexto se aproxima do limite. Você pode orientar a janela efetiva com CLAUDE_CODE_AUTO_COMPACT_WINDOW, desativá-la com DISABLE_AUTO_COMPACT ou acionar uma passagem manualmente com /compact, passando opcionalmente instruções de foco para o resumo.4

O que é o CompactionRL?

Um método de aprendizado por reforço da equipe do GLM que treina agentes de longo horizonte para trabalhar com a compactação otimizando conjuntamente a execução da tarefa e a geração do resumo, de modo que o modelo aprende com trajetórias compactadas. Ele melhora o GLM-4.5-Air em 7,0 pontos no SWE-bench Verified e está implantado no pipeline de treinamento do próximo modelo GLM.1

É possível treinar um modelo para gerenciar o próprio contexto?

É exatamente o que a pesquisa recente demonstra. O Memory-R1 treina operações de memória explícitas com RL, o MemAct trata a edição de contexto como ações da política, e o CompactionRL treina a compactação de trajetória diretamente. Os três tornam o gerenciamento de contexto intrínseco ao modelo em vez de um complemento de runtime.167

Treinar um modelo para compactar torna as janelas de contexto irrelevantes?

Não, mas muda o que o número significa. Uma janela maior ainda ajuda, mas um modelo treinado para compactar bem consegue ir mais longe dentro de qualquer janela do que um que só encontra a compactação na implantação. A competência de compactação treinada se torna um segundo eixo ao lado do tamanho bruto da janela.

O que eu devo fazer sobre a compactação de contexto de agentes agora?

Projete a costura da compactação em vez de descobri-la. Decida o que vive na memória durável versus no contexto transitório, proteja a fronteira com um hook PreCompact, estruture tarefas longas para que a compactação caia sobre subtarefas concluídas, e avalie novos modelos em tarefas longas o suficiente para forçar um resumo.5

Fontes


  1. Yujiang Li, Zhenyu Hou, Yi Jing, Jie Tang, Yuxiao Dong. “CompactionRL: Reinforcement Learning with Context Compaction for Long-Horizon Agents.” arXiv:2607.05378, julho de 2026. https://arxiv.org/abs/2607.05378. Relata Pass@1 de 66,8% no SWE-bench Verified (+7,0) e 24,5% no Terminal-Bench 2.0 para o GLM-4.5-Air, e +5,5 / +6,8 para o GLM-4.7-Flash; afirma que o método está implantado no pipeline de RL para treinar o GLM-5.2. 

  2. Prithvi Rajasekaran, Ethan Dixon, Carly Ryan, Jeremy Hadfield. “Effective context engineering for AI agents.” Anthropic Engineering, 29 de setembro de 2025. https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents. Define a compactação e a degradação por “context rot”, e enquadra a engenharia de contexto como a curadoria do conjunto ótimo de tokens durante a inferência. 

  3. “Managing context on the Claude Developer Platform.” Anthropic, 29 de setembro de 2025. https://claude.com/blog/context-management. A edição de contexto “limpa automaticamente chamadas de ferramenta e resultados obsoletos” perto dos limites de tokens; a ferramenta de memória armazena informações em um sistema baseado em arquivos fora da janela de contexto. Relata uma melhoria de 29% apenas com a edição de contexto, 39% combinada com a memória, e 84% de redução de tokens em uma avaliação de busca na web com 100 turnos. 

  4. Documentação do Claude Code: Commands, Settings e Environment variables. https://code.claude.com/docs/en/commands, https://code.claude.com/docs/en/settings, https://code.claude.com/docs/en/env-vars. /compact [instructions] resume e continua; autoCompactEnabled (padrão true) governa a compactação automática; CLAUDE_CODE_AUTO_COMPACT_WINDOW define a janela de tokens usada para o gatilho; DISABLE_AUTO_COMPACT a desativa. 

  5. Referência de Hooks do Claude Code. https://code.claude.com/docs/en/hooks. PreCompact dispara antes da compactação e suporta uma decisão de bloqueio; PostCompact dispara depois; InstructionsLoaded dispara quando o CLAUDE.md ou arquivos de regras são carregados, inclusive após a compactação (valor do matcher compact). 

  6. Sikuan Yan, Xiufeng Yang, Zuchao Huang, et al. “Memory-R1: Enhancing Large Language Model Agents to Manage and Utilize Memories via Reinforcement Learning.” arXiv:2508.19828, agosto de 2025. https://arxiv.org/abs/2508.19828. Treina um Memory Manager para aprender operações ADD, UPDATE, DELETE e NOOP via RL, usando apenas 152 exemplos de treinamento. 

  7. Yuxiang Zhang, Jiangming Shu, Ye Ma, Xueyuan Lin, Shangxi Wu, Jitao Sang. “Memory as Action: Autonomous Context Curation for Long-Horizon Agentic Tasks.” arXiv:2510.12635, outubro de 2025. https://arxiv.org/abs/2510.12635. Formula o gerenciamento de contexto como operações de edição no lugar otimizadas de ponta a ponta com aprendizado por reforço. 

  8. “Introducing SWE-bench Verified.” OpenAI, 13 de agosto de 2024. https://openai.com/index/introducing-swe-bench-verified/. Um subconjunto de 500 instâncias do SWE-bench validado por humanos para resolver issues reais do GitHub. Observação: a OpenAI se afastou do benchmark como métrica de fronteira em fevereiro de 2026 por falhas nos testes e contaminação (https://openai.com/index/why-we-no-longer-evaluate-swe-bench-verified/), então é melhor lê-lo como o benchmark de codificação agêntica mais citado, e não como um definitivo. 

  9. Terminal-Bench. Stanford e o Laude Institute. https://www.tbench.ai/. O Terminal-Bench 2.0 são 89 tarefas de linha de comando verificadas por humanos, abrangendo engenharia de software, ML, segurança e ciência de dados; os agentes de fronteira pontuam abaixo de aproximadamente dois terços. 

Artigos relacionados

Compactar o contexto é uma decisão, não um limite

Agentes de código compactam o contexto quando um contador dispara, não em um ponto seguro. Compactação decidida pelo mod…

10 min de leitura

Recompense a ferramenta antes da resposta

Agentes de IA falham quando a resposta alega uso de ferramenta que nunca aconteceu: quatro modos de falha e a regra que …

12 min de leitura

Seu agente escreve mais rápido do que você consegue ler

Cinco grupos de pesquisa, o mesmo achado: agentes de IA produzem código mais rápido do que os desenvolvedores conseguem …

16 min de leitura