Formazione sull'intelligenza artificiale

Quanto è efficace Pangram nel codice di intelligenza artificiale?

7 ottobre 2025

Ogni giorno viene scritto sempre più codice con l'aiuto dell'IA. Secondo Sundar Pichai, CEO di Google, alla fine del 2024 oltre il 25% del codice di Google era stato scritto dall'IA. Il CEO di Robinhood afferma che la maggior parte del codice distribuito da Robinhood è ora scritto dall'IA. Il termine "vibe coding" (reso popolare in un tweet da Andrej Karpathy) è entrato nel lessico comune: significa quando ci si abbandona completamente alle "vibrazioni" della programmazione e si lascia che l'IA prenda il comando e scriva il codice al posto nostro.

Startup come Cursor, Lovable e Replit stanno cercando di abbattere le barriere all'accesso alla programmazione: in pratica, avvicinarsi alla programmazione è così facile che chiunque in azienda può scrivere codice, o addirittura realizzare un sito web o un'app completi senza alcuna conoscenza di Python o React.

Il sondaggio StackOverflow 2025 tra gli sviluppatori rivela quanto questa tendenza sia ormai diffusa. L'84% degli sviluppatori utilizza o intende utilizzare strumenti di intelligenza artificiale nel proprio flusso di lavoro, mentre il 51% degli sviluppatori professionisti li utilizza quotidianamente. Ciò rappresenta un cambiamento significativo nel modo in cui viene scritto il codice in tutto il settore.

Tuttavia, l'indagine mette in luce anche alcune difficoltà legate a questa fase di transizione verso lo sviluppo assistito dall'IA. Sebbene il 52% degli sviluppatori affermi che gli strumenti basati sull'IA abbiano influito positivamente sulla propria produttività, il grado di soddisfazione nei confronti di tali strumenti è sceso da oltre il 70% al 60% nel 2025. Dopo un iniziale periodo di entusiasmo e sperimentazione con questi strumenti generati dall'IA, sembra che ora gli sviluppatori abbiano un atteggiamento più neutrale nei loro confronti.

La causa della frustrazione è eloquente: il 66% degli sviluppatori è frustrato da «soluzioni di IA che sono quasi giuste, ma non del tutto», mentre il 45% ritiene che il debug del codice generato dall'IA richieda più tempo del previsto. Solo il 3% degli sviluppatori «si fida ciecamente» dei risultati forniti dagli strumenti di IA, mentre il 46% nutre una forte sfiducia nei confronti della loro accuratezza.

Ciò crea un paradosso interessante: gli sviluppatori si affidano sempre più all'IA per scrivere codice, ma non si fidano completamente di ciò che essa produce. Come sottolinea il sondaggio, il 75% degli sviluppatori chiederebbe comunque aiuto a un essere umano quando «non si fida delle risposte dell'IA», ponendosi come «arbitro finale della qualità e della correttezza». Secondo Simon Willison, lui "non userebbe codice generato dall'IA per progetti che intende rilasciare a meno che non ne abbia rivisto ogni riga. Non solo c'è il rischio di allucinazioni, ma il desiderio del chatbot di essere accondiscendente significa che potrebbe dire che un'idea inutilizzabile funziona. Questo è un problema particolare per chi di noi non sa come modificare il codice. Rischiamo di creare software con problemi intrinseci".

L'importanza di individuare il codice generato dall'intelligenza artificiale

