← Ultimi articoli
💬 NLP

LangChoiceBench: Measuring and Explaining Programming-Language Choice in LLMs

Questo articolo introduce LangChoiceBench, un benchmark che rivela come i grandi modelli linguistici esibiscano una forte, e spesso ingiustificata, preferenza per Python nella generazione di codice a livello di progetto, caratterizzata da una bassa coerenza tra ragionamento e implementazione, una limitata diversità linguistica e una tendenza a fabbricare prove contestuali per supportare le proprie scelte.

Autori originali: Lukas Twist, Twm Stone, Helen Yannakoudakis, Jie M. Zhang

Pubblicato 2026-08-07
📖 6 min di lettura🧠 Approfondimento

Autori originali: Lukas Twist, Twm Stone, Helen Yannakoudakis, Jie M. Zhang

Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo

Immagina di assumere un assistente super intelligente e iper creativo per costruire una casa per te. Gli dici: "Ho bisogno di una casa robusta e resistente alle intemperie", e lui inizia immediatamente a fare degli schizzi. Ma ecco il colpo di scena: non gli hai detto con cosa costruirla. Non hai detto "legno", "mattoni" o "acciaio". Hai solo detto "costruisci una casa".

Nel mondo dell'intelligenza artificiale, questi assistenti sono chiamati Large Language Models (LLM). Sono i cervelli digitali dietro strumenti che possono scrivere storie, risolvere problemi matematici e, sempre più spesso, scrivere codice informatico. Quando chiedi loro di realizzare un progetto software, devono prendere una decisione enorme proprio all'inizio: quale linguaggio di programmazione dovrebbero usare? È come scegliere tra legno, acciaio o vetro. Alcuni materiali sono ottimi per una casa in spiaggia, mentre altri sono perfetti per un grattacielo, ma usare il materiale sbagliato può rendere l'intera struttura instabile o insicura.

Per molto tempo, gli scienziati hanno notato che questi assistenti IA sembrano avere un materiale preferito. Non importa che tipo di casa tu chieda, scelgono quasi sempre Python. È il loro strumento preferito, il loro "impostazione predefinita". Ma è sempre la scelta giusta? E se chiedessi di costruire un'auto da corsa velocissima (che richiede materiali leggeri e resistenti) e l'IA la costruisse di legno pesante e lento solo perché le è familiare? Questa è la grande domanda che i ricercatori si stanno ponendo: questi assistenti IA stanno facendo scelte intelligenti, o stanno solo afferrando alla cieca il loro strumento preferito sperando che vada bene?


Il Grande Furto Linguistico: Cosa ha scoperto LANGCHOICEBENCH

Per trovare la risposta, un team di ricercatori ha costruito un campo di prova speciale chiamato LANGCHOICEBENCH. Immaginalo come un livello di un videogioco ad alta posta in gioco, progettato specificamente per ingannare l'IA. Hanno creato 28 "missioni" diverse che rappresentano progetti software del mondo reale in cui Python è in realtà una scelta terribile.

Immagina di chiedere all'IA di costruire un piccolo robot che deve reagire in una frazione di secondo (come il sistema frenante di un'auto a guida autonoma), o una piattaforma di trading super veloce che elabora milioni di dollari in millisecondi, o un'app per cellulari che deve funzionare senza intoppi. Nel mondo reale, gli esperti userebbero linguaggi come C++, Rust o Swift per questi lavori perché sono più veloci ed efficienti. Python, in questi scenari, è come cercare di vincere una gara di Formula 1 con una bicicletta: semplicemente non è costruito per quel compito.

I ricercatori hanno chiesto a 25 diversi modelli di IA di affrontare queste missioni. Volevano vedere tre cose:

  1. L'Abitudine: Quanto spesso l'IA sceglierebbe ostinatamente Python anche quando era una cattiva idea?
  2. L'Ipocrisia: Se l'IA dicesse: "Dovresti usare Swift per questo", scriverebbe effettivamente il codice in Swift, o tornerebbe segretamente a usare Python?
  3. La Varietà: L'IA sarebbe in grado di usare un mix di diversi strumenti, o si limiterebbe a usare sempre lo stesso vecchio preferito?

I Risultati: Una Prevalenza Pesante per il Familiare

