ChatGPT é bom para gerar códigos, mas com uma condição
Estudo mostra que chatbot se sai melhor ao tentar resolver problemas que ele provavelmente conhece. Modelo de linguagem pode não entender pedidos inéditos.
Estudo mostra que chatbot se sai melhor ao tentar resolver problemas que ele provavelmente conhece. Modelo de linguagem pode não entender pedidos inéditos.
Um estudo mostrou que o ChatGPT consegue uma boa taxa de sucesso ao tentar resolver problemas de código da plataforma de testes LeetCode. No entanto, o desempenho cai nas questões publicadas depois de 2021, chegando a apenas 0,66% de respostas corretas em alguns casos.
Esta divisão fica clara nos números: nos problemas do LeetCode considerados fáceis, o ChatGPT produziu códigos funcionais em 89% dos casos anteriores a 2021 e 52% dos casos posteriores. Nas questões difíceis, a queda é gritante, passando de 40% pré-2021 para 0,66% pós-2021.
Uma possível explicação para isso está no treinamento do GPT-3.5, modelo de linguagem responsável por fornecer as respostas do ChatGPT: apenas dados coletados até 2021 foram usados nesta fase de desenvolvimento.
Como resultado, é possível que o modelo tenha “aprendido” a dar respostas somente para aqueles problemas. O chatbot tem dificuldades até mesmo para entender os problemas incluídos no LeetCode após 2021, explica Yutian Tang, pesquisador da Universidade de Glasgow (Escócia) e um dos responsáveis pelo estudo.
Os responsáveis pela pesquisa também pediram para o ChatGPT corrigir seus próprios erros, escolhendo 50 cenários aleatoriamente. A falta de capacidade de compreensão foi uma das principais limitações da inteligência artificial.
O chatbot foi bem ao consertar erros de compilação, mas não tão bem quando precisava reparar problemas que ele mesmo tinha causado. Novamente, isso aponta que a IA generativa pode entender errado o que foi pedido e, sem ter como partir do pressuposto correto, não encontrar o problema.
Os pesquisadores também encontraram vulnerabilidades nos códigos gerados pelo ChatGPT, mas não era difícil encontrá-las e corrigi-las.
Mesmo assim, o robô tem seus méritos. Segundo os pesquisadores, o ChatGPT gerava códigos com tempo de execução e sobrecarga de memória menores que a maioria das soluções humanas para os problemas do LeetCode.
Por isso, os cientistas não descartam o uso da IA generativa para programar, desde que os desenvolvedores entendam as limitações da ferramenta. “Ao encontrar problemas de programação mais complexos, os desenvolvedores podem fornecer o máximo de conhecimento relevante e alertar o ChatGPT sobre possíveis vulnerabilidades”, recomenda Tang.
Com informações: IEEE Spectrum
Leia | ChatGPT: o que é, para que serve e como funciona a tecnologia de IA generativa