Acompanhe o estado, o progresso e o contexto
Salve pontos de verificação do progresso para que o trabalho possa ser retomado, e mantenha a janela de contexto focada com compactação, anotações e recuperação no momento certo.
- Projetar um estado de progresso explícito e durável
- Retomar depois de uma interrupção sem repetir trabalho
- Gerenciar o contexto de uma execução longa com compactação e anotações
Um ciclo de várias etapas precisa de estado: o objetivo, as restrições, as etapas concluídas, os resultados principais e o que vem em seguida. Mantenha-o explícito, compacto e durável - salvo fora do contexto do modelo -, para que uma queda, um timeout ou um reinício não percam uma hora de trabalho. O modelo pode propor uma atualização do estado; o seu código a valida antes de salvar.
Execuções longas também enfrentam a degradação do contexto (context rot): conforme o contexto enche, os modelos lembram detalhes com menos confiabilidade (Anthropic, “Effective context engineering for AI agents”). Técnicas:
- Compactação - resumir o histórico antigo e descartar saídas de ferramentas desatualizadas, mantendo as decisões e os detalhes recentes.
- Anotações estruturadas - o agente mantém um arquivo de progresso ou uma lista de tarefas fora do contexto e a relê.
- Recuperação no momento certo (just-in-time) - guardar referências (caminhos, IDs, consultas) e carregar o conteúdo só quando necessário.
- Subagentes - delegar trabalho focado a agentes com contextos limpos, que devolvem resumos curtos.
Experimente
Até 15 XPO que fica no contexto?
Uma longa sessão de programação. Mude o tamanho da janela: o que é descartado? Que partes você compactaria num resumo, e quais guardaria como anotações fora do contexto?
Usando 23.800 de 32.000 tokens (4.000 reservados para a resposta) · a conversa completa tem 94.800 tokens.
- Prompt de sistema + documentação das ferramentas6.000
- Exploração inicial (listagens de arquivos)30.000
- Saída dos testes de 40 execuções45.000
- Decisões de projeto até agora3.000
- Anotações de progresso (lista de tarefas)1.500
- As últimas 5 etapas9.000
- Instrução atual300
1import json
2state = {"goal": "migrate 3 tables", "done": ["users"], "next": "orders"}
3saved = json.dumps(state)
4print(json.loads(saved)["next"])orders
Principais conclusões
Mantenha um estado explícito, validado e durável: objetivo, feito, próximo.
Salve pontos de verificação para que um trabalho interrompido seja retomado em vez de recomeçar.
Combata a degradação do contexto com compactação, anotações, recuperação no momento certo e subagentes.
Quiz da aula
6 perguntas · aprovação com 5 acertos · até 50 XP
Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.
Pratique: escreva código em Python
Escreva código Python no editor e execute os testes com exemplos. O Python roda localmente no navegador usando WebAssembly.
Retome a partir de um ponto de verificação
A linha 1 é um ponto de verificação JSON {"done": [...]}. A linha 2 é o plano em JSON (uma lista de nomes de etapas). Imprima resuming: D/T steps already done, depois skip STEP ou run STEP para cada etapa planejada e depois done: T/T.
- Duas de quatro concluídas
O Python é executado em um ambiente isolado no navegador, com limite de 60 segundos. O runtime é carregado pelo CDN do Pyodide; seu código permanece neste navegador.
Compacte um histórico longo
A linha 1 é N (pelo menos 1). Cada linha seguinte é uma mensagem role: content. Mantenha as mensagens system e as últimas N outras mensagens sem mudanças. Troque todas as mais antigas por uma única linha summary: K earlier messages compacted (T tool results dropped), colocada logo depois das mensagens de sistema. Imprima o resultado (omita a linha de resumo se nada tiver sido compactado).
- Manter as duas últimas
O Python é executado em um ambiente isolado no navegador, com limite de 60 segundos. O runtime é carregado pelo CDN do Pyodide; seu código permanece neste navegador.
Dúvidas sobre esta lição
Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.
Carregando publicações…