ChattyG susține un examen de programare uni C/C++ în primul an

ChattyG susține un examen de programare uni C/C++ în primul an

ChattyG susține un examen de programare uni C/C++ din primul an PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

ChatGPT a fost pus la încercare printr-o serie de sarcini de programare C/C++ banale și a trecut – deși nu cu onoruri.

Potrivit unei echipe de cercetare croate, în timp ce studenții din primul an se pot lupta cu unele dintre sarcini, rezultatele [PDF] a arătat că ChatGPT atinge obiective de competență care variau între medie și cea a programatorilor cu experiență. Și, desigur, ca și în cazul tuturor examenelor de facultate, rezultatele pot fi determinate de modul în care sunt formulate întrebările.

Echipa de la Universitatea de Nord a conceput un set de provocări de programare la nivel de boboc, scrise mai întâi în engleză și mai târziu, pentru a vedea dacă nuanțele în mai multe limbi ar afecta rezultatele, croată. Au vrut să vadă nu doar cum codurile ChatGPT, ci și dacă se poate adapta la diferite limbi.

Primul test s-a concentrat pe o sarcină de programare de bază: calcularea celui mai mare divizor comun (GCD) a două numere. La început, bot-ul a arătat câteva limitări în modul în care a decis să abordeze problema, cercetătorii spunând că îi lipsește finețea așteptată de la un programator experimentat. Dar, ca orice student, învață și prin încercări ulterioare, mai ales în versiunea croată, a demonstrat unele îmbunătățiri, dând dovadă de adaptabilitate notabilă.

De exemplu, într-o anumită sarcină a fost provocat să programeze o funcție statistică de bază în C++. Inițial, a făcut o neglijare, folosind o funcție care nu a produs abaterea standard „corectată”, așa cum este necesar. Dar, când aceeași sarcină a fost prezentată în croată, chatbot-ul nu numai că și-a recunoscut eroarea anterioară, dar a găsit o soluție rafinată.

Cercetătorii observă că această adaptabilitate oglindește călătoria unui boboc: începând cu greșeli, dar arătând capacitatea de a învăța și de a-și îmbunătăți abilitățile prin practică și feedback repetat. Awww.

O altă sarcină a implicat o problemă mai nuanțată: identificarea numerelor dintr-un interval pe baza unor reguli specifice de divizibilitate. Aici a devenit evident călcâiul lui Ahile al lui ChatGPT. Indiferent de limbă – engleză sau croată – ChattyG s-a luptat cu numerele negative. Fiecare încercare a ChatGPT a condus la rezultate similare, indicând o problemă consistentă în logica sa de programare pentru această sarcină.

O întrebare bonus cerea precizie. ChatGPT a fost necesar pentru a crea un filtru de intrare, în special pentru un interval definit de numere zecimale. Soluția inițială a AI, atunci când a fost prezentată în limba engleză, a fost pe măsură, dar încercările următoare, mai ales când sarcina a fost dată în croată, au scos la iveală unele inconsecvențe și, în unele cazuri, ChatGPT a folosit constructe de programare inutile. Deși acestea nu au împiedicat funcționalitatea programului, au indicat o lipsă de optimizare. Era ca și cum ChatGPT luase uneori ruta mai lungă către o destinație, chiar și atunci când era disponibilă o comandă rapidă.

Lucrurile au devenit mai complicate cu o sarcină legată de matrice. Aici, ChatGPT a fost rugat să stocheze numere și apoi să calculeze anumite statistici, cum ar fi valoarea medie, abaterea standard și să identifice valorile minime și maxime. Performanța lui ChattyG la această provocare a fost deosebit de interesantă. În diferite teste, a prezentat strategii diferite. Uneori, a rezolvat elegant problema, oferind soluții simple. În alte încercări, s-a înclinat spre metode mai complicate, chiar grupând mai multe operații într-o singură funcție.

Toate acestea ridică o întrebare importantă: ChatGPT alege întotdeauna cea mai bună strategie sau, uneori, folosește implicit metodele învățate, dar ineficiente?

Ultimul obstacol pentru ChatGPT a implicat procesarea de bază a textului. Acesta a fost însărcinat cu eliminarea spațiilor suplimentare din introducerea utilizatorului. În testul său inițial de engleză, soluția ChatGPT a fost perfectă. Cu toate acestea, testul croat a aruncat o minge curbă. În loc să adere la soluția sa eficientă cu o singură intrare, AI, din anumite motive, a optat pentru o abordare mai complexă, solicitând intrări multiple. Cu toate acestea, când cercetătorii au revizuit această provocare în limba engleză, ChatGPT părea să fi învățat din pasul greșit anterior, revenind la metoda mai simplă.

În general, cercetătorii au descoperit că răspunsurile au multe în comun cu cele ale studenților în boboc umani la programare. Soluțiile sale au reflectat adesea strategiile programatorilor experimentați, dar, ca orice student, ChatGPT nu a fost infailibil. Au fost momente de strălucire, dar și cazuri în care părea să rateze în întregime marcajul.

Adevărata concluzie aici este adaptabilitatea umană, asemănătoare unui boboc: nu a fost vorba doar de a găsi soluția potrivită; era vorba de rafinare, învățare și iterare.

Deci, care este nota finală a lui ChattyG?

Din partea cercetătorilor:

„ChatGPT trece examenul cu note foarte bune, depășind majoritatea studenților noștri la calitatea soluțiilor. În plus, rezolvă fiecare sarcină în 20 până la 30 de secunde și arată capacitatea generală de a-și adapta sau schimba soluțiile în funcție de cerințe suplimentare. Cu toate acestea, în unele sarcini, adesea simple, a arătat incapacitatea de a înțelege esența logică și matematică a problemei, chiar și după ce a fost solicitat de mai multe ori despre erorile sale.” ®

Timestamp-ul:

Mai mult de la Registrul