Sebbene il codice generato dall'intelligenza artificiale sia ormai una realtà consolidata, ci sono sicuramente alcuni casi in cui è ancora opportuno verificare che il codice sia stato scritto da un essere umano.

  1. Nel processo di selezione, quando si assume uno sviluppatore di software, è importante verificare che il programmatore sia pienamente in grado di scrivere codice di alta qualità senza l'ausilio dell'intelligenza artificiale. Inoltre, è importante valutare la sua comprensione del codice, affinché sia in grado di eseguire con successo il debug e la diagnosi di codice difettoso generato o assistito dall'intelligenza artificiale nel corso del proprio lavoro.

  2. Nel campo dell'istruzione, è importante insegnare agli studenti a programmare senza l'ausilio dell'intelligenza artificiale. Con un'assistenza AI eccessiva, gli studenti possono perdere di vista i concetti fondamentali e tralasciare l'apprendimento delle competenze necessarie per diventare ingegneri del software di successo. Sebbene sia probabile che questi studenti abbiano accesso all'assistenza AI durante il loro lavoro, come accennato dal sondaggio tra gli sviluppatori di StackOverflow, senza una solida base, gli studenti non saranno in grado di correggere il codice errato generato dall'AI né di capire cosa c'è di sbagliato in primo luogo.

  3. Conformità e sicurezza. Molti quadri normativi in materia di conformità considerano il codice generato dall'IA come un elemento a rischio più elevato a causa di potenziali "allucinazioni" e bug. Vi sono inoltre importanti aspetti da considerare in materia di licenze e diritti d'autore: i modelli di IA potrebbero riprodurre inavvertitamente codice con licenze incompatibili, causando violazioni della conformità. Inoltre, resta ancora da chiarire se il codice generato dall'IA possa essere considerato di proprietà esclusiva o soggetto a diritti d'autore.

  4. Provenienza e tracciabilità del codice. Prima dell'avvento dell'IA, strumenti come `git blame` consentivano di risalire facilmente a chi avesse scritto ogni riga di codice e al motivo delle modifiche apportate. Con l'IA che genera grandi quantità di codice, diventa più difficile per gli sviluppatori ricordare il contesto e il ragionamento alla base di ogni riga. Essere in grado di individuare e tracciare il codice generato dall'IA aiuta nella manutenzione del codice, nel debug e nella gestione delle risorse. I CTO e i responsabili dell'ingegneria possono utilizzare queste informazioni per valutare l'efficacia dei diversi modelli di IA e garantire che i loro team stiano utilizzando i migliori strumenti disponibili.

La capacità di Pangram di individuare il codice generato dall'intelligenza artificiale

Nel complesso, Pangram è in grado di individuare in modo prudenziale la maggior parte del codice generato dall'IA, specialmente quando il codice supera le 40 righe. Pangram adotta un approccio prudenziale perché raramente segnala il codice scritto da esseri umani come generato dall'IA, ma non rileva circa l'8% del codice generato dall'IA, classificandolo erroneamente come scritto da esseri umani.

Se si considerano tutti i frammenti di codice, Pangram non rileva circa il 20% del codice generato dall'IA, poiché la maggior parte dei frammenti brevi generati dall'IA sono modelli standard indistinguibili dal codice scritto dall'uomo oppure semplicemente non presentano caratteristiche sufficienti per essere individuati.

Accuratezza del codice di oltre 40 righe

MetricoPunteggio
Precisione96,2% (22.128/22.997)
Tasso di falsi positivi0,3% (39/13.178)
Tasso di falsi negativi8,5% (830/9.819)

Correttezza di tutti i frammenti di codice

MetricoPunteggio
Precisione89,4% (41.395/46.319)
Tasso di falsi positivi0,4% (99/25.652)
Tasso di falsi negativi23,3% (4.825/20.667)

Set di dati

Per eseguire questa analisi utilizziamo il set di dati di GitHub. Per il codice di IA, utilizziamo una semplice fase di mirroring sintetico in due fasi:

  1. Chiedi all'LLM di fornire un breve riassunto dell'argomento trattato dal codice.
  2. Chiedi al modello LLM di scrivere un esempio di codice in base al riassunto fornito.

Per creare il set di dati utilizziamo GPT-4o, Claude Sonnet, Llama 405b, Mistral 7B, Gemini 1.5 Flash e Gemini 1.5 Pro.

Suggerimenti per individuare il codice generato dall'intelligenza artificiale

