NÃO DESPERDICE TANTOS TOKENS! PI CODING AGENT vs OPENCODE com o mesmo LLM local.

LLuigi Tech
컴퓨터/소프트웨어게임/e스포츠AI/미래기술

Transcript

00:00:00Olá a todos, esta é uma demonstração do Agent versus Open Code e vamos testar estas
00:00:09duas ferramentas neste exemplo; este é um jogo que eu programei no meu
00:00:20vídeo anterior, este aqui, e sim, neste vídeo eu gostaria de testar como consertar este jogo
00:00:29porque existem alguns bugs; por exemplo, como podem ver, o marcador X ganhou a
00:00:38partida, mas as células não foram destacadas, então tentaremos fazer o mesmo tipo de correção
00:00:51com um LLM local, que é o Qwen 2.5 3B, que na minha opinião é o melhor modelo
00:01:04que você pode rodar no seu computador agora, então vamos tentar primeiro com o Pi, então
00:01:16este é o Pi e eu vou executá-lo dentro deste diretório onde estão as fontes em
00:01:30arquivos separados; eu tenho index.html, game.js e style.js e vamos tentar
00:01:42o mesmo prompt em ambas as ferramentas e compararemos os resultados, e eu também
00:01:55usarei um cronômetro para ver quanto tempo levará para realizar a tarefa. Então este é o prompt. O
00:02:11prompt é: torne os cubos das células mais visíveis e adicione espaço entre eles
00:02:19porque, como podem ver aqui, os cubos estão muito próximos uns dos outros, e então temos
00:02:28a segunda tarefa, que é melhorar a lógica de vitória; os marcadores vencedores devem
00:02:37ficar verdes, e este é outro problema porque você não vê onde o
00:02:46jogador ganhou com os marcadores e, sim, ele começou a seguir meu prompt e este é o
00:02:59Pi, então ele começa a analisar o diretório atual e aqui você pode ver o
00:03:09contexto usado, mas talvez seja mais interessante ver o tempo gasto para
00:03:20consertar o jogo e sim, está funcionando, e então faremos a mesma tarefa com o
00:03:30Open Code e eu vou resetar o repositório para fazer o mesmo tipo de teste. Então agora vou
00:03:41pausar o vídeo por um momento e nos vemos quando ele terminar de consertar o jogo.
00:04:00Ok, pronto. Ele ainda está escrevendo o relatório das alterações e depois testaremos os
00:04:20resultados. Ok, pronto. Levou 7 minutos e 44 segundos com o Qwen 2.5, então vamos
00:04:38testar os resultados. Então este é o relatório, isso é o que aconteceu tecnicamente no
00:04:47código e, como podem ver, ele leu parcialmente o game.js várias vezes em
00:04:58múltiplas partes e isso também é um diff, então, como podem ver, ele teve que editar muito
00:05:09do arquivo e, no total, são 9,4 mil tokens enviados e 2,8 mil recebidos, então este
00:05:23é o resultado do uso do contexto; então vamos testar o resultado, recarregar e, como podem
00:05:35ver, agora os cubos das células estão mais espaçados, mais separados uns dos outros, então
00:05:44vamos testar o jogo; vou começar com a célula central, ok, e ok, vou deixá-lo
00:06:00vencer, ok, perfeito; então agora o computador venceu e, como podem ver, temos os cubos mais
00:06:11separados e também os marcadores vencedores destacados, então funciona, e isso foi com
00:06:20o agente de codificação Pi, então agora faremos o mesmo teste com o Open Code e o mesmo
00:06:30modelo e o mesmo código, então vou resetar o código, ok; então agora as mudanças voltaram
00:06:50para a versão com bugs como esta e agora vamos tentar o mesmo prompt com o
00:07:00Open Code, para as células e para a lógica de vitória, e usarei o mesmo modelo com
00:07:11o Basico, e o Basico é um agente personalizado que eu fiz e iniciei também, e eu
00:07:27fiz o agente Basico porque ele é muito mais simples do que o agente de codificação padrão
00:07:36e o agente Basico é este
00:07:56é apenas um arquivo markdown simples: “você é Basico, um agente minimalista” e sim, eu
00:08:07não especifiquei muita coisa aqui, apenas para usar um web fetch com a ferramenta de busca
00:08:15que não usaremos neste caso de uso; então é um agente muito simples apenas para ver
00:08:24apenas para recriar condições semelhantes para o Open Code e já estamos usando
00:08:3412k de contexto; começou com index, game.js e sim, aqui também
00:08:47tentaremos o resultado final após a pausa no vídeo, ele ainda está rodando sem
00:08:58muito feedback aqui, e eu também queria dizer que tentei o mesmo teste também
00:09:07com o Gemma 2 9B, mas ele não foi capaz de fazer a chamada de ferramenta
00:09:20neste tipo de projeto; o Gemma foi capaz de recriar o jogo da velha 3D, mas depois
00:09:30não conseguiu fazer as chamadas de ferramenta para editar esses arquivos, então fiz este teste apenas
00:09:38com o Qwen 2.5 porque acho que é o melhor para cenários locais como este
00:09:48sim, interessante porque ele está preenchendo as tarefas pendentes, existem duas tarefas, uma é
00:09:58tornar os cubos das células mais visíveis e a outra é corrigir a lógica, então ele terá um
00:10:07pouco de sobrecarga comparado ao agente Pi; mas sim, o agente Pi foi capaz de fazer
00:10:17este tipo de tarefa também sem tarefas intermediárias, mas talvez em situações mais
00:10:26intrincadas pudesse ser útil ter um roteiro, mas sim, é o modelo LLM
00:10:35que faz a maior diferença na minha opinião e não a interface, mas nós vamos
00:10:44ver
00:10:56...
00:11:27ok, quase pronto, ambas as tarefas foram concluídas, mas ele ainda tem que ler e
00:11:40depois escrever no arquivo
00:11:52ok, ele está escrevendo o relatório, espero que termine logo e já estamos em 12
00:12:05minutos, então é mais, mas ok, terminou; pausa, e como podem ver, o
00:12:15contexto usado é de cerca de 23k com o Open Code e provavelmente eles relatam
00:12:26os tokens usados de uma maneira diferente, mas parece que o Pi usou metade dos tokens para
00:12:36corrigir os problemas; então este é o relatório técnico, ele abriu muitas vezes o
00:12:46game.js para fazer as correções; então vamos testar o jogo para ver se a correção realmente
00:12:57funciona; recarregar, e parece semelhante à versão do Pi, célula central, ok
00:13:19vamos tentar ganhar o jogo, ok, eu ganhei e, como podem ver, obtivemos o mesmo resultado
00:13:32que obtivemos com o Pi, mas com mais tokens e mais tempo gasto para chegar
00:13:43às soluções; então, neste caso de uso, o Open Code, que geralmente tem muitos recursos
00:13:55como guardrails e mais ajustes de prompt, teve as mesmas soluções que obtivemos com
00:14:06o Pi, mas com menos tempo e menos tokens; em conclusão, na minha opinião, como eu
00:14:18disse antes, o LLM usado é a parte mais relevante e importante, as
00:14:28ferramentas são úteis e importantes, mas o mais importante é a qualidade dos dados
00:14:36que são colocados no contexto e, nesta situação, com o agente de codificação Pi, nós
00:14:47temos menos sobrecarga e obtivemos um bom resultado também sem um prompt muito grande
00:14:58no LLM; deixe-me saber nos comentários qual é o seu agente de codificação de código aberto preferido
00:15:06e nos vemos em outro vídeo, tchau

