← Ultimi articoli
🤖 AI

Strategies for Guiding LLMs to Use Software Design Patterns: A Case of Singleton

Questo articolo valuta quattro strategie di prompting su 13 grandi modelli linguistici in 164 sfide Java per determinare come guidarli al meglio nell'implementare il pattern di design Singleton, rilevando che il feedback binario iterativo è generalmente ottimale, mentre approcci basati su istruzioni specifiche possono raggiungere una conformità quasi perfetta al pattern e migliorare significativamente la funzionalità del codice a seconda del modello.

Autori originali: Viktor Kjellberg, Farnaz Fotrousi, Miroslaw Staron

Pubblicato 2026-05-27
📖 5 min di lettura🧠 Approfondimento

Autori originali: Viktor Kjellberg, Farnaz Fotrousi, Miroslaw Staron

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 avere un team di chef junior incredibilmente talentuosi ma leggermente caotici (questi sono i Large Language Models, o LLM). Sono straordinari nel seguire le ricette per preparare un pasto delizioso (scrivere codice funzionante). Tuttavia, spesso dimenticano le "regole della cucina" riguardanti come la cucina stessa dovrebbe essere organizzata. Potrebbero preparare una bistecca eccellente, ma potrebbero lasciare acceso il fornello, usare tre pentole diverse per un unico piatto o dimenticare di chiudere a chiave la porta sul retro.

Nel mondo del software, queste "regole della cucina" sono chiamate Pattern di Progettazione. Una regola specifica è chiamata Pattern Singleton. Pensa al Pattern Singleton come a una regola che dice: "Può esserci solo una chiave maestra per l'edificio, e tutti devono ottenere la propria copia da quella singola chiave." Garantisce che una parte specifica del software (come un motore di un'auto o una connessione al database) venga creata una sola volta e condivisa da tutti, invece di creare dieci motori diversi per un'unica auto.

Il problema che i ricercatori hanno scoperto è che, mentre questi chef di intelligenza artificiale possono preparare il pasto, spesso dimenticano di seguire la regola della "Chiave Maestra Unica" a meno che non glielo si dica esplicitamente.

L'Esperimento: Insegnare agli Chef le Regole

I ricercatori volevano trovare il modo migliore per insegnare a questi chef di intelligenza artificiale a seguire la regola della "Chiave Maestra Unica" senza rovinare il pasto che stavano preparando. Hanno testato 13 diversi modelli di intelligenza artificiale (da diverse "famiglie" come GPT, Llama e Qwen) utilizzando 164 diverse sfide culinarie (attività di programmazione).

Hanno provato quattro diverse strategie di insegnamento:

  1. L'Istruzione "Fallo Semplicemente": Hanno semplicemente detto allo chef: "Ehi, assicurati di usare la regola della Chiave Maestra Unica."

    • Il Risultato: Alcuni chef hanno capito immediatamente e hanno fatto un lavoro perfetto. Altri si sono confusi e hanno iniziato a commettere errori nella preparazione effettiva (il codice ha smesso di funzionare). Dipendeva interamente da quale chef avevi chiesto.
  2. Il Ciclo di Feedback "Sì/No": Lo chef preparava il pasto e un ispettore robot controllava la cucina. Se lo chef non usava la regola della Chiave Maestra Unica, il robot diceva semplicemente: "No, riprova." Lo chef doveva indovinare cosa non andava e riprovare.

    • Il Risultato: Questo ha aiutato molto. Gli chef hanno imparato dai loro errori e alla fine hanno capito la regola correttamente. Per alcuni, ha addirittura reso il pasto più gustoso (il codice funzionava in modo ancora più affidabile).
  3. Il Ciclo di Feedback "Relazione Dettagliata": Questo era come se l'ispettore robot fornisse una lista di controllo specifica. Invece di dire solo "No", diceva: "Hai dimenticato la serratura privata sulla porta" oppure "Non hai messo la chiave nella hall principale."

    • Il Risultato: Questo è stato il più utile per la maggior parte degli chef. Sapendo esattamente cosa mancava, potevano correggerlo con precisione. Questa strategia ha ottenuto il numero più alto di chef che seguivano la regola perfettamente.
  4. Il Metodo "Mostra e Spiega" (Few-Shot): I ricercatori mostravano allo chef due esempi di cucine perfette che utilizzavano la regola della Chiave Maestra Unica, poi gli chiedevano di riprovare.

    • Il Risultato: Questo è stato un misto. Alcuni chef hanno adorato gli esempi e hanno fatto un ottimo lavoro. Altri si sono confusi dagli esempi e hanno effettivamente ottenuto risultati peggiori di prima.

I Principali Punti Chiave

Il documento conclude con tre punti principali, tradotti nella nostra analogia della cucina:

  • Puoi insegnarglielo, ma il metodo conta: Puoi sicuramente far sì che questi chef di intelligenza artificiale seguano la regola della "Chiave Maestra Unica". Tuttavia, il modo migliore per insegnarglielo dipende da quale chef stai utilizzando. Una strategia che funziona perfettamente per lo Chef A potrebbe confondere lo Chef B.
  • Il feedback è il segreto: Dire semplicemente di farlo va bene, ma fornire loro un feedback su cosa hanno fatto male è molto meglio. Se dici loro esattamente quale parte della regola hanno saltato (come "hai dimenticato la serratura"), imparano più velocemente e commettono meno errori.
  • Non rovinare il pasto: I ricercatori erano preoccupati che costringere gli chef a seguire questa nuova regola potesse rovinare il gusto del pasto (rompere la funzionalità del codice). Sorprendentemente, per molti degli chef migliori, seguire la regola ha reso il pasto migliore. Tuttavia, per alcuni chef più deboli, cercare di seguire la regola ha reso il pasto immangiabile.

La Conclusione

I ricercatori hanno scoperto che non serve una magia complessa per far sì che l'intelligenza artificiale segua le regole di progettazione del software. A volte, basta dare un'istruzione chiara. Altre volte, devi agire come un insegnante severo ma utile, indicando esattamente cosa mancava. La chiave è che non esiste una soluzione "taglia unica"; devi scegliere lo stile di insegnamento che funziona meglio per il modello di intelligenza artificiale specifico che stai utilizzando.

Nota: Il documento ha testato questo solo su codice Java (un linguaggio di programmazione specifico) e solo sulla regola del "Singleton". Non hanno testato questo su diagnosi mediche, consigli finanziari o altre applicazioni del mondo reale. Hanno semplicemente dimostrato che, con il giusto prompting, l'intelligenza artificiale può imparare a seguire regole architetturali specifiche nel codice.

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 →