Il codice generato dall'IA è più difficile da individuare rispetto ai testi generati dall'IA, poiché presenta un numero significativamente inferiore di gradi di libertà: un programmatore ha infatti meno possibilità di scelta stilistica rispetto a uno scrittore. Notiamo nei falsi negativi che osserviamo che molti file semplicemente non lasciano molto spazio alla creatività o alla flessibilità, come il codice boilerplate generato automaticamente o i file di configurazione. Anche i linguaggi di basso livello, come il C, l'Assembly e il codice del compilatore, sono molto più rigidi nella loro sintassi e quindi ci sono meno segnali in grado di indicare quando il codice è generato dall'IA.

Se state cercando indizi che indichino che il codice sia stato generato dall'intelligenza artificiale, vi consigliamo quanto segue:

  • Commenti: spesso il codice generato dall'IA presenta uno stile molto particolare nella scrittura dei commenti. Abbiamo inoltre notato che il codice generato dall'IA contiene molti più commenti rispetto a quello scritto normalmente da un essere umano.
  • Somiglianza interna: il codice generato dall'IA è spesso simile ad altro codice generato dall'IA, specialmente nel caso di un singolo compito assegnato in un corso di programmazione. MOSS(Measure of Software Similarity), sviluppato a Stanford, è disponibile per uso non commerciale; si tratta di uno strumento efficace nel rilevare la somiglianza tra codici e spesso è in grado di individuare numerosi compiti di programmazione generati dall'IA che presentano un aspetto simile.
  • Pangram è in grado di individuare un'ampia fetta di codice generato dall'IA senza falsi positivi, ma i falsi negativi sono frequenti. Pangram è uno strumento di screening affidabile per individuare inizialmente alcuni casi di plagio di codice generato dall'IA, ma non tutti.

Bradley Emi
Bradley EmiDirettore tecnico, cofondatore

Bradley è un ricercatore nel campo dell'intelligenza artificiale ed è esperto nello sviluppo di prodotti basati sul deep learning per il settore industriale. Recentemente ha guidato il gruppo di ricerca sul deep learning presso Absci, un'azienda che si occupa di scoperta di farmaci tramite intelligenza artificiale generativa, mentre in precedenza ha fatto parte del team principale di visione artificiale di Tesla Autopilot.

Durante gli studi universitari, Bradley è stato autore di numerose pubblicazioni nel campo della ricerca sul deep learning presso lo Stanford Vision Lab. Ha conseguito una laurea in fisica e un master in intelligenza artificiale presso l'Università di Stanford. Oltre all'intelligenza artificiale, nutre un grande interesse per l'istruzione e la filosofia ed è un appassionato giocatore di golf.

Altri articoli di Bradley Emi

Altre letture

Che cos'è il plagio patchwork?
Formazione sull'intelligenza artificiale

Che cos'è il plagio patchwork?

26 marzo 2026
Google penalizzerà i contenuti generati dall'intelligenza artificiale nel 2026?
Formazione sull'intelligenza artificiale

Google penalizzerà i contenuti generati dall'intelligenza artificiale nel 2026?

30 gennaio 2026
Specchio, specchio delle mie brame, chi è il più autentico di tutti?
Formazione sull'intelligenza artificiale

Specchio, specchio delle mie brame, chi è il più autentico di tutti?

25 luglio 2025
Il rilevamento basato sull'intelligenza artificiale è in grado di individuare lo stile di scrittura di Claude?
Formazione sull'intelligenza artificiale

Il rilevamento basato sull'intelligenza artificiale è in grado di individuare lo stile di scrittura di Claude?

6 dicembre 2024
Come riconoscere i testi generati dall'intelligenza artificiale
Formazione sull'intelligenza artificiale

Come riconoscere i testi generati dall'intelligenza artificiale

17 giugno 2024
I 5 migliori strumenti di intelligenza artificiale per le scuole
Formazione sull'intelligenza artificiale

I 5 migliori strumenti di intelligenza artificiale per le scuole

29 gennaio 2026