ChattyG sostiene un esame di programmazione C/C++ del primo anno uni

ChattyG sostiene un esame di programmazione C/C++ del primo anno uni

ChattyG sostiene l'esame di programmazione PlatoBlockchain Data Intelligence del primo anno uni C/C++. Ricerca verticale. Ai.

ChatGPT è stato messo alla prova tramite una serie di noiose attività di programmazione C/C++ da matricola e ha superato la prova, anche se non con il massimo dei voti.

Secondo un gruppo di ricerca croato, mentre gli studenti del primo anno possono avere difficoltà con alcuni compiti, i risultati [PDF] ha mostrato che ChatGPT ha raggiunto obiettivi di competenza compresi tra la media e quelli di programmatori esperti. E naturalmente, come per tutti gli esami universitari, i risultati possono essere determinati da come sono formulate le domande.

Il team della University North ha progettato una serie di sfide di programmazione a livello di matricola universitaria, scritte prima in inglese e poi, per vedere se le sfumature tra lingue diverse avrebbero influenzato i risultati, in croato. Volevano vedere non solo come codifica ChatGPT, ma anche se potesse adattarsi a lingue diverse.

Il primo quiz si concentrava su un compito di programmazione di base: calcolare il massimo comun divisore (MCD) di due numeri. All’inizio, il bot ha mostrato alcuni limiti nel modo in cui ha deciso di affrontare il problema, e i ricercatori hanno affermato che non aveva la finezza che ci si aspetta da un programmatore esperto. Ma come ogni studente impara e attraverso i successivi tentativi, soprattutto nella versione croata, ha dimostrato alcuni miglioramenti, dimostrando una notevole adattabilità.

Ad esempio, in un compito particolare era necessario programmare una funzione statistica di base in C++. Inizialmente ha commesso una svista, utilizzando una funzione che non produceva la deviazione standard “corretta” come richiesto. Ma quando lo stesso compito è stato presentato in croato, il chatbot non solo ha riconosciuto l’errore precedente, ma ha elaborato una soluzione raffinata.

I ricercatori notano che questa adattabilità rispecchia il viaggio di una matricola: inizia con gli errori ma mostra la capacità di apprendere e migliorare le proprie capacità con la pratica ripetuta e il feedback. Awww.

Un altro compito implicava un problema più articolato: identificare i numeri all’interno di un intervallo basato su specifiche regole di divisibilità. È qui che è diventato evidente il tallone d'Achille di ChatGPT. Indipendentemente dalla lingua – inglese o croato – ChattyG ha lottato con i numeri negativi. Ogni tentativo di ChatGPT ha portato a risultati simili, indicando un problema coerente nella logica di programmazione di questa attività.

Una domanda bonus richiedeva precisione. ChatGPT doveva creare un filtro di input, specificamente per un intervallo definito di numeri decimali. La soluzione iniziale dell'intelligenza artificiale, quando presentata in inglese, era corretta, ma i tentativi successivi, soprattutto quando il compito è stato assegnato in croato, hanno rivelato alcune incoerenze e in alcuni casi ChatGPT ha utilizzato costrutti di programmazione non necessari. Anche se questi non hanno ostacolato la funzionalità del programma, hanno indicato una mancanza di ottimizzazione. Era come se ChatGPT a volte prendesse il percorso più lungo verso una destinazione, anche quando era disponibile una scorciatoia.

Le cose sono diventate più complesse con un'attività relativa agli array. Qui, a ChatGPT è stato chiesto di memorizzare numeri e quindi calcolare alcune statistiche come il valore medio, la deviazione standard e identificare i valori minimo e massimo. La performance di ChattyG in questa sfida è stata particolarmente interessante. Attraverso diversi test, ha mostrato diverse strategie. A volte risolveva il problema in modo elegante, offrendo soluzioni semplici. In altri tentativi, si è orientato verso metodi più contorti, arrivando addirittura a raggruppare più operazioni in un’unica funzione.

Tutto ciò solleva una domanda importante: ChatGPT sceglie sempre la strategia migliore o a volte si affida automaticamente a metodi appresi ma inefficienti?

L'ultimo ostacolo per ChatGPT riguardava l'elaborazione di base del testo. Aveva il compito di rimuovere spazi aggiuntivi dall'input dell'utente. Nel suo test iniziale in inglese, la soluzione di ChatGPT era perfetta. Tuttavia, il test croato ha lanciato una palla curva. Invece di aderire alla sua efficace soluzione a input singolo, l’intelligenza artificiale, per qualche motivo, ha optato per un approccio più complesso, richiedendo input multipli. Tuttavia, quando i ricercatori hanno rivisitato questa sfida in inglese, ChatGPT sembrava aver imparato dal passo falso precedente, tornando al metodo più semplice.

Nel complesso, i ricercatori hanno scoperto che le risposte avevano molto in comune con quelle degli studenti umani di programmazione matricola. Le sue soluzioni spesso riecheggiavano le strategie di programmatori esperti ma, come ogni studente, ChatGPT non era infallibile. Ci sono stati momenti brillanti, ma anche momenti in cui sembrava mancare del tutto il bersaglio.

Il vero vantaggio qui è la sua adattabilità umana da matricola: non si trattava solo di trovare la soluzione giusta; si trattava di perfezionare, apprendere e iterare.

Allora qual è il voto finale di ChattyG?

Dai ricercatori:

“ChatGPT supera l'esame con ottimi voti, superando la maggior parte dei nostri studenti nella qualità delle soluzioni. Inoltre, risolve ogni compito entro 20-30 secondi e mostra la capacità generale di adattare o modificare le proprie soluzioni in base a richieste aggiuntive. Tuttavia, in alcuni compiti, spesso semplici, ha mostrato l’incapacità di comprendere l’essenza logica e matematica del problema, anche dopo essere stato ripetutamente informato dei suoi errori”. ®

Timestamp:

Di più da Il registro