Experimento de uso de IA para traduzir um aplicativo de GTK2 e OpenGL para GTK4 e Vulkan

Christian Schaller, líder da Fedora Desktop Team e do grupo de desenvolvimento de sistemas desktop na Red Hat, publicou os resultados de uma avaliação sobre a viabilidade do uso de grandes modelos de linguagem no desenvolvimento de aplicações gráficas para Linux. Como experimento, ele utilizou o assistente de IA Claude para traduzir o aplicativo gráfico desatualizado Xtraceroute para tecnologias atuais.

O aplicativo Xtraceroute, que visualiza o caminho dos pacotes de rede em um globo 3D, foi originalmente escrito usando GTK1 e OpenGL, e no início dos anos 2000 estava pronto para ser portado para GTK2, após o que não recebeu atualizações por 20 anos. Com a ajuda do assistente de IA, Christian levou cerca de cinco horas para portar este aplicativo para GTK4 e a API gráfica Vulkan.

Era:

Experimento de uso de IA para traduzir um aplicativo de GTK2 e OpenGL para GTK4 e Vulkan

Tornou-se:

Experimento de uso de IA para traduzir um aplicativo de GTK2 e OpenGL para GTK4 e Vulkan

Em seguida, Christian usou a IA para criar um novo aplicativo baseado na porta preparada, que demonstra a localização dos escritórios da Red Hat no globo e exibe notícias da empresa na parte inferior da janela. Christian também expressou a ideia de usar a IA para automatizar a verificação de complementos do GNOME Shell e a geração de patches considerando as mudanças introduzidas nas novas versões do GNOME Shell.

Experimento de uso de IA para traduzir um aplicativo de GTK2 e OpenGL para GTK4 e Vulkan

Na opinião de Christian, há ceticismo e uma atitude negativa na comunidade em relação ao uso da IA, e através do experimento realizado, ele quis mostrar a outros desenvolvedores de software livre que não devem ignorar as oportunidades que a IA oferece para simplificar o processo de desenvolvimento. Por exemplo, a IA economiza tempo, eliminando a necessidade de ler a documentação da API, acompanhar mudanças na API e escolher as chamadas corretas, além de facilitar bastante a escrita de testes.

No entanto, a IA é vista como uma ferramenta que auxilia no desenvolvimento, mas não isenta a responsabilidade pelo código adicionado e requer verificação e controle de qualidade. Um exemplo é uma tentativa de gerar código para incorporar suporte à exibição de documentos PDF em um aplicativo. A IA sugeriu um código que usava o mecanismo de renderização do navegador WebKit, que funcionava, mas introduzia uma grande nova dependência. Após esclarecer a tarefa, a IA forneceu um código que utilizava a compacta biblioteca libpoppler para renderizar PDFs.

Atualmente, os principais assistentes de IA funcionam na forma de serviços online externos, o que levanta preocupações relacionadas a segurança e privacidade. Para resolver esse problema, a Red Hat está desenvolvendo sua própria ferramenta de geração de código, Granite.code, baseada em um grande modelo de linguagem open source Granite, permitindo executar um modelo de IA no computador do desenvolvedor. Este projeto ainda está atrás em recursos de sistemas como Claude, Gemini e ChatGPT, mas resolve a questão da transmissão de dados para terceiros e elimina a dependência dos fluxos de trabalho de um serviço externo.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster