Christian Schaller, líder del Fedora Desktop Team y del grupo de desarrollo de sistemas de escritorio en Red Hat, publicó los resultados de una evaluación sobre la idoneidad de utilizar modelos de lenguaje de gran tamaño en el desarrollo de aplicaciones gráficas para Linux. Como experimento, utilizó el asistente de IA Claude para traducir la antigua aplicación gráfica Xtraceroute a tecnologías actuales.
La aplicación Xtraceroute, que visualiza el camino de los paquetes de red en un globo 3D, fue inicialmente escrita utilizando GTK1 y OpenGL, y a principios de 2000 estaba lista para ser portado a GTK2, después de lo cual no fue actualizada durante 20 años. Gracias al uso del asistente de IA, Christian tardó alrededor de cinco horas en portar esta aplicación a GTK4 y la API gráfica Vulkan.
Antes:

Después:

Luego, Christian utilizó la IA para crear, a partir del puerto preparado, una nueva aplicación que muestra la ubicación de las oficinas de Red Hat en el globo y muestra noticias de la empresa en la parte inferior de la ventana. Christian también planteó la idea de utilizar la IA para automatizar la revisión de complementos de GNOME Shell y la generación de parches teniendo en cuenta los cambios en las nuevas versiones de GNOME Shell.

Según Christian, hay un escepticismo y una actitud negativa en la comunidad hacia el uso de la IA, y con este experimento quería mostrar a otros desarrolladores de software de código abierto que no deben ignorar las oportunidades que la IA ofrece para simplificar el proceso de desarrollo. Por ejemplo, la IA ahorra tiempo, evitando la necesidad de desglosar la documentación de la API, rastrear cambios en la API y seleccionar las llamadas adecuadas, además de simplificar significativamente la escritura de pruebas.
Al mismo tiempo, la IA se considera una herramienta que ayuda en el desarrollo, pero no exime de responsabilidad por el código añadido y requiere revisión y control de calidad. Como ejemplo, se muestra un intento de generar código para integrar soporte para mostrar documentos PDF en la aplicación. La IA propuso un código que utilizaba el motor de navegador WebKit para el renderizado, que funcionó, pero añadía una enorme nueva dependencia. Tras aclarar la tarea, la IA proporcionó código que utilizaba una biblioteca compacta libpoppler para el renderizado de PDF.
Actualmente, los principales asistentes de IA funcionan como servicios online externos, lo que genera preocupaciones relacionadas con la seguridad y la privacidad. Para abordar este problema, Red Hat está desarrollando su propia herramienta de generación de código, Granite.code, basada en el modelo de lenguaje grande abierto Granite, que permite ejecutar un modelo de IA en la computadora del desarrollador. Este proyecto aún no iguala las capacidades de sistemas como Claude, Gemini y ChatGPT, pero resuelve el problema de la transmisión de datos a terceros y elimina la dependencia de los flujos de trabajo de un servicio externo.
Fuente: opennet.ru
