Os mecanismos de IA generativos usados para programação tornaram-se uma ajuda importante para os programadores e, na verdade, alguns estão usando-os secretamente de seus chefes. Há quem já pense no próximo passo, ou seja: livrar-se dos programadores humanos. Uma experiência recente mostra que este objectivo não parece tão distante.
ChatDev. Este é o nome da empresa imaginária de desenvolvimento de software criada pelo modelo de IA generativa ChatGPT 3.5. O experimento foi realizado por uma equipe de pesquisadores de diversas universidades e teve como objetivo propor como uma série de agentes independentes controlados pela IA poderiam colaborar para acabar resolvendo com sucesso diversos problemas de desenvolvimento de software.
Desenvolvimento em cascata. Os pesquisadores publicaram seus resultados em um estudo chamado “Agentes Comunicativos para Desenvolvimento de Software”. Eles seguiram o conhecido modelo de engenharia de software de desenvolvimento em cascata e dividiram a empresa virtual em quatro estágios cronológicos: design, codificação, teste e documentação.
Bots para diferentes funções. Os problemas foram então resolvidos não por um único bot, mas por um conjunto de bots (ou melhor, chatbots) que se comunicavam com os demais. Os chatbots tinham funções diferentes e cada um era atribuído a uma etapa. O “CEO” e “CTO” do ChatDev, por exemplo, focaram na fase de design.
Interação humana mínima. Em cada etapa os chatbots de IA colaboravam quase sem intervenção humana e decidiam, por exemplo, qual linguagem de programação utilizar para identificar erros no código. A propósito, o código do projeto está disponível no GitHub.
cinco seguidas. A partir daí eles verificaram como o ChatDev se comportava ao realizar projetos de software. Quanto tempo levaria e quanto custaria para concluir esses projetos? Um dos exemplos que levantaram foi dizer ao ChatDev para criar um jogo básico chamado Gomoku, também conhecido como “cinco seguidos”.
Que linguagem usamos? Na fase inicial de design, o CEO pediu ao CTO que sugerisse uma linguagem de programação para “atender às demandas do novo usuário”. O CTO respondeu que a recomendação era Python, após o que o CEO respondeu “Ótimo!” e então explicou que “sua simplicidade e legibilidade o tornam uma escolha popular tanto para desenvolvedores novatos quanto experientes”.
Sete minutos e um euro. Depois de propor 70 tarefas diferentes, o estudo concluiu que cada projeto – todos relativamente simples – levava cerca de sete minutos para ser concluído e custava, em média, menos de um dólar. Isto incluiu as etapas de validação e testes, bem como a identificação de potenciais vulnerabilidades. No total, 86,66% do software gerado pôde ser executado perfeitamente.
O impacto promete ser notável. Estudos como este mostram que o impacto no mundo da programação pode ser importante, mas os pesquisadores deixaram claro que havia limitações como erros e subjetividade nos modelos de linguagem. O papel do programador humano ainda é muito relevante para revisar e validar o código e sua saída, é claro, mas esforços como esse fazem com que a futura automação dos processos de desenvolvimento pareça mais iminente do que nunca.
Em Xataka | Sou programador e é nisso que acredito sobre se a inteligência artificial pode assumir meu emprego
Reescreva o texto para BR e mantenha a HTML tags