Christian Schaller, die leiding geeft aan het Fedora Desktop Team en de ontwikkelingsgroep voor desktop-systemen bij Red Hat, heeft de resultaten gepresenteerd van een evaluatie van de geschiktheid van grote taalmodellen voor de ontwikkeling van grafische applicaties voor Linux. Voor zijn experiment maakte hij gebruik van de AI-assistent Claude om de verouderde grafische applicatie Xtraceroute te vertalen naar actuele technologieƫn.
De applicatie Xtraceroute, die het pad van netwerkpakketten visualiseert op een 3D-globe, is oorspronkelijk geschreven met behulp van GTK1 en OpenGL. Aan het begin van de jaren 2000 was het klaar om te worden gepoort naar GTK2, maar het werd 20 jaar lang niet bijgewerkt. Dankzij de inzet van de AI-assistent had Christian ongeveer vijf uur nodig om deze applicatie te poorten naar GTK4 en de grafische API Vulkan.
Was:

Het is geworden:

Daarna gebruikte Christian AI om, op basis van de voorbereide poort, een nieuwe applicatie te maken die de locatie van Red Hat-kantoren op de globe toont en het laatste bedrijfsnieuws onderaan het venster weergeeft. Christian uitte ook het idee om AI te gebruiken voor de automatische controle van uitbreidingen voor GNOME Shell en het genereren van patches rekening houdend met de wijzigingen in nieuwe versies van GNOME Shell.

Volgens Christian heerst er binnen de gemeenschap enige scepsis en een negatieve houding ten opzichte van het gebruik van AI. Met het uitgevoerde experiment wilde hij andere open source-ontwikkelaars laten zien dat ze de mogelijkheden die AI biedt voor het vereenvoudigen van het ontwikkelproces niet moeten negeren. AI spaart bijvoorbeeld tijd door de noodzaak weg te nemen om API-documentatie te doorgronden, wijzigingen in de API bij te houden en de juiste aanroepen te kiezen, en maakt bovendien het schrijven van tests aanzienlijk eenvoudiger.
AI wordt gezien als een hulpmiddel dat helpt bij de ontwikkeling, maar ontneemt niet de verantwoordelijkheid voor de toegevoegde code en vereist kwaliteitscontrole. Een voorbeeld daarvan was de poging om code te genereren voor het integreren van ondersteuning voor het weergeven van PDF-documenten in de applicatie. AI stelde code voor die de browser-engine WebKit gebruikte voor rendering, die werkte maar een enorme nieuwe afhankelijkheid toevoegde. Na verduidelijking van de taak, gaf AI code die de compacte bibliotheek libpoppler gebruikte voor de rendering van PDF's.
Momenteel functioneren de voornaamste AI-assistenten als externe online-diensten, wat zorgen oproept die verband houden met veiligheid en privacy. Om dit probleem op te lossen, ontwikkelt Red Hat zijn eigen codegeneratietool Granite.code, gebaseerd op het open grote taalmodel Granite, waarmee een AI-model op de computer van de ontwikkelaar kan worden uitgevoerd. Dit project loopt momenteel achter op de mogelijkheden van systemen zoals Claude, Gemini en ChatGPT, maar lost de probleem op met de overdracht van gegevens aan derden en elimineert de afhankelijkheid van werkprocessen van een externe service.
Bron: opennet.ru
