Oracle ha implementato silenziosamente una politica che vieta il codice generato dall'intelligenza artificiale dai contributi a OpenJDK, la piattaforma di sviluppo Java open source gestita dall'azienda. La mossa, riportata da The Register, cita problemi di sicurezza, protezione e proprietà intellettuale, ma è in forte tensione con la messaggistica interna di Oracle su come costruisce software. Per le ultime notizie sull'intelligenza artificiale, questa storia evidenzia il crescente divario tra l'ambizione aziendale dell'IA e la cautela ingegneristica.
Secondo la politica, gli sviluppatori possono comunque utilizzare privatamente modelli linguistici di grandi dimensioni per il debug e la revisione del codice. Tuttavia, è loro vietato inviare materiale generato dall'intelligenza artificiale ai repository OpenJDK, richieste pull o altri canali di comunicazione del progetto. La restrizione traccia effettivamente una linea tra l’utilizzo dell’intelligenza artificiale come assistente personale e il consentirle di produrre codice che entra in una codebase condivisa e di lunga durata.
Perché Oracle ha tracciato la linea
Le ragioni dietro il divieto sono pratiche piuttosto che filosofiche. Il codice generato dall’intelligenza artificiale introduce tre categorie di rischio difficili da eliminare a posteriori. Innanzitutto, la sicurezza: i LLM possono produrre codice con sottili vulnerabilità che i revisori umani potrebbero non individuare immediatamente, soprattutto in un linguaggio complesso come Java con la sua profonda libreria standard e il modello di concorrenza. In secondo luogo, la proprietà intellettuale: modelli addestrati su vasti corpora di codice esistente possono riprodurre materiale concesso in licenza alla lettera o in parafrasi strette, potenzialmente contaminando un progetto open source con rivendicazioni sul copyright. Terzo, attribuzione e responsabilità: quando il codice viene generato anziché scritto, diventa più difficile sapere chi è responsabile di bug, obblighi di licenza o problemi di conformità.
OpenJDK non è un progetto open source qualsiasi. È l'implementazione di riferimento di Java, un linguaggio utilizzato su miliardi di dispositivi in tutto il mondo, dai server aziendali alle applicazioni Android. Il codice dedicato a OpenJDK può confluire nei prodotti Oracle commerciali, nelle distribuzioni JDK di terze parti e nell'ecosistema Java globale per decenni. Un singolo pezzo di codice problematico generato dall’intelligenza artificiale potrebbe creare responsabilità che si protraggono per anni.
La contraddizione con la postura interna di Oracle
Ciò che rende notevole questa politica è il suo contrasto con le dichiarazioni pubbliche di Oracle sul proprio utilizzo dell’intelligenza artificiale. Il cofondatore Larry Ellison ha recentemente dichiarato che i modelli di intelligenza artificiale ora scrivono il codice di Oracle, posizionando l'azienda come leader nello sviluppo di software basato sull'intelligenza artificiale. Il co-CEO Mike Sicilia ha attribuito agli strumenti di intelligenza artificiale il merito di consentire ai team di ingegneri più piccoli di fornire risultati più rapidi, suggerendo che l'intelligenza artificiale è centrale nella strategia di produttività di Oracle.
La divisione riflette una tensione più ampia nel settore tecnologico. Le aziende sono ansiose di pubblicizzare il codice generato dall’intelligenza artificiale come prova di innovazione ed efficienza nelle loro operazioni interne, in particolare presso investitori e clienti. Ma quando si tratta di codice da cui dipendono altre persone, dove la responsabilità è esterna e il raggio d’azione di un bug viene misurato in implementazioni globali, l’entusiasmo svanisce. La posizione di Oracle afferma essenzialmente che il codice generato dall'intelligenza artificiale è abbastanza buono per i prodotti proprietari di Oracle ma non abbastanza buono per il progetto open source che controlla.
OpenJDK non è il solo a esitare
Oracle non è il primo grande progetto open source ad affrontare questa questione, ma è uno dei più grandi e importanti. Diverse altre comunità open source hanno adottato o stanno prendendo in considerazione restrizioni simili. Il kernel Linux, Kubernetes e la Apache Software Foundation hanno tutti assistito a dibattiti sulla questione se i contributi generati dall’intelligenza artificiale dovessero essere etichettati, limitati o vietati a titolo definitivo. La preoccupazione principale è universale: le licenze open source e gli accordi di contributo sono stati progettati attorno ad autori umani che comprendono e si assumono la responsabilità del loro codice.
Un modello AI non può firmare un certificato di origine dello sviluppatore, non può essere ritenuto responsabile di una vulnerabilità della sicurezza e non può rispondere a domande sul motivo per cui ha scritto il codice in un modo particolare. Quando un essere umano invia codice generato dall’intelligenza artificiale come opera propria, garantisce implicitamente qualcosa che potrebbe non comprendere appieno, il che mina il modello di fiducia da cui dipende la collaborazione open source.
Il contesto da 70 miliardi di dollari
La cautela di Oracle nei confronti dell'intelligenza artificiale sul fronte del codice si inserisce nel contesto di un'enorme scommessa sull'infrastruttura AI. Quest’anno l’azienda investirà circa 70 miliardi di dollari nell’espansione dei data center per supportare i carichi di lavoro dell’intelligenza artificiale, uno dei più grandi programmi di spesa in conto capitale nel settore tecnologico. Tale spesa ha spinto S&P Global Ratings a declassare il rating di credito di Oracle a BBB-, un livello sopra lo status di spazzatura, citando rendimenti incerti sul massiccio investimento.
Il contrasto è istruttivo. Oracle è disposta a scommettere decine di miliardi sull’infrastruttura AI, scommettendo che la domanda di calcolo AI ne giustificherà il costo. Ma quando si tratta di consentire all’intelligenza artificiale di scrivere il codice che gira in uno degli ecosistemi di programmazione più importanti al mondo, gli ingegneri dell’azienda dicono di no ancora. Il messaggio è che l’infrastruttura è una scommessa sulle materie prime, ma la qualità del codice è una scommessa sulla reputazione, e le due cose comportano profili di rischio molto diversi.
Cosa significa per gli sviluppatori
Per gli sviluppatori Java che contribuiscono a OpenJDK, la politica significa essere più cauti su come utilizzano gli strumenti di intelligenza artificiale. L'utilizzo di ChatGPT o Claude per comprendere un bug o rivedere un modello di progettazione rimane accettabile. Non è possibile inviare codice generato principalmente da uno strumento di intelligenza artificiale, anche con modifiche umane. La linea di demarcazione non è sempre chiara nella pratica, dal momento che molti sviluppatori ora utilizzano l’intelligenza artificiale come partner di progettazione collaborativa e potrebbero non essere in grado di separare nettamente il proprio pensiero dai suggerimenti dei modelli.
L’implicazione più ampia del settore è che la fretta di adottare strumenti di codifica basati sull’intelligenza artificiale potrebbe raggiungere un limite esattamente nel punto in cui la qualità del codice e la responsabilità contano di più. I manutentori open source, i team di sicurezza e i responsabili della conformità sono sempre più diffidenti nei confronti del codice generato dall'intelligenza artificiale, anche se i dirigenti ne celebrano i guadagni di produttività. Il divieto di OpenJDK di Oracle può essere un segnale di dove si trova il vero consenso tra le persone che effettivamente mantengono software critico.
Stai al passo con l'intelligenza artificiale
Il divario tra l’hype sull’intelligenza artificiale e la realtà ingegneristica sta crescendo. Segui l'ultima copertura del settore dell'intelligenza artificiale per ulteriori informazioni su come le aziende stanno affrontando la transizione all'intelligenza artificiale.
Leggi altre notizie sull'AI →