Lucas Montano e o Mistério do ChatGPT 'Burrificante': Um Estudo de Caso Inovador
Há algum tempo, um vídeo de Lucas Montano chamou a minha atenção. Montano, um influenciador digital e entusiasta da tecnologia, compartilhou sua experiência de tentar desenvolver um aplicativo do zero usando o Chat GPT-4 chamado "Crosswords for Developers". Em suas experiências iniciais, Montano encontrou um ChatGPT-4 impressionantemente eficiente e útil. No entanto, à medida que o tempo passava e ele tentava continuar o desenvolvimento do aplicativo o modelo se tornava cada vez menos útil.
O que inicialmente parecia uma ferramenta incrivelmente promissora para o desenvolvimento de software parecia estar perdendo seu brilho. Montano não estava sozinho em sua frustração. Um estudo de Stanford e da UC Berkeley também relatou uma tendência semelhante - o desempenho do Chat GPT-3 e GPT-4 estava diminuindo ao longo do tempo. Eles observaram uma degradação no desempenho dos modelos em uma série de tarefas, desde resolução de problemas matemáticos até a geração de código.
Essas descobertas foram intrigantes para mim, pois contradiziam minhas experiências iniciais com o modelo, nas quais o Chat GPT-4 era excepcionalmente eficiente ao iniciar um novo projeto. No entanto, eu também notei uma queda no desempenho quando tentava continuar o desenvolvimento de projetos em novas sessões de chats.
Foi essa observação que me levou a propor uma hipótese: o desempenho do Chat GPT-4 não estava realmente degradando, mas sim sofrendo devido à falta de um contexto integral do projeto ao iniciar ou fragmentar o desenvolvimento em novas sessoes de chats. Acreditando nisso, decidi criar uma solução.
Assim nasceu a extensão para o VS Code, "Copy to ChatGPT". Essa extensão permite exportar todos os arquivos de um projeto em um formato que o Chat GPT pudesse entender, fornecendo ao modelo o contexto completo do projeto.
Para testar minha teoria, iniciei um projeto do zero com o GPT-4, que se mostrou excepcionalmente capaz ao construir a estrutura base de um sistema que serviria para evidenciar minha hipótese. Depois de finalizar essa fundação, efetuei o commit "init project"
, um passo crucial para preservar o estado atual do esqueleto da aplicação que o GPT-4 havia acabado de criar.
Assim, comecei uma nova sessão de chat, onde forneço apenas os arquivos do meu projeto que desejava que novas funcionalidades fossem implementadas. Continuei com esse processo até perceber que o GPT-4 já não conseguia adicionar novas funções ou, ao menos, não conseguia fazer isso com um código limpo e aceitável. Nesse momento, havíamos chegado ao chamado estado de "estagnação" ou estado "burro" do GPT-4.
Decidi então pôr à prova minha hipótese. Retornei ao commit inicial que tínhamos preparado e usei a extensão para exportar todos os arquivos do projeto que havia desenvolvido. Iniciei uma nova sessão de chat, executei o prompt fornecido pela extensão que prepara o ChatGPT para receber os arquivos e, assim, enviei todos os arquivos do projeto para ele.
Os resultados foram reveladores. O Chat GPT-4, agora equipado com todo o contexto do projeto, retomou seu desempenho inicial, eficiente e valioso. Quando pedi que implementasse todas as funcionalidades que havia solicitado anteriormente, ele as executou com excelência e, surpreendentemente, apresentou códigos que utilizavam padrões de projeto apropriados e organizados.
Não só consegui implementar todas as funcionalidades que havia solicitado anteriormente com certo grau de "brilhantismo", como também fui capaz de continuar avançando na adição de novas funcionalidades. A minha hipótese estava correta - a falta de um contexto contínuo entre diferentes sessões de chat estava realmente impactando o desempenho do ChatGPT-4.
Notei também que, ao iniciar uma nova sessão de chat e importar todos os arquivos do projeto para a sessão de chat, pedindo ao modelo para implementar uma nova funcionalidade, o resultado era muito mais satisfatório do que continuar solicitando novas funcionalidades na mesma sessão de chat indefinidamente.
Acredito que essa descoberta tem implicações importantes para o modo como usamos o ChatGPT-4 e modelos similares de IA. Ao fornecer o contexto completo de nossos projetos, podemos maximizar o potencial dessas ferramentas. Minha extensão "Copy to ChatGPT" é um passo nessa direção e espero que ajude outros desenvolvedores a obter o máximo de suas interações com o Chat GPT.
Nossa jornada na fronteira da inteligência artificial está apenas começando. À medida que continuamos a explorar e nos adaptar a essa nova tecnologia, estou confiante de que encontraremos novas maneiras de otimizar e melhorar nossa interação com esses modelos avançados.
Me questiono se o Montano em seu experimento seguiu utilizando sempre a mesma sessão de chat inicial para desenvolver o aplicativo ou se foi fragmentando o seu desenvolvimento em sessões de chats distintas. Penso que talvez o mesmo o tenha fragmentado o seu desenvolvimento em diversos chats degradando sua experiencia com o GPT-4 de exepicional para medíocre.
Se a OpenAI estaria intencionalmente limitando a performance do modelo ChatGPT como parte de uma estratégia para escalar seu negócio, é um ponto difícil de se confirmar. No entanto, a empresa se pronunciou recentemente, refutando quaisquer medidas para reduzir o desempenho de seu modelo e se comprometeu a investigar o problema.
Isso foi ecoado por Peter Welinder, da OpenAI, em seu Twitter: "Não, nós não reduzimos a capacidade do GPT-4. Muito pelo contrário: fazemos cada nova versão ser mais inteligente que a anterior. A hipótese atual é que, ao utilizar mais intensivamente o modelo, começam-se a notar questões que antes não eram percebidas."
Existe uma suspeita de que, após a euforia inicial gerada pelo lançamento do modelo utilizando essa tecnologia, os usuários já conseguiram identificar problemas e perceber que, apesar de o modelo ser surpreendentemente avançado, não é completamente à prova de falhas.
Download da Extensão
"Copy to ChatGPT - VS Code Marketplace" - Link
Fontes
"How Is ChatGPT’s Behavior Changing over Time?" - Link
"Video mencionado do Lucas Montano": Link
"Twitter de Peter Welinder" - Link