Το ChatGPT γράφει αξιοπρεπή κώδικα υπολογιστή, όταν μένει στα βασικά

Όταν κλήθηκε να λύσει 728 προβλήματα προγραμματισμού, το GPT-3.5 τα καταφέρε ως επί το πλείστον, αλλά τα πράγματα γίνονται πιο δύσκολα όταν του παρουσιάστηκαν δεδομένα που προστέθηκαν στην πλατφόρμα δοκιμών LeetCode μετά το 2021.

(Credit: SOPA Images)

Ένα από τα σημαντικότερα χαρακτηριστικά της τεχνητής νοημοσύνης είναι η ικανότητα συγγραφής κώδικα υπολογιστή, και μια πρόσφατη μελέτη που διερεύνησε πόσο καλό είναι το ChatGPT σε αυτό το έργο διαπιστώνει ότι παίρνει τουλάχιστον έναν ικανοποιητικό βαθμό.

Η μελέτη, που δημοσιεύθηκε στο τεύχος Ιουνίου του IEEE Transactions on Software Engineering, έτρεξε το GPT-3.5 σε 728 προβλήματα προγραμματισμού από την πλατφόρμα δοκιμών LeetCode σε πέντε γλώσσες προγραμματισμού, συμπεριλαμβανομένων των C, C++, Java, JavaScript και Python.

Στα προβλήματα που υπήρχαν στο LeetCode πριν από το 2021, το ChatGPT έλυσε τα εύκολα προβλήματα σε ποσοστό 89%, τα προβλήματα μεσαίας δυσκολίας σε ποσοστό 71% και τα δύσκολα προβλήματα σε ποσοστό 40%.

Ωστόσο, όταν δοκιμάστηκε σε προβλήματα που υπήρχαν στην πλατφόρμα LeetCode μετά το 2021, τα εύκολα, μεσαίας και δύσκολα αποτελέσματα μειώθηκαν σε 52%, 40% και 0.66%, αντίστοιχα. Το ChatGPT εκπαιδεύτηκε αρχικά σε δεδομένα μέχρι το 2021 - αυτή η βάση γνώσεων δεν επεκτάθηκε μέχρι τα τέλη του 2023.

"Όταν πρόκειται για τα προβλήματα του αλγορίθμου μετά το 2021, επηρεάζεται η ικανότητα του ChatGPT να παράγει λειτουργικά ορθό κώδικα. Μερικές φορές αποτυγχάνει να κατανοήσει το νόημα των ερωτήσεων, ακόμη και για προβλήματα εύκολου επιπέδου", λέει ο Yutian Tang, λέκτορας στο Πανεπιστήμιο της Γλασκώβης που συμμετείχε στη μελέτη. "Μια λογική υπόθεση για το γιατί το ChatGPT μπορεί να τα πάει καλύτερα με προβλήματα αλγορίθμων πριν από το 2021 είναι ότι τα προβλήματα αυτά εμφανίζονται συχνά στο σύνολο δεδομένων εκπαίδευσης".

Οι ερευνητές σημειώνουν επίσης ότι το ChatGPT διορθώνει καλύτερα τα ανθρώπινα λάθη παρά τα δικά του λάθη και μπορεί να παράγει κώδικα με μικρότερο χρόνο εκτέλεσης και μικρότερο κόστος μνήμης στο 50% των περιπτώσεων σε σύγκριση με τους ανθρώπους. Ο κώδικας που παρήγαγε το ChatGPT είχε επίσης μια αξιοπρεπή ποσότητα σφαλμάτων, αν και "πολλά από αυτά ήταν εύκολα διορθώσιμα", αναφέρει το IEEE Spectrum. "Ο παραγόμενος κώδικας σε C ήταν ο πιο πολύπλοκος, ακολουθούμενος από τη C++ και την Python, η οποία έχει παρόμοια πολυπλοκότητα με τον κώδικα που γράφτηκε από τον άνθρωπο".