{
  "title": "Engenharia de Contexto: Por Que a Engenharia de Prompts Nunca Foi Suficiente",
  "excerpt": "Em 2026, o verdadeiro trabalho em sistemas de IA modernos não é escrever um prompt inteligente. É decidir o que o modelo vê, quando vê, e como esse contexto é estruturado, persistido e transformado em memória duradoura.",
  "content_html": "<p>Por um tempo, \"engenharia de prompts\" foi o nome que demos à arte de obter bons resultados de grandes modelos de linguagem. Fazia sentido nos primeiros dias. A maioria das pessoas usava interações de uma única vez, e a principal alavanca realmente parecia ser a formulação: perguntar com mais clareza, adicionar um exemplo, restringir o formato, e o modelo se comportava melhor.</p><p>Esse enquadramento agora é pequeno demais para o problema real.</p><p>Quando um sistema de IA falha em produção, o problema geralmente não é que o modelo precisava de mais uma frase inteligente no prompt do sistema. O problema é que o modelo não viu as informações certas, viu informações irrelevantes demais, viu as informações certas no formato errado, ou não conseguiu carregar o estado correto de uma etapa para a próxima. Em outras palavras, o problema não era apenas o prompt. O problema era o <strong>pipeline de contexto inteiro</strong>.</p><p>É por isso que o termo <strong>engenharia de contexto</strong> ganhou força. A expressão entrou no debate mainstream de IA em meados de 2025, quando Tobi Lütke e Andrej Karpathy argumentaram que \"engenharia de prompts\" subestimava o trabalho real envolvido na construção de sistemas LLM confiáveis.[1] Mas a disciplina subjacente é mais antiga que o nome. Se você já construiu RAG, chamadas de ferramentas, sistemas de memória, sumarização ou loops de avaliação, já fez partes da engenharia de contexto. O que mudou é que finalmente temos um nome que descreve o trabalho completo.</p><h2>Um Modelo Mental Simples</h2><p>Se você quiser a imagem mais simples possível, a engenharia de contexto é a camada entre o mundo externo e a memória de trabalho do modelo.</p><pre><code class=\"language-mermaid\">flowchart TD\n    U[\"Requisição do usuário\"] --&gt; CE[\"Motor de contexto\"]\n\n    I[\"Instruções e políticas\"] --&gt; CE\n    R[\"Conhecimento recuperado\"] --&gt; CE\n    M[\"Memória e estado salvo\"] --&gt; CE\n    T[\"Definições e resultados de ferramentas\"] --&gt; CE\n    H[\"Histórico recente da conversa\"] --&gt; CE\n\n    CE --&gt; W[\"Janela de contexto do modelo\"]\n    W --&gt; L[\"LLM raciocina e age\"]\n    L --&gt; O[\"Resposta ou chamada de ferramenta\"]\n    O --&gt; S[\"Nova memória, logs e estado\"]\n    S --&gt; CE</code></pre><p>Esse é o jogo inteiro.</p><p>O modelo é o motor de raciocínio. O motor de contexto decide sobre o que o modelo pode raciocinar.</p><h2>O Nome É Novo. O Trabalho Não É.</h2><p>Uma razão pela qual o termo ressoa é que ele une vários fios que vinham evoluindo separadamente.</p><p>A Geração Aumentada por Recuperação, ou RAG, nos ensinou que os modelos precisam de acesso a conhecimento externo no momento da inferência.[2] O ReAct nos ensinou que raciocínio e ação funcionam melhor quando os modelos podem chamar ferramentas, observar resultados e continuar a partir daí.[3] A pesquisa sobre memória nos ensinou que assistentes de longa duração precisam de estratégias de indexação, recuperação e leitura, em vez de acumulação interminável de transcrições.[4] A avaliação de contexto longo mostrou que simplesmente inserir mais tokens em um modelo não é a mesma coisa que dar a ele uma memória de trabalho melhor.[5][6][7]</p><p>Visto dessa forma, a engenharia de contexto não é uma substituição para essas ideias. É o guarda-chuva acima delas.</p><p>Esse guarda-chuva importa porque os sistemas de IA modernos não são mais prompts isolados. São sistemas dinâmicos que montam instruções, documentos, dados estruturados, saídas de ferramentas e estado anterior em uma janela de contexto temporária para o próximo passo. A LangChain descreveu isso bem ao definir engenharia de contexto como o trabalho de fornecer as informações e ferramentas certas no formato certo para que o LLM possa plausavelmente completar a tarefa.[8]</p><p>A expressão \"plausavelmente completar a tarefa\" está fazendo muito trabalho aí. É o teste certo.</p><p>Se um agente falha, a primeira pergunta não deve ser: \"Como faço o prompt ficar mais inteligente?\"</p><p>A primeira pergunta deve ser: \"Eu realmente dei ao modelo o que ele precisava para ter sucesso?\"</p><h2>Por Que a Engenharia de Prompts Se Tornou Pequena Demais</h2><p>A engenharia de prompts ainda importa. Ela simplesmente se tornou um subconjunto de uma disciplina maior.</p><p>O antigo modelo mental era:</p><table><thead><tr><th>Engenharia de prompts</th><th>Engenharia de contexto</th></tr></thead><tbody><tr><td>Escrever instruções melhores</td><td>Construir o ambiente de informação completo</td></tr><tr><td>Foco em uma única requisição</td><td>Foco em sistemas de múltiplas etapas</td></tr><tr><td>Majoritariamente estático</td><td>Dinâmico e com estado</td></tr><tr><td>Otimizar a formulação</td><td>Otimizar seleção, estrutura, memória e ferramentas</td></tr><tr><td>Melhorar uma única chamada ao modelo</td><td>Melhorar o loop inteiro</td></tr></tbody></table><p>Essa distinção fica óbvia no momento em que você constrói um agente.</p><p>Suponha que você esteja construindo um agente de suporte para software empresarial. O usuário pergunta: \"Por que nossas requisições de API estão expirando?\"</p><p>Se você pensa apenas em termos de prompt, pode melhorar a formulação:</p><ul><li>Pedir ao modelo para ser conciso</li><li>Pedir que cite evidências</li><li>Pedir que pense passo a passo</li></ul><p>Essas são melhorias válidas. Mas não são suficientes.</p><p>As perguntas reais do sistema são mais difíceis:</p><ul><li>O agente tem acesso aos runbooks de incidentes?</li><li>Ele consegue ver os logs mais recentes e as páginas de status?</li><li>Ele sabe a qual nível de cliente esta conta pertence?</li><li>Ele se lembra de turnos anteriores na conversa?</li><li>Ele pode consultar o sistema de tickets?</li><li>Ele consegue distinguir documentos desatualizados dos atuais?</li><li>Se receber contexto demais, o que é cortado?</li></ul><p>Isso é engenharia de contexto.</p><p>O prompt é apenas um item dentro dela.</p><h2>O Que Conta Como Contexto</h2><p>Na prática, o contexto inclui tudo que o modelo vê no momento da inferência, não apenas o prompt visível.[8][9]</p><p>Isso geralmente significa:</p><ul><li>Instruções do sistema</li><li>A requisição atual do usuário</li><li>Documentos recuperados</li><li>Dados estruturados como JSON, tabelas, schemas e registros</li><li>Definições de ferramentas</li><li>Saídas de ferramentas</li><li>Histórico recente da conversa</li><li>Memória de longo prazo ou notas salvas</li><li>Restrições de segurança, política e formatação</li><li>Estado do ambiente, como arquivos, abas, tickets ou diretórios de trabalho</li></ul><p>É por isso que a expressão \"preencher a janela de contexto\" se tornou tão central. A janela de contexto não é apenas um lugar onde o texto vai. É a memória de trabalho temporária do modelo. Tudo que entra nela compete por atenção.</p><p>E competição é a palavra-chave.</p><p>Cada token extra não é apenas informação adicional. É também distração adicional.</p><h2>Por Que Janelas de Contexto Maiores Não Resolveram o Problema</h2><p>Um dos equívocos mais comuns no mercado atual de IA é que janelas de contexto maiores tornaram a engenharia de contexto menos importante.</p><p>A pesquisa aponta na direção oposta.</p><p><em>Lost in the Middle</em> mostrou que os modelos frequentemente usam contextos longos de forma desigual, tendo melhor desempenho quando informações relevantes aparecem perto do início ou do fim, e pior quando informações importantes ficam no meio.[5] O estudo de RAG de contexto longo da Databricks descobriu que, embora adicionar mais documentos recuperados possa ajudar, apenas um pequeno número de modelos de ponta manteve forte desempenho acima de 64k tokens.[6] O relatório <em>Context Rot</em> da Chroma foi ainda mais longe: mesmo tarefas simples se tornam menos confiáveis à medida que o comprimento da entrada cresce, especialmente quando ambiguidade e distrações são introduzidas.[7]</p><p>Essa é a parte que muitas equipes aprendem da maneira difícil.</p><p>Janelas maiores não eliminam a necessidade de escolher. Elas tornam o custo de más escolhas menos óbvio no início e mais doloroso depois.</p><p>Um prompt longo pode falhar de pelo menos quatro maneiras diferentes:</p><ol><li><strong>Envenenamento de contexto</strong>: um fato errado, alucinação ou resultado desatualizado é carregado adiante.</li><li><strong>Distração de contexto</strong>: detalhes relevantes-mas-não-críticos demais sobrecarregam a tarefa principal.</li><li><strong>Confusão de contexto</strong>: diferentes partes do contexto se contradizem.</li><li><strong>Desperdício de contexto</strong>: tokens úteis ficam enterrados sob material redundante ou de baixo valor.</li></ol><p>É por isso que a engenharia de contexto não é sobre maximizar tokens. É sobre maximizar a <strong>densidade de sinal</strong> dentro da janela de contexto.</p><h2>Da Recuperação à Navegação</h2><p>É aqui que uma das melhores ideias recentes entra em cena.</p><p>Jason Liu argumentou que o próximo passo após o RAG clássico baseado em chunks é parar de pensar apenas em \"as passagens mais similares\" e começar a pensar sobre a <strong>forma do espaço de busca</strong>.[10] Seu enquadramento é especialmente útil porque mapeia uma progressão pela qual muitas equipes já estão passando:</p><ol><li>Chunks mínimos</li><li>Chunks com metadados de fonte</li><li>Melhor tratamento para conteúdo multimodal e estruturado</li><li>Facetas e refinamento de consulta</li></ol><p>Os três primeiros são melhorias no que é recuperado.</p><p>O quarto é mais interessante. Ele melhora o que o agente aprende <strong>sobre o próprio corpus</strong>.</p><p>As facetas dão ao modelo algo como visão periférica. Em vez de retornar apenas os poucos chunks mais relevantes, o sistema também pode retornar metadados agregados:</p><ul><li>Quais tipos de documentos dominam o conjunto de resultados</li><li>Quais equipes ou proprietários aparecem com mais frequência</li><li>Quais datas se agrupam juntas</li><li>Quais categorias estão presentes mas sub-representadas nos principais resultados</li></ul><p>Isso importa porque a busca por similaridade é tendenciosa em direção ao que é mais fácil de corresponder, não necessariamente ao que é mais importante inspecionar.[10] Um sistema de recuperação pode super-surfaçar incidentes resolvidos bem documentados e sub-surfaçar incidentes esparsos ainda abertos. Uma busca jurídica pode super-surfaçar contratos assinados e esconder os não assinados que realmente precisam de atenção. As facetas ajudam o agente a ver não apenas \"o que correspondeu\", mas \"o que mais existe por perto\".</p><p>Essa é uma mudança conceitual importante.</p><p>RAG era principalmente sobre recuperação.</p><p>A engenharia de contexto é cada vez mais sobre <strong>navegação</strong>.</p><h2>Os Seis Trabalhos da Engenharia de Contexto</h2><p>A maneira mais fácil de tornar a engenharia de contexto concreta é dividi-la nos trabalhos reais que ela realiza.</p><h3>1. Seleção</h3><p>O primeiro trabalho é decidir o que merece entrar na janela.</p><p>Isso inclui recuperação, classificação, filtragem, escolha de fonte e verificações de atualidade. Parece óbvio, mas ainda é onde uma enorme quantidade de qualidade é ganha ou perdida. Benchmarks como o BRIGHT mostram que a recuperação realista é muito mais difícil do que a correspondência semântica superficial sugere.[11] Se a qualidade da sua recuperação é fraca, nenhuma quantidade de polimento de prompt downstream salvará completamente o resultado.</p><p>Seleção não é apenas \"encontrar chunks relevantes\". É:</p><ul><li>escolher a fonte certa</li><li>escolher a granularidade certa</li><li>escolher a quantidade certa</li><li>escolher a ordenação certa</li></ul><p>Bons sistemas frequentemente recuperam menos do que sistemas ingênuos, mas recuperam de forma mais intencional.</p><h3>2. Estrutura</h3><p>O segundo trabalho é decidir como o contexto escolhido é representado.</p><p>A mesma informação pode ser útil ou inútil dependendo da formatação. A orientação de uso de ferramentas da Anthropic é explícita sobre isso: descrições e interfaces de ferramentas moldam fortemente o comportamento do modelo.[9] A orientação de prompting de contexto longo faz recomendações similares para marcação XML, rotulagem de fontes e seções de documentos claramente separadas.[12]</p><p>Na prática, estrutura significa:</p><ul><li>rotular fontes</li><li>separar instruções de dados</li><li>envolver documentos complexos em marcação consistente</li><li>preservar tabelas como tabelas quando importam</li><li>retornar citações e metadados com evidências</li></ul><p>Um resultado curto e bem rotulado frequentemente supera um blob JSON gigante.</p><h3>3. Compressão</h3><p>O terceiro trabalho é reduzir o contexto sem destruir o que importa.</p><p>É aqui que muitos sistemas de agentes ficam muito melhores ou muito piores.</p><p>Compressão pode significar:</p><ul><li>sumarizar turnos anteriores</li><li>cortar histórico desatualizado</li><li>manter apenas os últimos turnos do usuário literalmente</li><li>extrair fatos duradouros de threads longos</li><li>armazenar em cache prefixos estáveis para reduzir custo e latência</li></ul><p>A documentação de cache de prompts da OpenAI mostra que a ordem do prompt importa economicamente além de cognitivamente: prefixos compartilhados estáticos são mais baratos e rápidos quando colocados no início porque os acertos de cache dependem da reutilização exata do prefixo.[13] O trabalho mais recente da OpenAI na API Responses sobre compactação leva a mesma ideia adiante, tratando o histórico de agentes de longa duração como algo que deve ser comprimido em uma representação mais eficiente em tokens antes que a janela se esgote.[14]</p><p>Compressão não é opcional. A única questão é se você a faz deliberadamente ou deixa a janela de contexto degradar por conta própria.</p><h3>4. Memória</h3><p>O quarto trabalho é decidir o que deve persistir além do turno atual.</p><p>É aqui que muitas equipes cometem o mesmo erro: confundem memória com retenção de transcrição.</p><p>Mas boa memória não é \"guardar tudo para sempre\". O LongMemEval enquadra a memória de longo prazo como um problema de três estágios: indexação, recuperação e leitura.[4] Essa é a maneira certa de pensar sobre isso. Um sistema de memória deve ajudar o modelo a recuperar o fato anterior certo no momento certo, não afogá-lo no passado completo.</p><p>Isso leva a uma distinção útil:</p><ul><li><strong>Memória de trabalho</strong>: o contexto de curto prazo necessário para a tarefa atual</li><li><strong>Memória de referência</strong>: fatos externalizados, resumos, notas ou artefatos que podem ser recarregados posteriormente</li></ul><p>Se tudo fica na memória de trabalho, o modelo se distrai.<br>Se tudo é empurrado para fora, o modelo perde continuidade.</p><p>A engenharia de contexto decide o que pertence a cada camada.</p><h3>5. Design de Ferramentas e Interfaces</h3><p>O quinto trabalho é tornar as ferramentas legíveis para o modelo.</p><p>Essa é uma parte subestimada da disciplina. Uma superfície de ferramenta não é apenas design de API de software. É também design de contexto.</p><p>O modelo precisa entender:</p><ul><li>o que a ferramenta faz</li><li>quando usá-la</li><li>o que cada parâmetro significa</li><li>o que a saída implica</li><li>o que fazer a seguir após ver o resultado</li></ul><p>É por isso que as descrições de ferramentas importam tanto.[9] É também por isso que a ênfase de Jason Liu nos resultados de ferramentas é importante.[10] A saída de uma ferramenta não apenas responde à consulta atual. Ela ensina o agente como pensar sobre a próxima consulta.</p><p>Quando a superfície de ferramentas se torna padronizada por meio de um protocolo como o MCP, isso se torna ainda mais importante. O MCP facilita a conexão de ferramentas, recursos e prompts a aplicações LLM, mas não decide quais informações devem ser surfaçadas, como devem ser filtradas ou quanto delas deve ser injetado na próxima chamada ao modelo.[15] O protocolo é o encanamento. A engenharia de contexto ainda é o ofício.</p><h3>6. Isolamento e Orquestração</h3><p>O sexto trabalho é decidir quando <em>não</em> compartilhar contexto.</p><p>Essa é uma das maiores diferenças entre demos de brinquedo e agentes em produção.</p><p>Às vezes a resposta certa não é um prompt compartilhado maior. São múltiplos prompts menores com escopos isolados.</p><p>O sistema de pesquisa multi-agente da Anthropic é um exemplo forte.[16] Seus subagentes rodam em paralelo com janelas de contexto separadas, o que os ajuda a explorar diferentes ramificações de um problema sem contaminar uns aos outros com cada detalhe intermediário. A LangChain descreve um padrão similar sob \"isolar\": às vezes a melhor maneira de melhorar a confiabilidade do agente é dividir contextos em vez de acumulá-los.[17]</p><p>Isso importa porque contexto compartilhado tem um custo oculto. Ele cria dependência de caminho. Um único ramo ruim pode influenciar o próximo passo, e o próximo, e o próximo.</p><p>Isolamento é uma forma de limitar o raio de explosão.</p><h2>O Que Mudou em 2026</h2><p>Em 2025, a engenharia de contexto era principalmente um nome útil para um problema que as pessoas já sentiam. Em 2026, está começando a se solidificar em uma arquitetura.</p><p>A primeira grande mudança é que os construtores estão movendo o estado duradouro para <strong>fora</strong> da janela de contexto bruta. A edição de contexto e a ferramenta de memória da Anthropic separam explicitamente o que fica ativo na janela de trabalho do que deve persistir entre sessões.[18] O cookbook de janeiro de 2026 da OpenAI sobre personalização faz o mesmo movimento de uma forma diferente: objetos de estado estruturados que persistem entre execuções e são deliberadamente injetados de volta na memória de trabalho no início de cada execução.[19] A API Responses da OpenAI então leva isso um passo adiante com compactação nativa, para que loops de agentes de longa duração não exijam que cada equipe construa um subsistema de sumarização personalizado do zero.[14]</p><p>Os Managed Agents da Anthropic tornam o padrão subjacente incomumente explícito: <strong>a sessão não é a janela de contexto do modelo</strong>.[20] Essa é uma ideia crítica de 2026. A janela é memória de trabalho transitória. O log de sessão é o objeto duradouro. O harness decide como fatiar, compactar e reidratar esse contexto duradouro de volta para a próxima chamada ao modelo.</p><p>A segunda mudança é que a recuperação está se tornando mais <strong>just in time</strong> e mais nativa de interface. Em vez de pré-carregar cada token possivelmente relevante, as equipes estão dando aos agentes superfícies de recuperação que eles já sabem como operar. O ChromaFs da Mintlify é um bom exemplo: em vez de inicializar um sandbox completo para recuperação de documentação, ele apresenta os docs como um sistema de arquivos virtual navegável com <code>ls</code>, <code>cat</code> e <code>grep</code>, reduzindo a criação de sessão p90 de cerca de 46 segundos para cerca de 100 milissegundos.[21] O AgentFS da Turso leva a mesma intuição em direção à execução geral de agentes: uma abstração de sistema de arquivos copy-on-write com armazenamento portátil em arquivo único e auditoria integrada.[22]</p><p>A terceira mudança é que os <strong>grafos de contexto</strong> estão se tornando uma direção de implementação, não apenas uma metáfora. A tese da Foundation Capital tornou o termo visível, mas a afirmação mais forte é arquitetural: quando os agentes estão no caminho de execução, eles podem capturar rastros de decisão como artefatos duradouros, não apenas emitir saídas finais.[26][27] Sistemas de código aberto como o Graphiti e plataformas comerciais como o Zep operacionalizam isso como grafos de contexto temporais com janelas de validade, episódios de proveniência e recuperação híbrida entre semântica, palavras-chave e estrutura de grafo.[23] O TrustGraph adota uma abordagem relacionada, tratando o contexto como um artefato versionado: grafo, embeddings, evidências e políticas agrupados em \"núcleos de contexto\" portáteis que podem ser promovidos ou revertidos como saídas de build.[24][25]</p><p>A quarta mudança é que a engenharia de contexto agora é visível na prática real de software, não apenas em blogs de plataformas. O artigo MSR de 2026 sobre engenharia de contexto em software de código aberto estudou 466 repositórios e descobriu que arquivos de contexto de IA como <code>AGENTS.md</code> estão se espalhando, mas ainda sem estrutura de conteúdo estável.[28] Isso importa porque marca uma mudança da teoria para artefatos operacionais. O contexto não é mais apenas algo inferido em tempo de execução. Está sendo criado, versionado, revisado e minerado como parte do ciclo de vida do software.</p><p>Se você quiser o modelo mental de 2026 em uma imagem, ele se parece com isso:</p><pre><code class=\"language-mermaid\">flowchart LR\n    E[\"Log de sessão / eventos\"] --&gt; A[\"Montador de contexto\"]\n    F[\"Arquivos, docs e ferramentas\"] --&gt; A\n    G[\"Grafo de contexto / memória\"] --&gt; A\n    P[\"Políticas e AGENTS.md\"] --&gt; A\n\n    A --&gt; W[\"Janela de contexto de trabalho\"]\n    W --&gt; X[\"Ação do agente\"]\n\n    X --&gt; E\n    X --&gt; G</code></pre><p>Essa é uma arquitetura muito diferente de \"prompt + busca vetorial\".</p><h2>Onde os Grafos de Contexto Realmente Se Encaixam</h2><p>Uma razão pela qual essa conversa fica confusa é que as pessoas usam <strong>engenharia de contexto</strong> e <strong>grafo de contexto</strong> como se significassem a mesma coisa. Não significam.</p><p>Engenharia de contexto é a disciplina mais ampla. É o trabalho de decidir o que vai para a próxima janela de contexto, o que fica de fora, o que é comprimido e o que é recuperado sob demanda.</p><p>Um grafo de contexto é um possível substrato de memória de longo prazo dentro desse sistema maior.</p><p>Essa distinção importa porque nem todo agente útil precisa de um grafo de contexto. Um assistente de documentação sobre conteúdo majoritariamente estático pode precisar de boa recuperação, design de ferramentas e compactação, mas não de um grafo. Um agente de codificação pode chegar surpreendentemente longe com instruções de repositório, um log de sessão duradouro e uma abstração de sistema de arquivos.[20][21][22][28]</p><p>Os grafos de contexto se tornam convincentes quando o problema tem quatro características:</p><ul><li><strong>A verdade temporal importa.</strong> Você precisa saber não apenas o que é verdade agora, mas o que era verdade no momento da decisão.[23]</li><li><strong>A proveniência importa.</strong> Você precisa rastrear fatos de volta ao episódio, documento ou interação que os produziu.[23][24]</li><li><strong>O precedente importa.</strong> A tarefa depende de como casos similares foram tratados antes, incluindo exceções e aprovações.[26][27]</li><li><strong>O raciocínio entre entidades importa.</strong> A memória útil não é uma nota plana, mas uma rede de pessoas, políticas, incidentes, contas, tickets e resultados.[23][25]</li></ul><p>É por isso que a melhor definição de um grafo de contexto, na minha visão, não é \"um banco de dados de grafo para IA\". É uma <strong>representação duradoura de precedente</strong>.</p><p>É também por isso que os rastros de decisão importam tanto. O enquadramento da Foundation Capital é útil aqui: regras dizem ao agente o que deve acontecer em geral; rastros de decisão dizem o que aconteceu em um caso específico, sob restrições reais, com exceções reais.[26] Uma vez que esses rastros são vinculados entre entidades e tempo, você obtém algo muito mais valioso do que memória genérica. Você obtém julgamento pesquisável.</p><h2>Como Eu Construiria em 2026</h2><p>Se eu estivesse construindo uma stack séria de engenharia de contexto hoje, não começaria pelo grafo. Começaria pelas interfaces e regras de promoção.</p><h3>1. Construa uma camada de sessão duradoura primeiro</h3><p>Cada ação, resultado de ferramenta, observação e artefato intermediário importante deve pousar em um log de sessão append-only ou armazenamento de eventos. Esse é o seu objeto de contexto recuperável.[14][20]</p><p>Não confunda a janela de contexto ativa com a fonte da verdade.</p><p>A janela é para raciocínio.<br>A sessão é para recuperação, replay, depuração e reidratação seletiva.</p><h3>2. Trate o montador de contexto como uma superfície de produto</h3><p>O montador deve gerenciar explicitamente:</p><ul><li>orçamentos de tokens</li><li>prioridade de fonte</li><li>atualidade</li><li>limites de compactação</li><li>corte de histórico</li><li>formatação de citações</li><li>ordenação ciente de cache</li></ul><p>Essa é a camada que decide o que o modelo vê <em>agora</em>. Deve ser observável, testável e barato de mudar.[18][19][14]</p><h3>3. Prefira recuperação just-in-time em vez de carregamento ansioso</h3><p>Dê ao modelo handles leves primeiro: caminhos de arquivo, IDs de objetos, URLs, templates de consulta, IDs de tickets, IDs de incidentes. Então deixe-o puxar detalhes apenas quando necessário.[9][18][21]</p><p>É aqui que sistemas de arquivos, ferramentas MCP, APIs de busca e consultas estruturadas se tornam mais valiosos do que dumps gigantes de top-K.</p><h3>4. Promova apenas estado de alto valor para memória de longo prazo</h3><p>Nem tudo deve se tornar memória.</p><p>Eu promoveria quatro classes de artefatos:</p><ul><li>preferências estáveis de usuário ou conta</li><li>fatos duradouros com proveniência</li><li>resumos intermediários importantes</li><li>rastros de decisão e exceções</li></ul><p>Todo o resto deve ficar no log de sessão até provar que merece promoção.</p><h3>5. Construa o grafo de contexto como uma camada de memória promovida</h3><p>Essa é a parte que muitas equipes invertem.</p><p>O grafo não deve ser sua transcrição bruta em forma de grafo. Deve ser a camada curada que fica acima das sessões e abaixo da montagem em tempo real:</p><ul><li>entidades</li><li>relacionamentos</li><li>validade temporal</li><li>episódios de fonte</li><li>aprovações</li><li>exceções</li><li>resultados</li></ul><p>Se você pular a etapa de promoção, o grafo se torna um depósito de lixo.<br>Se você acertar a promoção, o grafo se torna a memória de como a organização realmente raciocina.[23][26]</p><h3>6. Empacote contexto como código</h3><p>Em 2026, uma das ideias mais promissoras é tratar o contexto como um artefato versionado. Em projetos de software, isso aparece como <code>AGENTS.md</code> e outros arquivos de contexto específicos do repositório.[28] Em sistemas nativos de grafo, aparece como núcleos de contexto: pacotes portáteis de ontologia, estrutura de grafo, embeddings, proveniência e política de recuperação.[24][25]</p><p>Isso importa porque mudanças de contexto precisam da mesma disciplina operacional que mudanças de código:</p><ul><li>revisão</li><li>versionamento</li><li>rollback</li><li>promoção de ambiente</li><li>avaliação</li></ul><p>Uma vez que o contexto se torna um artefato, ele se torna governável.</p><h3>7. Separe observabilidade de inteligência</h3><p>Você precisa de ambas:</p><ul><li><strong>observabilidade da execução do agente</strong></li><li><strong>observabilidade do sistema de contexto</strong></li></ul><p>Essas não são a mesma coisa.</p><p>Quero saber:</p><ul><li>o que o modelo viu</li><li>o que ele não viu</li><li>o que foi compactado</li><li>o que foi recuperado just-in-time</li><li>o que foi promovido para memória</li><li>qual vizinhança do grafo foi percorrida</li><li>qual precedente realmente influenciou a ação</li></ul><p>Se você não consegue responder a essas perguntas, ainda está depurando prompts no escuro.</p><h2>Um Modelo de Maturidade Prático</h2><p>Se você está tentando avaliar onde seu próprio sistema se encontra, este modelo de maturidade é mais útil do que definições abstratas.</p><h3>Nível 0: Apenas Prompt</h3><p>Você tem um prompt de sistema, uma mensagem do usuário e talvez alguns exemplos.</p><p>Isso pode funcionar surpreendentemente bem para tarefas estreitas. Quebra rapidamente quando a tarefa requer conhecimento atualizado, persistência ou ferramentas.</p><h3>Nível 1: Recuperação Aprimorada</h3><p>Você adiciona documentos em tempo de execução.</p><p>É aqui que muitas equipes param. É também onde muitas equipes começam a ver as limitações de chunking ingênuo, classificação e inchaço de contexto.</p><h3>Nível 2: Ciente de Agente</h3><p>Você agora gerencia histórico, resultados de ferramentas, memória e formatação intencionalmente.</p><p>Esse é o primeiro nível onde \"engenharia de contexto\" se torna um termo útil, porque o sistema não é mais apenas prompt mais recuperação. Está montando múltiplas formas de contexto dinamicamente.</p><h3>Nível 3: Adaptativo</h3><p>O sistema muda como constrói o contexto com base na tarefa.</p><p>Pode:</p><ul><li>escolher entre fontes</li><li>comprimir histórico mais antigo</li><li>recarregar memória seletivamente</li><li>rotear trabalho para ferramentas especializadas</li><li>isolar subproblemas em contextos separados</li></ul><p>Neste ponto, a construção de contexto é parte da lógica central da aplicação.</p><h3>Nível 4: Nativo de Contexto</h3><p>O sistema trata o contexto como uma superfície de engenharia de primeira classe.</p><p>Tem:</p><ul><li>orçamentos de contexto explícitos</li><li>avaliações de recuperação e geração</li><li>navegação ciente de metadados e facetas</li><li>políticas de memória</li><li>observabilidade em torno de modos de falha</li><li>montagem de prompt ciente de custo</li></ul><p>É para onde os sistemas de produção mais fortes estão caminhando.</p><h2>Como Boa Engenharia de Contexto Parece na Prática</h2><p>Se eu tivesse que reduzir toda a disciplina a uma lista de verificação, seria assim:</p><ol><li>Comece pela tarefa, não pelo prompt. Defina primeiro como é o sucesso.</li><li>Enumere as fontes de contexto que o modelo pode precisar. Instruções, docs, ferramentas, memória, estado, políticas.</li><li>Separe memória de trabalho de memória de referência. Nem tudo deve viver na janela ativa.</li><li>Recupere com intenção. Mais chunks não é o mesmo que melhor recall.</li><li>Estruture o contexto para que o modelo possa analisá-lo rapidamente. Rótulos, fontes, tabelas e limites importam.</li><li>Projete ferramentas como se fossem parte do prompt, porque são.</li><li>Corte agressivamente. Se você não pediria a um humano para reler, não force o modelo a reler.</li><li>Meça recuperação e geração separadamente. Caso contrário, você diagnosticará o problema errado.</li><li>Use contextos isolados quando as tarefas se ramificam ou podem rodar em paralelo.</li><li>Promova fatos duradouros e rastros de decisão intencionalmente. Nem toda transcrição pertence à memória de longo prazo.</li><li>Empacote contexto crítico como código. Instruções, políticas e artefatos de grafo devem ser versionados.</li><li>Trate bugs de contexto como bugs de software. Devem ser observáveis, reproduzíveis e corrigíveis.</li></ol><p>Nada disso é glamoroso. É exatamente por isso que importa.</p><p>A engenharia de prompts se tornou popular porque soava como um atalho.</p><p>A engenharia de contexto importa porque descreve o trabalho real.</p><h2>A Conclusão Real</h2><p>O centro de gravidade da IA está se movendo.</p><p>A questão de fronteira costumava ser: <strong>Quão inteligente é o modelo?</strong></p><p>A questão aplicada é cada vez mais: <strong>O que o modelo consegue ver antes de ter que agir?</strong></p><p>Esse é um problema de engenharia diferente. É menos sobre prompts únicos e mais sobre design de sistemas. Menos sobre formulação e mais sobre fluxo de informação. Menos sobre qualidade de saída de uma única vez e mais sobre se um agente consegue se manter confiável ao longo do tempo.</p><p>É por isso que a engenharia de contexto vai continuar crescendo como disciplina. Quanto melhores os modelos ficam, mais as falhas restantes parecem falhas de contexto. Estado ausente. Ferramenta errada. Recuperação ruim. Histórico inchado. Formatação ruim. Evidências conflitantes. Memória fraca. Loops ilimitados.</p><p>A ironia é que isso faz os sistemas de IA parecerem mais com software clássico, não menos. Estamos de volta a construir pipelines, interfaces, máquinas de estado, hierarquias de memória, caches e camadas de observabilidade. A novidade é que todas essas peças agora existem a serviço de um motor de raciocínio probabilístico.</p><p>O nome pode ser novo. A direção não é.</p><p>Sistemas de IA confiáveis serão construídos por equipes que tratam o contexto como uma superfície de produto de primeira classe.</p><p>Todos os outros continuarão chamando o modelo de instável.</p><hr><p><strong>Referências:</strong></p><p>[1] <a href=\"https://simonwillison.net/2025/Jun/27/context-engineering/\">Simon Willison. (2025, 27 de junho). <em>Context engineering</em>.</a></p><p>[2] <a href=\"https://arxiv.org/abs/2005.11401\">Lewis, P. et al. (2020). <em>Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks</em>.</a></p><p>[3] <a href=\"https://arxiv.org/abs/2210.03629\">Yao, S. et al. (2023). <em>ReAct: Synergizing Reasoning and Acting in Language Models</em>.</a></p><p>[4] <a href=\"https://arxiv.org/abs/2410.10813\">Wu, D. et al. (2025). <em>LongMemEval: Benchmarking Chat Assistants on Long-Term Interactive Memory</em>.</a></p><p>[5] <a href=\"https://arxiv.org/abs/2307.03172\">Liu, N. F. et al. (2023). <em>Lost in the Middle: How Language Models Use Long Contexts</em>.</a></p><p>[6] <a href=\"https://arxiv.org/abs/2411.03538\">Leng, Q. et al. (2024). <em>Long Context RAG Performance of Large Language Models</em>.</a></p><p>[7] <a href=\"https://www.trychroma.com/research/context-rot\">Hong, K., Troynikov, A., and Huber, J. (2025, 14 de julho). <em>Context Rot: How Increasing Input Tokens Impacts LLM Performance</em>.</a></p><p>[8] <a href=\"https://blog.langchain.com/the-rise-of-context-engineering\">LangChain. (2025, 23 de junho). <em>The rise of \"context engineering\"</em>.</a></p><p>[9] <a href=\"https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/implement-tool-use\">Anthropic. <em>How to implement tool use</em>.</a></p><p>[10] <a href=\"https://jxnl.co/writing/2025/08/27/facets-context-engineering/\">Jason Liu. (2025, 27 de agosto). <em>Beyond Chunks: Why Context Engineering is the Future of RAG</em>.</a></p><p>[11] <a href=\"https://arxiv.org/abs/2407.12883\">Su, H. et al. (2025). <em>BRIGHT: A Realistic and Challenging Benchmark for Reasoning-Intensive Retrieval</em>.</a></p><p>[12] <a href=\"https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/long-context-tips\">Anthropic. <em>Long context prompting tips</em>.</a></p><p>[13] <a href=\"https://platform.openai.com/docs/guides/prompt-caching\">OpenAI. <em>Prompt caching</em>.</a></p><p>[14] <a href=\"https://openai.com/index/equip-responses-api-computer-environment\">OpenAI. (2026, 19 de março). <em>From model to agent: Equipping the Responses API with a computer environment</em>.</a></p><p>[15] <a href=\"https://modelcontextprotocol.io/\">Model Context Protocol. <em>What is the Model Context Protocol (MCP)?</em></a></p><p>[16] <a href=\"https://www.anthropic.com/engineering/built-multi-agent-research-system\">Anthropic. (2025, 13 de junho). <em>How we built our multi-agent research system</em>.</a></p><p>[17] <a href=\"https://blog.langchain.com/context-engineering-for-agents/\">LangChain. (2025, 2 de julho). <em>Context Engineering</em>.</a></p><p>[18] <a href=\"https://claude.com/blog/context-management\">Anthropic. (2025, 29 de setembro). <em>Managing context on the Claude Developer Platform</em>.</a></p><p>[19] <a href=\"https://developers.openai.com/cookbook/examples/agents_sdk/context_personalization\">Okcular, E. (2026, 5 de janeiro). <em>Context Engineering for Personalization - State Management with Long-Term Memory Notes using OpenAI Agents SDK</em>.</a></p><p>[20] <a href=\"https://www.anthropic.com/engineering/managed-agents\">Anthropic. <em>Scaling Managed Agents: Decoupling the brain from the hands</em>.</a></p><p>[21] <a href=\"https://www.mintlify.com/blog/how-we-built-a-virtual-filesystem-for-our-assistant\">Mintlify. (2026, 24 de março). <em>How we built a virtual filesystem for our Assistant</em>.</a></p><p>[22] <a href=\"https://docs.turso.tech/agentfs/introduction\">Turso. <em>AgentFS</em>.</a></p><p>[23] <a href=\"https://github.com/getzep/graphiti\">Zep. <em>Graphiti: Build Real-Time Knowledge Graphs for AI Agents</em>.</a></p><p>[24] <a href=\"https://github.com/trustgraph-ai/trustgraph\">TrustGraph. <em>The context development platform</em>.</a></p><p>[25] <a href=\"https://docs.trustgraph.ai/guides/context-cores/\">TrustGraph. <em>Working with Context Cores</em>.</a></p><p>[26] <a href=\"https://foundationcapital.com/ideas/context-graphs-ais-trillion-dollar-opportunity\">Gupta, J., and Garg, A. (2025, 22 de dezembro). <em>AI's trillion-dollar opportunity: Context graphs</em>.</a></p><p>[27] <a href=\"https://foundationcapital.com/ideas/why-context-graphs-are-the-missing-layer-for-ai\">Garg, A. (2026, 16 de janeiro). <em>Why context graphs are the missing layer for AI</em>.</a></p><p>[28] <a href=\"https://arxiv.org/abs/2510.21413\">Mohsenimofidi, S., Galster, M., Treude, C., and Baltes, S. (2026). <em>Context Engineering for AI Agents in Open-Source Software</em>.</a></p>",
  "source_hash": "sha256:352e42d5b8ff71176c26e2e3f9853217033b811bae4f0beaef2cc91e2401caa9",
  "model": "claude-sonnet-4-6",
  "generated_at": "2026-04-23T20:55:21.848050+00:00"
}