A Microsoft desenvolveu um modelo de aprendizagem profunda capaz de identificar bugs em código. Chamada BugLab, a ferramenta varre as linhas do programa em busca de problemas estruturais ou erros de sintaxe, indicando com maior precisão quais pontos devem ser corrigidos — ou, pelo menos, reavaliados.
- Windows ganha papel de parede que celebra a cor Pantone de 2022
- Cientistas usam IA para criar concreto amigo do meio ambiente
A ideia é excelente, mas não se anime tanto: o BugLab não consegue identificar inconsistências lógicas complexas. Na verdade, o modelo é capaz de apontar erros mais banais, como a menção de uma variável não declarada ou o uso de linguagem natural indevido, ou seja, pode não ser uma IA extremamente robusta para programação, mas certamente é um baita ajudante para longas horas de programação.
Por enquanto, o BugLab ainda não consegue corrigir os erros assim que são encontrados — capacidade esta que seria bem mais complexa. Ainda assim, o simples fato de indicar onde estão os erros já poupa o desenvolvedor de varrer o código visualmente ou depender de relatórios de erros nem sempre intuitivos do Ambiente de desenvolvimento integrado (IDE).
–
Siga no Instagram: acompanhe nossos bastidores, converse com nossa equipe, tire suas dúvidas e saiba em primeira mão as novidades que estão por vir no Canaltech.
–
Treinamento estilo “pega-pega”
No BugLab, dois modelos competem bem no estilo “pega-pega” (do inglês, “Hide and seek”). Enquanto o “seletor de bugs” passa pelo código presumidamente correto e, no meio, insere uma modificação discreta — um caractere a mais, por exemplo —, o outro, o “Bug detector”, é posto para varrer o bloco inteiro para encontrar os defeitos.
Essa estratégia é fortemente inspirada em Generative Adversarial Networks (GAN), uma classe de frameworks de aprendizado de máquina. Contudo, em vez de o “seletor de bug” reescrever um pedaço de código inteiro, ele retrabalha um bloco que está supostamente funcionando.
Primeiros testes em Python
Para avaliar a performance do BugLab, a Microsoft o colocou para trabalhar em correções para os pacotes de software Python Package Index. Os resultados foram promissores: os modelos treinados com o estilo inspirado no GAN são 30% melhores que as alternativas — 26% dos erros são encontrados e corrigidos automaticamente.
Entretanto, avisos “falsos positivos” foram frequentes, então ficou claro que o algoritmo ainda precisa de mais refinamento antes de ser implementado em uma ferramenta pública. Para isso, porém, será necessário um amplo trabalho sobre o BugLab, em que a experiência de programadores humanos é indispensável.
Não existe previsão para a introdução desta ferramenta para o público geral, afinal, trata-se apenas de um estudo sobre o modelo de inteligência artificial. Levaria pelo menos alguns anos para essa tecnologia sair do papel.
Trending no Canaltech:
- Ômicron: 2 doses da Pfizer ou da AstraZeneca induzem menos anticorpos
- Ômicron: 7 sintomas associados à nova variante do coronavírus
- Como colocar senha em conversas no WhatsApp
- Agora dá para ouvir áudio gravado no WhatsApp antes do envio
- Pesquisadores que “previram” Ômicron recomendam cuidado com escape imune
Fonte: Canaltech