Não Acredito que a Anthropic Estragou o Ralph Wiggum

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00O Ralph Wiggum está fazendo um sucesso absurdo. Fizemos um vídeo sobre isso no ano passado e,
00:00:04desde então, é só o que se fala no Twitter. O Matt Pocock fez vários vídeos
00:00:09sobre o assunto, o Ryan Carson escreveu um artigo muito popular e o Razmike aprimorou a ideia
00:00:13com seu script Ralphie Bash. Mas será que todo mundo está fazendo errado? O criador já disse que
00:00:19algumas implementações estão incorretas.
00:00:21Então, qual é o jeito certo? E por que o Ralph é atualmente a melhor forma de criar software
00:00:26com IA? Se inscreva no canal e vamos direto ao ponto.
00:00:30O Ralph loop foi criado pelo Jeff Huntley e apresentado em junho do ano passado.
00:00:35É essencialmente um loop em bash que fornece a um agente de IA exatamente o mesmo prompt repetidas
00:00:40vezes. Mas é genial em vários níveis, pois permite que o agente trabalhe em seu modo mais inteligente,
00:00:46que é justamente quando ele tem o mínimo de contexto possível. Dá uma olhada nisso.
00:00:51Imagine que isto aqui seja a janela de contexto total de um agente. De 0 a cerca de 30% é
00:00:57o que chamamos de "zona inteligente", onde o agente tem o melhor desempenho. De
00:01:0130 a 60%, o desempenho ainda é muito bom. E de 60% em diante — 60, 70, 80, 90 — é
00:01:08quando ele começa a degradar. Vamos chamar de "zona burra". Esses números não são
00:01:12regra e variam conforme o modelo. A zona inteligente de um modelo específico pode ser
00:01:1640 ou 50%, mas geralmente acima de 80% da janela de contexto, a lentidão mental começa a aparecer.
00:01:21Para o Claude Sonnet ou Opus, o limite típico é de 200.000 tokens. Então dá para
00:01:28dizer que os primeiros 60k são a zona inteligente. Os próximos 60k ainda são OK, mas não tão bons quanto os primeiros.
00:01:33E nos últimos 80k, o desempenho parece cair bastante. Essa é a minha experiência pessoal
00:01:38com este modelo. Você pode ter tido vivências diferentes. O motivo disso
00:01:43é que o modelo em si é o que chamamos de autorregressivo, ou seja, ele precisa olhar para os
00:01:47tokens anteriores para prever o próximo. Se houver tokens demais, ele precisa
00:01:52processar muitos deles para encontrar os pontos importantes e relevantes para a tarefa atual.
00:01:56Agora, vamos focar nos primeiros 30%. Antes mesmo de você escrever seu primeiro prompt,
00:02:01algumas coisas já são adicionadas automaticamente à janela de contexto. Primeiro, o prompt de sistema,
00:02:06depois as ferramentas de sistema. Em um modelo Claude típico, isso ocupa 8,3% e 1,4% do contexto.
00:02:12Ou seja, quase 10% desses 30. Se você tiver habilidades (skills), elas também entram. E também
00:02:16se tiver ferramentas MCP customizadas. Por fim, se houver um arquivo agent.md, ele também é incluído.
00:02:21E quanto maior for qualquer uma dessas coisas — como o arquivo MD — mais
00:02:25tokens serão consumidos. Tudo isso acontece antes de você adicionar seu próprio prompt. Por isso,
00:02:30o ideal é manter essa seção o menor possível. Use menos ferramentas, menos
00:02:35habilidades e menos conteúdo no agent.md para que o modelo trabalhe em seu contexto ideal.
00:02:40Para se ter uma ideia de quanto são 60k, o roteiro inteiro de "Star Wars: Uma Nova Esperança"
00:02:44tem cerca de 54.000 tokens no GPT-5. É mais ou menos essa quantidade.
00:02:51Você deve estar se perguntando: "e a compactação? Ela não ajuda nesse processo?". Falaremos
00:02:56disso logo mais. Agora, vamos ver exatamente como o Ralph ajuda nisso.
00:03:00A vantagem do Ralph é focar em um único objetivo por janela de contexto. Assim,
00:03:05podemos dedicar toda a janela de 200k a um único objetivo ou tarefa. Fazemos isso
00:03:10escrevendo um prompt que primeiro inspeciona o arquivo plan.md. Ele contém
00:03:15as tarefas a serem feitas, como: criar o front-end, criar o back-end, configurar o banco de dados,
00:03:19e por aí vai. É um exemplo de alto nível; na prática, com o Ralph, você seria muito mais detalhista
00:03:23e granular, mas fiquemos com esse exemplo por ora. Esse prompt
00:03:28dirá aos agentes para escolherem a tarefa mais importante e realizarem as mudanças. Após as mudanças,
00:03:33eles devem rodar, commitar e fazer o push das alterações, além de realizar testes.
00:03:38Quando terminar e os testes passarem, o agente marca a tarefa como concluída no
00:03:42plan.md e repete o processo. O agente continuará buscando a tarefa mais importante
00:03:46até concluir tudo. Na verdade, retiro o que eu disse, pois você
00:03:52pode manter o Ralph loop rodando infinitamente, mesmo após terminar as tarefas.
00:03:57A vantagem é que ele pode acabar encontrando coisas para consertar ou novas funcionalidades
00:04:02que nem estavam no plan.md. Se ele começar a se perder, a vantagem
00:04:08do Ralph é que você pode parar tudo a qualquer momento, ajustar o prompt no arquivo MD
00:04:12e rodar o processo novamente. O Ralph torna isso simples porque
00:04:16tudo é executado em um único loop "while" de bash. Basicamente, ele lê o arquivo prompt.md,
00:04:22envia para o agente e roda o Claude no modo "YOLO". Claro que o nome da flag
00:04:26não é YOLO, é "dangerously skip permissions", mas abreviei para economizar espaço.
00:04:31O diferencial do Ralph é estar fora do controle do modelo. O modelo
00:04:36não pode decidir quando parar o Ralph; ele apenas continua. Assim, você garante que,
00:04:41quando uma nova tarefa começa ou um novo prompt é disparado, o contexto está
00:04:46limpo, como se você tivesse acabado de abrir o agente. Está fresco. Não há compactação,
00:04:50não há excessos. Cada nova tarefa recebe o máximo de contexto e utiliza
00:04:55o modelo em seu estado mais inteligente e otimizado. Basicamente, a compactação
00:05:01ocorre quando o agente analisa todos os tokens escritos na janela de contexto
00:05:05e seleciona o que parece ser mais importante para o próximo prompt. Ele escolhe
00:05:11o que *acha* importante, mas não sabe o que *realmente* é. Por isso, a compactação
00:05:16pode perder informações críticas e fazer seu projeto falhar. Enfim,
00:05:21agora que vimos a implementação canônica do Ralph loop direto do criador, entendemos
00:05:27por que outras são diferentes. Veja a implementação da Anthropic:
00:05:33ela usa um comando slash para rodar o Ralph dentro do código do Claude, com iterações máximas e promessa de conclusão.
00:05:38O problema desse plugin específico do Ralph Wiggum é que
00:05:43ele compacta as informações ao passar para a próxima tarefa. Se ele termina um objetivo
00:05:48e reinicia o prompt, em vez de resetar o contexto totalmente, ele compacta o que
00:05:54foi feito antes, podendo perder dados vitais. Há também o pequeno detalhe
00:05:59das iterações máximas, pois às vezes é bom simplesmente deixar o Ralph rodar.
00:06:04Ele pode encontrar soluções interessantes que você nem teria imaginado.
00:06:08Ao acompanhar o processo — sendo o humano no controle — você nota padrões, bons ou ruins,
00:06:14em modelos específicos que podem ser ajustados no seu prompt original. Se analisarmos
00:06:19a abordagem do Ryan Carson para o Ralph loop, veremos que ela não é
00:06:24exatamente canônica porque, em cada loop, existe a possibilidade de ajustar ou adicionar
00:06:29informações ao arquivo agents.md. Dependendo do prompt de sistema ou das instruções
00:06:33do usuário, os modelos tendem a ser muito prolixos. E se a cada
00:06:39iteração você adiciona conteúdo ao agents.md, que é inserido no contexto
00:06:44no início de cada prompt, você acaba acumulando tokens na janela de contexto,
00:06:48levando o modelo para aquela zona onde os resultados começam a ficar ruins. Mas o
00:06:53fato de as pessoas estarem criando seus próprios scripts a partir do Ralph original prova
00:06:57o quanto ele é simples e fácil de entender. Embora exista um jeito canônico,
00:07:03acho válido que desenvolvedores e empresas o adaptem para seus casos específicos.
00:07:08Por exemplo, eu adoro que no script Ralphie do Razmike seja possível
00:07:13rodar Ralphs em paralelo e usar a ferramenta de navegador do agente para testes de browser.
00:07:18Também gosto muito da versão do Matt Pocock, na qual
00:07:23ele adiciona tarefas como "issues" do GitHub; o Ralph loop seleciona a mais importante,
00:07:28trabalha nela e a marca como concluída antes de passar para a próxima, o que é genial.
00:07:32A força e a simplicidade do Ralph garantem que ele dure por muito tempo.
00:07:37E ainda veremos muitas melhorias surgindo a partir dele. Gosto muito do
00:07:42caminho que o Jeffrey está seguindo com o projeto Loom and Weaver, visando criar software
00:07:47de forma autônoma e correta. Mas com todos esses Ralphs criando software
00:07:52sozinhos, você precisa de um meio para buscar erros e garantir que sejam corrigidos.
00:07:56É aqui que entra o Better Stack, pois ele não só ingere logs e filtra erros,
00:08:01como também gerencia o rastreamento de erros no front-end.
00:08:06Com este servidor MCP, você pode pedir ao agente para isolar erros específicos do front-end
00:08:11ou back-end em vez de ler o log inteiro, o que, por sua vez, economiza a janela de contexto.
00:08:17Então, dê uma olhada no Better Stack e me conte o que achou nos comentários.