Key Takeaway

O agente Pi Coding supera o Open Code em eficiência ao corrigir bugs de código com o modelo Qwen 2.5 3B, consumindo 50% menos tokens e reduzindo o tempo de execução em mais de 4 minutos.

Highlights

  • O modelo Qwen 2.5 3B apresenta o melhor desempenho para execução de tarefas de codificação em ambientes locais.

  • O agente Pi Coding resolveu os bugs de lógica e interface em 7 minutos e 44 segundos utilizando 9,4 mil tokens de entrada.

  • A ferramenta Open Code exigiu 23 mil tokens e cerca de 12 minutos para concluir as mesmas alterações no código.

  • O modelo Gemma 2 9B falha ao tentar realizar chamadas de ferramentas (tool calls) para edição de arquivos em projetos de codificação.

  • O agente Pi Coding alcança resultados idênticos ao Open Code com metade do consumo de tokens e menor tempo de processamento.

  • A qualidade do modelo de linguagem (LLM) define o sucesso da tarefa mais do que a complexidade da interface ou do sistema de prompts.

Timeline

Configuração do teste e seleção do modelo local

  • O modelo Qwen 2.5 3B é a escolha ideal para rodar localmente devido à sua capacidade técnica.
  • O ambiente de teste consiste em um jogo 3D com arquivos index.html, game.js e style.js separados.

A comparação utiliza um jogo programado anteriormente que apresenta falhas na detecção de vitória e na interface visual. O objetivo é validar qual ferramenta de codificação lida melhor com edições de arquivos existentes usando o menor modelo da família Qwen.

Execução e métricas do agente Pi Coding

  • O Pi Coding Agent corrigiu a interface e a lógica de vitória em exatamente 7 minutos e 44 segundos.
  • O processo consumiu 9,4 mil tokens de entrada e gerou 2,8 mil tokens de saída.
  • As alterações incluíram o aumento do espaçamento entre as células e o destaque visual verde para os marcadores vencedores.

O prompt solicita maior visibilidade para os cubos e a correção do bug onde o vencedor não é destacado. O Pi analisa o diretório, lê o arquivo game.js múltiplas vezes e aplica um 'diff' para realizar as edições necessárias de forma precisa.

Desempenho do Open Code com agente simplificado

  • O agente Basico no Open Code utilizou um contexto de 23 mil tokens para a mesma tarefa.
  • O tempo total de execução ultrapassou os 12 minutos.
  • O modelo Gemma 2 9B não possui capacidade para chamadas de ferramentas neste cenário específico.

Um agente minimalista chamado Basico foi criado no Open Code para simular condições de teste similares. O sistema apresenta maior sobrecarga de processamento (overhead) ao listar tarefas pendentes antes de editar os arquivos, o que eleva o consumo de recursos computacionais.

Comparação de resultados e conclusão técnica

  • Ambas as ferramentas entregam o mesmo resultado funcional no jogo final.
  • O Pi Coding Agent demonstra ser mais eficiente por evitar guardrails excessivos e ajustes de prompt complexos.
  • A escolha do LLM é o fator determinante para o sucesso da automação de código.

O teste final confirma que os cubos estão devidamente separados e a lógica de vitória funciona em ambas as versões. A conclusão aponta que interfaces mais simples como a do Pi resultam em economia de tempo e tokens sem perda de qualidade, destacando a superioridade do Qwen 2.5 para uso local.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video