Aplicação de engenharia de contexto avançada em agentes inteligentes codificados Com base em sua experiência pessoal e exemplos do mundo real, o fundador da Human Layer, @dexhorthy, enfatiza a transformação do protótipo para o código de nível de produção, sendo o ponto central a otimização da "janela de contexto" do LLM — ou seja, a qualidade e a estrutura das informações de entrada do modelo. Contexto: As Origens da Engenharia de Contexto e a Evolução da Programação de IA Dex rastreou as origens do termo "engenharia de contexto": em abril de 2022, ele publicou um manifesto intitulado "Agentes de 12 Fatores", explorando 12 princípios para aplicações confiáveis de LLM (Learning Learning Management). Em junho de 2024, o termo ganhou maior popularidade. Ele citou duas palestras principais da conferência AI Engineers deste ano: "O Novo Código", de Sean Grove, que enfatizou que as especificações, e não o código em si, são fundamentais para o futuro do software; e um estudo da Universidade Stanford que analisou dados de 100.000 desenvolvedores, constatando que, embora a codificação por IA possa acelerar a prototipagem, ela frequentemente leva a retrabalho ou até mesmo a efeitos contrários em ambientes corporativos de grande escala ou com código legado — o código gerado por IA pode aumentar as taxas de retrabalho em até 50% para tarefas complexas. A visão de Dex é que os modelos atuais não podem substituir completamente o código escrito por humanos para sistemas complexos (como aplicações Go que envolvem condições de corrida e ordem de desligamento). Portanto, o objetivo da engenharia de contexto é "extrair" o máximo valor dos modelos existentes: projetando cuidadosamente as entradas para melhorar a precisão e a eficiência das saídas. Desafio central: Por que os métodos tradicionais de codificação de IA falham? • Instruções ingênuas: Simplesmente manter um diálogo repetido com o agente (como "Não, tente novamente") pode facilmente esgotar a janela de contexto, fazendo com que o modelo fique desorientado ou gere "ruído" (informação irrelevante). • Gargalo de contexto: O LLM é essencialmente uma "função pura" — a qualidade da saída depende exclusivamente da entrada. O processo iterativo do agente de codificação (buscar arquivos, entender o processo, editar código) preenche rapidamente a janela, causando sobrecarga de informações, omissões ou erros. • Problema da equipe: Pull requests (PRs) de 20.000 linhas de código gerados por IA são difíceis de revisar, o que leva à desconexão da equipe. Dex compartilhou sua experiência pessoal: ao trabalhar com os melhores programadores de IA, ele foi forçado a abandonar a revisão linha por linha e, em vez disso, confiar nas especificações para "deixar fluir". Objetivo: Adequado para bases de código grandes e complexas, resolvendo problemas do mundo real, livre de código "lixo", com saída de nível de produção e maximizando a utilização de tokens. Estratégia principal: da compressão à refatoração do fluxo de trabalho. Dex propôs o conceito de "engenharia de contexto para tudo", otimizando quatro dimensões: correção (ausência de informações incorretas), completude (ausência de informações faltantes), tamanho (controle de ruído) e trajetória (manutenção da direção). Ele evitou ferramentas ineficientes (como o simples comando /slashcompact) e, em vez disso, adotou os seguintes métodos avançados: 1. Compactação intencional: Em vez de uma simples reinicialização, um "arquivo de progresso" é criado, registrando resumos importantes (como caminhos de arquivos, intenções de alteração e planos de teste). Isso resulta em um código muito mais conciso do que o original, facilitando a herança do contexto por proxies subsequentes. • Pensamento formulaico: Tokens efetivos ≈ Tokens totais (~170 mil) - Tokens ruidosos. Dex cita o artigo de Jeff Huntley "Ralph Wigum como Engenheiro de Software" para provar que percorrer os mesmos prompts repetidamente (em vez de iterar aleatoriamente) pode melhorar significativamente os resultados. 2. Controle contextual de subagentes: • Utilizado para isolar tarefas, como "encontrar fluxos de informação", sem contaminar o contexto principal. Os subagentes retornam respostas estruturadas (por exemplo, nome do arquivo + número da linha), evitando a distorção de informações que lembra os "jogos de telefone sem fio". Desafio: Sistemas não determinísticos são propensos à confusão, portanto, é necessário um direcionamento preciso sobre como o agente pai deve instruir o agente filho. 3. Compressão intencional frequente e fluxo de trabalho em três etapas: • Fase de Pesquisa: Utilize modelos de prompts de código aberto para gerar uma visão geral do sistema (arquivos, fluxo de dados, localização do problema). O resultado é conciso, facilitando a localização rápida do agente. • Fase de Planejamento: O agente deve listar todas as alterações (documentos, trechos de código, etapas de verificação) para formar um "plano de implementação". O plano geralmente é mais curto que o código e mais fácil de ser revisado por humanos. • Fase de implementação: Com base na codificação do plano, mantenha a utilização do contexto abaixo de 40%. Atualize o plano e reinicie uma nova janela após a conclusão de cada etapa. • Ciclo geral: Pesquisa → Planejamento → Implementação → Revisão humana → Iteração. Dex enfatiza: Revisar 200 linhas de planejamento é muito melhor do que revisar 2000 linhas de código, pois permite detectar erros precocemente e manter o "alinhamento mental" da equipe — o valor fundamental da revisão de código. Esses modelos de prompts são de código aberto e podem ser encontrados no GitHub. Dex admite: Não é "mágica"; eles exigem leitura atenta e ajustes. Estudo de Caso Prático: Da Correção de Bugs em Rust à Integração com WASM · Correções no Código Rust: Dex colaborou com Vibhav (criador do BAML), outro fundador da YC, para corrigir bugs em um código Rust de 300.000 linhas de uma só vez. O processo foi documentado em um podcast de 75 minutos, e o PR foi discretamente aceito pelo CTO — provando que era aplicável a sistemas legados e não exigia retrabalho. • Resolução de problemas complexos: Em colaboração com o CEO da Boundary, geramos/escrevemos 35.000 linhas de código em 7 horas, adicionando suporte a WASM, o equivalente a 1-2 semanas de trabalho de engenharia. Isso validou a viabilidade da estratégia em um ambiente de produção. Implicações e Perspectivas Futuras A principal descoberta de Dex: erros de código têm origem na camada anterior — pesquisas ruins podem levar a milhares de linhas de código defeituoso, enquanto um planejamento ruim as amplifica centenas de vezes. Portanto, priorize investir em especificações e compreensão do sistema, em vez de se perder em detalhes de código. Sua equipe (3 pessoas) consumiu uma grande quantidade de créditos de API em um mês, mas economizou uma quantidade significativa de tempo de engenharia: os estagiários enviaram 2 PRs no primeiro dia e 10 no oitavo dia; o próprio Dex não abriu nenhum arquivo que não fosse Markdown por dois meses. Perspectivas: A codificação de agentes tende a se tornar uma commodity, mas o desafio reside na transformação das equipes (adotando especificações em primeiro lugar e revisões frequentes). A Human Layer está auxiliando nessa transformação, desde startups de 6 pessoas da Y Combinator até grandes empresas com milhares de funcionários. Endereço do vídeo:
Carregando detalhes do thread
Buscando os tweets originais no X para montar uma leitura limpa.
Isso normalmente leva apenas alguns segundos.
