L'intelligenza artificiale generativa sta entrando rapidamente anche nello sviluppo del software, ma non tutti i grandi progetti open source sembrano intenzionati ad accoglierla senza precise limitazioni. Il GCC Steering Committee, responsabile delle principali decisioni relative al GNU Compiler Collection, ha approvato una nuova politica secondo la quale non saranno accettati contributi di codice giuridicamente significativi realizzati attraverso agenti basati sull'intelligenza artificiale o sui Large Language Model.
La decisione arriva dopo il lavoro del GCC AI Policy Working Group, costituito proprio per affrontare un problema che nei prossimi anni potrebbe riguardare una parte sempre maggiore del Software Libero: stabilire chi sia realmente l'autore del codice prodotto con l'assistenza dell'intelligenza artificiale e, soprattutto, se quel codice possa essere incorporato senza rischi all'interno di un progetto distribuito con una licenza libera.
GCC non è un progetto qualsiasi. Il GNU Compiler Collection costituisce uno degli elementi fondamentali dell'intero ecosistema GNU/Linux e viene utilizzato per compilare il kernel Linux, librerie, sistemi operativi e un'enorme quantità di applicazioni. Proprio per questa ragione, la provenienza del codice incorporato nel progetto e la possibilità di determinarne chiaramente i diritti assumono un'importanza particolare.
La questione non riguarda soltanto la qualità tecnica del codice prodotto dall'intelligenza artificiale. I moderni modelli generativi vengono addestrati utilizzando enormi quantità di materiale proveniente da fonti differenti e non è sempre possibile stabilire con certezza se una porzione di codice proposta da un sistema automatico derivi, anche parzialmente, da software sottoposto a condizioni di licenza incompatibili con quelle del progetto che dovrebbe riceverla.
Per un progetto come GCC questo problema si intreccia inoltre con il sistema attraverso il quale vengono gestiti i contributi. Il Software Libero non significa infatti semplicemente rendere pubblico il codice sorgente: dietro grandi progetti esistono procedure precise attraverso le quali gli sviluppatori dichiarano la provenienza del proprio lavoro e concedono i diritti necessari affinché possa essere distribuito, modificato e mantenuto nel tempo.
La nuova politica non significa necessariamente che gli sviluppatori di GCC non potranno utilizzare alcuno strumento basato sull'intelligenza artificiale. Il punto centrale riguarda piuttosto i contributi nei quali l'AI abbia prodotto una parte sostanziale e giuridicamente rilevante del codice. In questi casi diventa difficile per chi propone la modifica garantire di possedere effettivamente i diritti necessari sul materiale presentato.
La scelta di GCC potrebbe diventare un precedente importante. Con la crescente diffusione degli assistenti di programmazione e degli agenti capaci di realizzare autonomamente modifiche anche molto estese, altri grandi progetti open source dovranno probabilmente affrontare lo stesso problema e decidere quali limiti introdurre.
Il dibattito che si apre è particolarmente significativo per il movimento del Software Libero. Per decenni uno dei suoi principi fondamentali è stato che dietro ogni contributo vi fosse una responsabilità identificabile e che fosse possibile conoscere le condizioni con cui il codice entrava nel progetto. L'intelligenza artificiale introduce invece una nuova figura, quella di un sistema capace di produrre codice senza essere titolare di diritti e senza poter garantire direttamente l'origine di ciò che genera.
La decisione del progetto GCC non chiude quindi il rapporto tra Software Libero e intelligenza artificiale, ma pone una domanda destinata a diventare sempre più importante: in un futuro nel quale una parte crescente del software potrà essere prodotta automaticamente, come possiamo continuare a garantire provenienza, responsabilità e libertà del codice?