Key Takeaway

O Ralph loop otimiza a criação de software com IA ao manter o contexto do modelo sempre limpo e focado em tarefas granulares, evitando a degradação de desempenho que ocorre em janelas de contexto saturadas.

Highlights

O conceito do "Ralph loop" como uma ferramenta de automação via Bash para agentes de IA.

A importância de manter os agentes na "zona inteligente" (primeiros 30% da janela de contexto).

A crítica à implementação da Anthropic por utilizar compactação de contexto que pode causar perda de dados.

A superioridade de loops externos em relação ao controle interno do modelo para garantir contextos limpos.

A flexibilidade do Ralph para ser adaptado em fluxos de trabalho como Issues do GitHub ou testes paralelos.

O uso de servidores MCP como o Better Stack para economizar tokens ao filtrar logs de erro especificamente.

Timeline

Introdução ao Ralph Loop e Janela de Contexto

O vídeo introduz o Ralph loop, criado por Jeff Huntley, como uma técnica revolucionária para o desenvolvimento de software com IA. O narrador explica a teoria da "zona inteligente", afirmando que o desempenho dos modelos autorregressivos como o Claude degrada significativamente após ocuparem mais de 60% da janela de contexto. É detalhado como elementos como prompts de sistema e ferramentas MCP já consomem cerca de 10% do espaço inicial antes mesmo da interação do usuário. O palestrante utiliza a analogia do roteiro de "Star Wars" para ilustrar o volume de 60 mil tokens. O objetivo central é manter o contexto o menor possível para garantir a máxima inteligência do agente.

