ChattyG suorittaa ensimmäisen vuoden uni C/C++ -ohjelmointikokeen

ChattyG suorittaa ensimmäisen vuoden uni C/C++ -ohjelmointikokeen

ChattyG suorittaa ensimmäisen vuoden uni C/C++ -ohjelmointikokeen PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

ChatGPT testattiin sarjan fuksi C/C++-ohjelmointitehtäviä ja se läpäisi – tosin ei kunnialla.

Kroatialaisen tutkimusryhmän mukaan ensimmäisen vuoden opiskelijat voivat kamppailla joidenkin tehtävien kanssa, tulokset [PDF] osoitti, että ChatGPT saavutti taitotavoitteet, jotka vaihtelivat keskimääräisen ja kokeneiden ohjelmoijien välillä. Ja luonnollisesti, kuten kaikissa yliopistokokeissa, tulokset voidaan määrittää sen mukaan, miten kysymykset on muotoiltu.

Yliopiston pohjoisen miehistö suunnitteli joukon korkeakoulun fuksitason ohjelmointihaasteita, ensin englanniksi ja myöhemmin nähdäkseen, vaikuttaisivatko kielten väliset vivahteet tuloksiin kroatiaksi. He halusivat nähdä paitsi kuinka ChatGPT koodaa, vaan myös, voisiko se mukautua eri kieliin.

Ensimmäinen tietokilpailu keskittyi ohjelmoinnin perustehtävään: kahden luvun suurimman yhteisen jakajan (GCD) laskemiseen. Alussa botti osoitti joitain rajoituksia, miten se päätti ratkaista ongelman, ja tutkijat sanoivat, että siitä puuttui kokeneelta ohjelmoijalta odotettu hienous. Mutta kuten kaikki opiskelijat, se oppii ja myöhemmillä yrityksillä, erityisesti kroatialaisessa versiossa, se osoitti joitain parannuksia, jotka osoittavat huomattavaa sopeutumiskykyä.

Esimerkiksi yhdessä tehtävässä haastettiin ohjelmoida tilastollinen perusfunktio C++:ssa. Aluksi se teki virheen käyttämällä toimintoa, joka ei tuottanut vaadittua "korjattua" keskihajontaa. Mutta kun sama tehtävä esiteltiin kroatiaksi, chatbot ei vain tunnistanut edellistä virhettä, vaan kehitti hienostuneen ratkaisun.

Tutkijat huomauttavat, että tämä sopeutumiskyky heijastaa fuksimatkaa: se alkaa virheistä, mutta osoittaa kykyä oppia ja parantaa taitojaan toistuvan harjoituksen ja palautteen avulla. Awww.

Toinen tehtävä sisälsi vivahteikkaamman ongelman: lukujen tunnistaminen alueella tiettyjen jakosäännösten perusteella. Tässä ChatGPT:n akilleen kantapää tuli selväksi. Kielestä riippumatta - englanti tai kroatia - ChattyG kamppaili negatiivisten lukujen kanssa. Jokainen ChatGPT:n yritys johti samanlaisiin tuloksiin, mikä viittaa johdonmukaiseen ongelmaan tämän tehtävän ohjelmointilogiikassa.

Bonuskysymys vaati tarkkuutta. ChatGPT:tä vaadittiin syöttösuodattimen luomiseen, erityisesti määritellylle desimaalilukualueelle. Tekoälyn alkuperäinen ratkaisu, kun se esitettiin englanniksi, oli paikallaan, mutta seuraavat yritykset, varsinkin kun tehtävä annettiin kroatiaksi, paljastivat joitakin epäjohdonmukaisuuksia ja joissain tapauksissa ChatGPT käytti tarpeettomia ohjelmointikonstruktioita. Vaikka nämä eivät estäneet ohjelman toimivuutta, ne osoittivat optimoinnin puutteen. Tuntui kuin ChatGPT olisi joskus valinnut pidemmän reitin määränpäähän, vaikka pikakuvake olisi käytettävissä.

Asiat muuttuivat monimutkaisemmiksi taulukoihin liittyvän tehtävän myötä. Täällä ChatGPT:tä pyydettiin tallentamaan numeroita ja laskemaan sitten tietyt tilastot, kuten keskiarvo, keskihajonna, ja tunnistamaan minimi- ja maksimiarvot. ChattyG:n suoritus tässä haasteessa oli erityisen mielenkiintoinen. Eri testeissä se esitteli erilaisia ​​strategioita. Joskus se ratkaisi ongelman tyylikkäästi tarjoten suoraviivaisia ​​ratkaisuja. Muissa yrityksissä se kallistui mutkikkaampiin menetelmiin, jopa niputtamalla useita toimintoja yhdeksi funktioksi.

Kaikki tämä herättää tärkeän kysymyksen: valitseeko ChatGPT aina parhaan strategian vai käyttääkö se joskus oletuksena opittuja mutta tehottomia menetelmiä?

Viimeinen este ChatGPT:lle liittyi perustekstinkäsittelyyn. Sen tehtävänä oli poistaa ylimääräiset välilyönnit käyttäjän syötteestä. Ensimmäisessä englanninkielisessä testissä ChatGPT:n ratkaisu oli paikallaan. Kroatian testi heitti kuitenkin kurvipallon. Sen sijaan, että olisi noudattanut tehokasta yhden syötteen ratkaisua, AI jostain syystä valitsi monimutkaisemman lähestymistavan, joka vaati useita syötteitä. Kuitenkin, kun tutkijat palasivat tähän haasteeseen englanniksi, ChatGPT näytti oppineen edellisestä virheestä ja palasi yksinkertaisempaan menetelmään.

Kaiken kaikkiaan tutkijat havaitsivat, että vastauksissa oli paljon yhteistä ohjelmoinnin fuksiopiskelijoiden vastauksien kanssa. Sen ratkaisut toistivat usein kokeneiden ohjelmoijien strategioita, mutta kuten kaikki opiskelijat, ChatGPT ei ollut erehtymätön. Oli loistohetkiä, mutta myös tapauksia, joissa se tuntui menevän kokonaan ohi.

Todellinen poiminta tässä on sen inhimillinen fuksimainen sopeutumiskyky: Kyse ei ollut vain oikean ratkaisun löytämisestä; kyse oli jalostamisesta, oppimisesta ja iteroinnista.

Joten mikä on ChattyG:n viimeinen arvosana?

Tutkijoilta:

"ChatGPT läpäisee kokeen erittäin hyvillä arvosanoilla, mikä ylittää useimpien opiskelijoiden ratkaisujen laadussa. Lisäksi se ratkaisee jokaisen tehtävän 20-30 sekunnissa ja osoittaa yleisen kyvyn mukauttaa tai muuttaa ratkaisujaan lisävaatimusten mukaan. Joissakin, usein yksinkertaisissa tehtävissä se kuitenkin osoitti kyvyttömyyttä ymmärtää ongelman loogista ja matemaattista olemusta, vaikka sitä olisi useaan kertaan kehotettu virheistään." ®

Aikaleima:

Lisää aiheesta Rekisteri