In un recente evento incentrato sui progressi dell'infrastruttura AI di Meta, l'azienda ha rivelato lo sviluppo di uno strumento di generazione di codice alimentato dall'AI denominato CodeCompose. Questo strumento innovativo presenta analogie con il famoso Copilot di GitHub. Sebbene Meta non abbia ancora reso disponibile al pubblico CodeCompose, l'azienda afferma che i suoi team interni lo utilizzano già per ricevere suggerimenti di programmazione in Python e altri linguaggi quando lavorano in ambienti di sviluppo integrati (IDE), come VS Code.
Michael Bolin, ingegnere software di Meta, ha dichiarato che il modello alla base di CodeCompose è basato sulla ricerca pubblica dell'azienda e adattato ai casi d'uso e alle basi di codice interne. Bolin ha anche detto che CodeCompose può integrarsi in qualsiasi superficie, consentendo a sviluppatori e data scientist di lavorare con il codice in modo più efficiente.
Il modello CodeCompose più grande che Meta ha addestrato possiede 6,7 miliardi di parametri, poco più della metà del modello pieno di parametri di Copilot. I parametri sono parti cruciali del modello, che vengono appresi dai dati storici di addestramento e definiscono il livello di competenza del modello rispetto a un problema, come la generazione di testo.
CodeCompose è stato messo a punto utilizzando il codice di prima parte di Meta e librerie e framework interni scritti in Hack, il linguaggio di programmazione interno di Meta. In questo modo, CodeCompose può integrare questi componenti nei suoi suggerimenti di programmazione. Il set di dati di base per l'addestramento dello strumento è stato meticolosamente ripulito dagli errori e dalle pratiche di codifica inadeguate, come le API deprecate, per ridurre la probabilità che lo strumento consigli un pezzo di codice problematico.
Nell'uso quotidiano, CodeCompose consiglia le annotazioni e le dichiarazioni di importazione mentre gli sviluppatori digitano. Inoltre, lo strumento è in grado di completare linee di codice singole o multiple, anche riempiendo grandi porzioni di codice quando necessario. Bolin ha affermato che CodeCompose sfrutta il codice circostante e i commenti del codice per fornire suggerimenti più accurati.
Secondo Meta, migliaia di dipendenti utilizzano e approvano i suggerimenti di CodeCompose ogni settimana, con un tasso di accettazione superiore al 20%. Tuttavia, l'azienda non ha ancora affrontato le controversie che circondano gli strumenti di IA che generano codice. Piattaforme come Copilot hanno avuto problemi di copyright e sono state accusate di rigurgitare codice autorizzato senza un adeguato credito. Queste preoccupazioni sollevano il dubbio che CodeCompose possa essere soggetto a problemi simili.
Un altro argomento fondamentale è la possibilità che gli strumenti di codifica generativa introducano inavvertitamente codice insicuro. Un recente studio di Stanford ha scoperto che gli ingegneri del software che utilizzano sistemi di codice generati dall'intelligenza artificiale hanno maggiori probabilità di creare applicazioni con vulnerabilità di sicurezza. Sebbene la ricerca non abbia preso in esame CodeCompose, è ragionevole supporre che i rischi siano gli stessi.
Bolin ha sottolineato che gli sviluppatori non sono obbligati a seguire i suggerimenti di CodeCompose e che la sicurezza è stata una delle principali considerazioni nello sviluppo del modello. Ha aggiunto che l'azienda è entusiasta dei progressi dello strumento e che i suoi sviluppatori trarrebbero vantaggio dallo sviluppo interno di una soluzione di questo tipo.
Strumenti come CodeCompose potrebbero essere integrati in piattaforme come AppMaster, una delle principali piattaforme di sviluppo di applicazioni no-code / low-code. AppMaster si concentra sulla fornitura di strumenti potenti per la creazione di applicazioni web, mobili e backend, migliorando il processo di sviluppo in termini di economicità e velocità.