Funcionamento Prático e o Arquivo Plan.md

Nesta seção, é explicado como o Ralph foca em objetivos únicos por janela de contexto através de um loop Bash simples. O processo utiliza um arquivo chamado "plan.md" para listar tarefas granulares que o agente deve executar, testar e commitar de forma autônoma. O narrador destaca que o Ralph roda no modo "YOLO" ou "dangerously skip permissions", permitindo execuções contínuas sem intervenção constante. A grande vantagem é que o loop é externo ao modelo, garantindo que cada nova tarefa comece com um contexto totalmente "fresco". Isso previne a falha de projetos que ocorre quando a IA tenta compactar informações e acaba descartando detalhes cruciais.

Críticas às Implementações Não-Canônicas

O autor analisa criticamente a versão da Anthropic do Ralph Wiggum, apontando que o uso de comandos internos e compactação de histórico fere a premissa original de limpeza de contexto. Ele também discute a abordagem de Ryan Carson, alertando que adicionar informações constantes ao arquivo "agents.md" pode levar o modelo prematuramente para a "zona burra" de desempenho. Apesar das críticas, o vídeo reconhece que a simplicidade do Ralph permite que desenvolvedores criem suas próprias variações úteis. O ponto fundamental é que o controle humano sobre o prompt original permite ajustar padrões de comportamento observados no modelo. A flexibilidade do script original é o que garante sua longevidade na comunidade de desenvolvedores.

Variações da Comunidade e Ferramentas Complementares

O segmento final explora adaptações criativas, como o script de Razmike que permite rodar múltiplos Ralphs em paralelo para testes de navegador. É mencionada também a versão de Matt Pocock, que integra o loop diretamente com as Issues do GitHub para uma gestão de tarefas mais organizada. O narrador introduz o projeto Loom and Weaver como o futuro do software autônomo e correto. Para gerenciar os erros que surgem nesse processo automatizado, o vídeo recomenda o Better Stack e seu servidor MCP específico. Essa ferramenta é vital para isolar erros de front-end ou back-end sem inundar a janela de contexto com logs irrelevantes, fechando o ciclo de desenvolvimento eficiente.

Community Posts

View all posts