Esperimento che utilizza l'intelligenza artificiale per tradurre un'app da GTK2 e OpenGL a GTK4 e Vulkan

Christian Schaller, responsabile del Fedora Desktop Team e del gruppo di sviluppo desktop di Red Hat, ha pubblicato i risultati di una valutazione dell'idoneità dell'utilizzo di grandi modelli linguistici nello sviluppo di applicazioni grafiche per Linux. В качестве эксперимента он воспользовался AI-ассистентом Claude для перевода устаревшего графического приложения Xtraceroute на актуальные технологии.

Xtraceroute, un'applicazione che visualizza il percorso dei pacchetti di rete su un globo 3D, è stata originariamente scritta utilizzando GTK1 e OpenGL, ed è stata convertita in GTK2000 all'inizio degli anni 2, dopodiché non è stata aggiornata per 20 anni. Utilizzando un assistente AI, Christian ha impiegato circa cinque ore per convertire l'applicazione in GTK4 e nell'API grafica Vulkan.

Era:

Esperimento che utilizza l'intelligenza artificiale per tradurre un'app da GTK2 e OpenGL a GTK4 e Vulkan

È diventato:

Esperimento che utilizza l'intelligenza artificiale per tradurre un'app da GTK2 e OpenGL a GTK4 e Vulkan

Christian ha quindi utilizzato l'intelligenza artificiale per creare una nuova app basata sulla porta, che mostrava la posizione degli uffici Red Hat su un mappamondo e le notizie aziendali nella parte inferiore della finestra. Christian ha anche proposto l'idea di utilizzare l'intelligenza artificiale per automatizzare il controllo dei componenti aggiuntivi di GNOME Shell e generare patch basate sulle modifiche apportate alle nuove versioni di GNOME Shell.

Esperimento che utilizza l'intelligenza artificiale per tradurre un'app da GTK2 e OpenGL a GTK4 e Vulkan

Secondo Christian, nella comunità esiste un atteggiamento scettico e negativo nei confronti dell'uso dell'IA, e con l'esperimento voleva dimostrare agli altri sviluppatori FOSS che non dovrebbero ignorare le opportunità che l'IA offre per semplificare il processo di sviluppo. Ad esempio, l'IA fa risparmiare tempo eliminando la necessità di analizzare la documentazione API, tracciare le modifiche alle API e selezionare le chiamate corrette, e semplifica notevolmente anche la scrittura dei test.

L'intelligenza artificiale è considerata uno strumento che aiuta nello sviluppo, ma non solleva dalla responsabilità del codice aggiunto e richiede verifica e controllo qualità. A titolo di esempio, viene mostrato un tentativo di generare codice per incorporare il supporto per la visualizzazione di documenti PDF in un'applicazione. L'intelligenza artificiale ha proposto un codice che utilizza il motore del browser WebKit per il rendering, che ha funzionato, ma ha aggiunto una nuova dipendenza enorme. Dopo aver chiarito il compito, l'intelligenza artificiale ha fornito un codice che utilizza la libreria compatta libpoppler per il rendering dei PDF.

Attualmente, i principali assistenti AI operano sotto forma di servizi online esterni, il che solleva preoccupazioni relative a sicurezza e privacyPer risolvere questo problema, Red Hat sta sviluppando un proprio strumento di generazione di codice, Granite.code, basato sul modello di linguaggio open source Granite, che consente di eseguire un modello di intelligenza artificiale sul computer di uno sviluppatore. Questo progetto è attualmente in ritardo rispetto a sistemi come Claude, Gemini e ChatGPT in termini di funzionalità, ma risolve il problema del trasferimento dei dati a terze parti ed elimina la dipendenza del flusso di lavoro da un servizio esterno.

Fonte: opennet.ru

Acquista hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting web affidabile con protezione DDoS, server VPS e VDS | ProHoster