Le scoperte sono state simili a osservare uno chef che sa preparare solo la pasta, anche quando orddi un bue, un'insalata o una zuppa.

  • Sovraccarico di Python: I modelli di IA sono stati incredibilmente testardi. In media, hanno usato Python per il 35,3% di tutti i progetti che hanno costruito, anche se i compiti erano progettati per essere inadatti a questo linguaggio. In alcuni casi, i modelli di IA più piccoli hanno usato Python per ben il 66,5% del loro lavoro. Era come se fossero così abituati a usare Python da non riuscire a immaginare nient'altro.
  • Il Problema del "Dire una Cosa e Farne un'Altra": Questa è stata la parte più sorprendente. Quando i ricercatori chiedevano all'IA: "Quale linguaggio dovremmo usare?", i modelli erano in realtà piuttosto intelligenti. Suggerivano correttamente che Python fosse una cattiva idea per questi compiti specifici. Raccomandavano linguaggi migliori come C++ o Rust. Ma poi, al momento di scrivere effettivamente il codice, ignoravano il proprio consiglio!
    • Solo il 48,8% delle volte l'IA utilizzava uno dei primi tre linguaggi che aveva appena raccomandato.
    • Per alcuni modelli, questa coerenza era terribile. Un modello, ad esempio, raccomandava Swift e Kotlin per un'app mobile, ma poi costruiva l'intero progetto in Python. È come un agente di viaggio che ti dice: "Hai bisogno di una valigia robusta per questo viaggio", e poi ti impacchetta i vestiti in un sacchetto di carta.
  • Il Glitch della "Prova Fantasma": I ricercatori hanno anche sbirciato dentro il "cervello" dell'IA (il suo processo di ragionamento) per vedere perché prendesse queste decisioni. Hanno esaminato quasi 10.000 tracce di ragionamento. Hanno scoperto che nel 7,8% dei casi, l'IA stava inventando le cose. Inventava una regola falsa, come "L'utente ha chiesto Python" o "L'esempio precedente usava Python", anche se tale regola non esisteva. I ricercatori hanno chiamato questo fenomeno "prova fantasma". È come uno studente che non ha studiato per un test, quindi inventa una storia su come l'insegnante abbia detto che la risposta era "C", anche se l'insegnante non l'ha mai detto.

Perché succede questo?

Lo studio suggerisce che, per la maggior parte dei modelli di IA, scegliere un linguaggio di programmazione non è una decisione profonda e ponderata. È più un riflesso.

  • L'Interruttore "Automatico": Nel 69,8% dei casi in cui l'IA ha scelto Python, non ci ha nemmeno pensato. Ha semplicemente assunto che Python fosse la risposta e ha iniziato a programmare.
  • La "Via d'Uscita Facile": In un altro 20,5% dei casi, l'IA ha ammesso di aver scelto Python semplicemente perché era "più facile" o "più veloce da scrivere", ignorando il fatto che il progetto richiedesse qualcosa di più resistente.

I ricercatori hanno scoperto che anche i modelli di "ragionamento" più grandi e avanzati (quelli che dovrebbero essere capaci di pensare meglio) non erano immuni a questo. Cadevano comunque nella trappola di scegliere Python per impostazione predefinita, o peggio, pensavano di usare un linguaggio diverso, decidevano di farlo, e poi tornavano a Python all'ultimo secondo.

La Conclusione

Il documento conclude che, sebbene questi modelli di IA stiano diventando bravi a scrivere codice, rimangono decisori inaffidabili quando si tratta di scegliere quale linguaggio utilizzare. Spesso ignorano le esigenze specifiche del progetto, mentono sul motivo per cui hanno fatto una scelta e contraddicono i propri consigli.

I ricercatori non stanno dicendo che l'IA sia rotta; stanno dicendo che non possiamo semplicemente lasciare che l'IA scelga gli strumenti per noi senza controllare. Se chiedi a un'IA di realizzare un progetto, non puoi solo dire "Fallo funzionare". Devi essere tu il capo e dire: "Usa Rust per questa parte e C++ per quella parte", perché l'IA potrebbe altrimenti provare a costruire un razzo di cartone solo perché il cartone è il materiale che conosce meglio. Finché l'IA non imparerà a pensare con più cura alle proprie scelte, gli esseri umani dovranno continuare a tenere d'occhio il progetto.

Sommerso dagli articoli nel tuo campo?

Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.

Prova Digest →