Μετάβαση στο κύριο περιεχόμενο
OpenAI

19 Οκτωβρίου 2026

ΔημοσίευσηΈρευνα

Πρόοδος στον προγραμματισμό σε γλώσσες με περιορισμένους πόρους

Φόρτωση…

Οι τελευταίες βελτιώσεις στα μοντέλα μας προσφέρουν ισχυρότερες δυνατότητες ανάπτυξης και μεταφοράς λογισμικού σε γλώσσες προγραμματισμού με περιορισμένους διαθέσιμους πόρους, όπως η COBOL, η Fortran και η Visual Basic. Για αυτές τις γλώσσες υπάρχει λιγότερος διαθέσιμος κώδικας και τεκμηρίωση από τα οποία μπορούν να μάθουν τα μοντέλα, σε σύγκριση με γλώσσες όπως η Python και η JavaScript. Ωστόσο, στηρίζουν κρίσιμες υποδομές και βασικές υπηρεσίες σε όλο τον κόσμο. Η COBOL υποστηρίζει⁠(ανοίγει σε νέο παράθυρο) πάνω από το 40% των συστημάτων ηλεκτρονικής τραπεζικής, το 80% των συναλλαγών με πιστωτική κάρτα με φυσική παρουσία και το 95% των συναλλαγών σε ATM, ενώ η Fortran χρησιμοποιείται στην πρόγνωση καιρού⁠(ανοίγει σε νέο παράθυρο) και στην ανάλυση ασφάλειας πυρηνικών αντιδραστήρων⁠(ανοίγει σε νέο παράθυρο). Η βελτίωση της ικανότητας της τεχνητής νοημοσύνης να εργάζεται σε αυτές τις γλώσσες θα μπορούσε να βοηθήσει τις ομάδες να συντηρούν και να εκσυγχρονίζουν το λογισμικό από το οποίο εξαρτώνται βασικές υπηρεσίες.

Αυτή η προσπάθεια καθοδηγείται από τα σχόλια προγραμματιστών και εταιρικών πελατών, οι οποίοι μας έχουν πει ότι τα μοντέλα προγραμματισμού συχνά δυσκολεύονται με αυτές τις γλώσσες. Η συντήρηση και ο εκσυγχρονισμός αυτού του λογισμικού μπορεί να είναι δύσκολα: η τεκμηρίωση ενδέχεται να είναι ελλιπής, οι αρχικοί προγραμματιστές μπορεί να έχουν αποχωρήσει από την εταιρεία και σημαντικοί επιχειρησιακοί κανόνες μπορεί να υπάρχουν μόνο στον κώδικα. Είτε διορθώνουν σφάλματα είτε μεταφέρουν τον κώδικα σε άλλη γλώσσα, οι ομάδες πρέπει να διατηρούν τη συμπεριφορά στην οποία βασίζονται τα συστήματά τους.

Για να μετρήσουμε την πρόοδο, αναπτύξαμε δύο αξιολογήσεις. Το MultiLangBench ελέγχει αν ένα μοντέλο μπορεί να δημιουργήσει από το μηδέν μια μηχανή βάσης δεδομένων συμβατή με το SQLite σε 20 διαφορετικές γλώσσες προγραμματισμού. Η αξιολόγησή μας για τη μεταφορά κώδικα COBOL ελέγχει αν ένα μοντέλο μπορεί να μεταφέρει υπάρχοντα προγράμματα σε άλλη γλώσσα, διατηρώντας τη συμπεριφορά τους. Μαζί, ελέγχουν δύο συμπληρωματικές δεξιότητες: τη δημιουργία νέου λογισμικού και τη διατήρηση της λειτουργίας του υπάρχοντος.

Τα τελευταία μοντέλα μας παρουσιάζουν σημαντική βελτίωση και στις δύο αξιολογήσεις, προσφέροντας πολύ μεγαλύτερη ακρίβεια με χαμηλότερο κόστος.

Στο MultiLangBench, το GPT‑6 Astra επιτυγχάνει μέσο ποσοστό επιτυχίας στις δοκιμές 87,4% σε 20 γλώσσες προγραμματισμού, έναντι 26,8% για το GPT‑5.6 Sol, με βελτιώσεις σε κάθε γλώσσα που δοκιμάστηκε. Το GPT‑6 Luna ξεπερνά επίσης το GPT‑5.6 Sol, φτάνοντας το 40,3% με εκτιμώμενο κόστος API περίπου 78% χαμηλότερο.

Στην αξιολόγησή μας για τη μεταφορά κώδικα COBOL, το GPT‑6.1 Sol επιτυγχάνει ακρίβεια 86,6% σε χαμηλό επίπεδο συλλογιστικής, έναντι μόλις 5,4% για το GPT‑5.6 Sol, με κόστος κατά 39% χαμηλότερο. Σε υψηλότερο επίπεδο συλλογιστικής, η ακρίβεια φτάνει το 97,9%, πλησιάζοντας το ανώτατο όριο της αξιολόγησης.

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

1. Δημιουργία του SQLite από το μηδέν (MultiLangBench)

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

Για να συγκρίνουμε υλοποιήσεις σε διαφορετικές γλώσσες, χρησιμοποιούμε αρχεία βάσης δεδομένων ως κοινή διεπαφή. Το υπό αξιολόγηση πρόγραμμα λαμβάνει μια αρχική βάση δεδομένων και ένα ερώτημα SQL και, στη συνέχεια, παράγει μια τροποποιημένη βάση δεδομένων. Χρησιμοποιούμε την υλοποίηση αναφοράς του SQLite για να ελέγξουμε αν η βάση δεδομένων που προκύπτει έχει τα αναμενόμενα περιεχόμενα. Έτσι μπορούμε να εφαρμόζουμε τις ίδιες δοκιμές, ανεξάρτητα από τη γλώσσα που χρησιμοποιήθηκε για τη δημιουργία της μηχανής.

Προσαρμόσαμε δοκιμές από την υπάρχουσα σουίτα δοκιμών του SQLite σε αυτή τη μορφή. Η αξιολόγηση μετρά πόσες λειτουργίες μπορεί να υλοποιήσει σωστά ένα μοντέλο σε μια εκτεταμένη συνεδρία προγραμματισμού, καταγράφοντας τόσο το ποσοστό επιτυχίας στις δοκιμές όσο και το κόστος API.

Στο μέγιστο επίπεδο συλλογιστικής, το GPT‑6 Astra επιτυγχάνει μέσο ποσοστό επιτυχίας στις δοκιμές 87,4% στις 20 γλώσσες, έναντι 26,8% για το GPT‑5.6 Sol. Οι βελτιώσεις καλύπτουν κάθε γλώσσα που δοκιμάστηκε, μεταξύ άλλων την COBOL (από 10,9% σε 72,1%), την OCaml (από 25,6% σε 85,8%), τη Fortran (από 21,4% σε 83,5%) και τη Visual Basic (από 27,5% σε 89,4%). Το Astra σημειώνει επίδοση πάνω από 83% στις 19 από τις 20 γλώσσες, με την COBOL να παραμένει η δυσκολότερη, στο 72%.

Το GPT‑6 Luna προσφέρει μια οικονομικότερη επιλογή που επίσης ξεπερνά το GPT‑5.6 Sol σε κάθε γλώσσα που δοκιμάστηκε. Στο μέγιστο επίπεδο συλλογιστικής, φτάνει σε μέσο ποσοστό επιτυχίας στις δοκιμές 40,3%. Οι βελτιώσεις περιλαμβάνουν την COBOL (από 10,9% σε 17,1%), την OCaml (από 25,6% σε 34,1%), τη Fortran (από 21,4% σε 31,4%) και τη Visual Basic (από 27,5% σε 41,6%). Αυτές οι βελτιώσεις επιτυγχάνονται με εκτιμώμενο μέσο κόστος API 0,77 δολάρια ανά δείγμα, έναντι 3,48 δολαρίων για το GPT‑5.6 Sol, δηλαδή περίπου 78% χαμηλότερο.

Δημοσιεύουμε τη διαμόρφωση αξιολόγησης και τη σουίτα δοκιμών του MultiLangBench στο GitHub⁠(ανοίγει σε νέο παράθυρο), μαζί με αποτελέσματα για κάθε γλώσσα. Οι προγραμματιστές μπορούν να εξετάσουν τι ελέγχει η αξιολόγηση, να δουν τις επιδόσεις στις γλώσσες που χρησιμοποιούν και να εντοπίσουν ελλείψεις που έχουν σημασία για τη δική τους εργασία.

2. Μεταφορά μιας βάσης κώδικα COBOL

Η δεύτερη αξιολόγησή μας ζητά από τα μοντέλα να μεταφέρουν προγράμματα COBOL σε C++, Java, Kotlin, Python ή Rust, διατηρώντας τη λειτουργία κάθε προγράμματος.

Η επιτυχής μεταφορά απαιτεί κατανόηση τόσο της επιχειρησιακής λογικής του προγράμματος όσο και της ιδιαίτερης συμπεριφοράς της COBOL ως γλώσσας. Τα προγράμματα COBOL συχνά επεξεργάζονται χρηματοοικονομικές συναλλαγές και επιχειρησιακές εγγραφές, όπου λεπτομέρειες όπως οι κανόνες στρογγυλοποίησης και ο χειρισμός εγγραφών που λείπουν αντανακλούν επιχειρησιακές απαιτήσεις. Για παράδειγμα, η αριθμητική σταθερής υποδιαστολής της COBOL αποκόπτει τα επιπλέον δεκαδικά ψηφία, εκτός αν ζητηθεί ρητά στρογγυλοποίηση. Μια επανεγγραφή του κώδικα που στρογγυλοποιεί αυτές τις τιμές μπορεί να εκτελείται χωρίς σφάλματα, αλλά να παράγει διαφορετικά οικονομικά αποτελέσματα.

Για να ελέγξουμε αν διατηρούνται αυτές οι συμπεριφορές, αξιολογούμε τα μοντέλα μας με κρυφές δοκιμές που απαιτούν τα παρατηρήσιμα αποτελέσματα εξόδου να είναι πανομοιότυπα, byte προς byte. Μια μεταφορά θεωρείται επιτυχής μόνο αν περάσει όλες τις δοκιμές. Τέτοιες δυνατότητες διατήρησης της συμπεριφοράς είναι χρήσιμες για ομάδες που συντηρούν και εκσυγχρονίζουν παλαιότερα συστήματα. Ωστόσο, η εφαρμογή τους σε λογισμικό παραγωγής εξακολουθεί να απαιτεί έλεγχο από ειδικούς και δοκιμές με βάση τους επιχειρησιακούς κανόνες και τις εξαρτήσεις του συστήματος.

Σε αυτή την αξιολόγηση, το GPT‑6.1 Sol επιτυγχάνει ακρίβεια 86,6% σε χαμηλό επίπεδο συλλογιστικής, έναντι 5,4% για το GPT‑5.6 Sol στην ίδια ρύθμιση, με μόλις το 61% του κόστους API. Σε υψηλότερο επίπεδο συλλογιστικής, η ακρίβεια φτάνει το 97,9%, πλησιάζοντας το ανώτατο όριο της αξιολόγησης. Αυτά τα αποτελέσματα αξιολόγησης δείχνουν πρόοδο προς ακριβέστερη και οικονομικότερη μεταφορά κώδικα για τις ομάδες που εκσυγχρονίζουν το λογισμικό από το οποίο εξαρτώνται οι επιχειρήσεις τους.

Ενίσχυση των δυνατοτήτων για εταιρικό λογισμικό

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

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

Μπορείτε να δοκιμάσετε τα τελευταία μοντέλα μας μέσω του API σε εργασίες προγραμματισμού στις γλώσσες που χρησιμοποιεί η ομάδα σας. Τα σχόλιά σας για το τι λειτουργεί, πού δυσκολεύονται τα μοντέλα και σε ποιες γλώσσες ή ροές εργασίας θα πρέπει να εστιάσουμε στη συνέχεια συμβάλλουν στη διαμόρφωση του τρόπου με τον οποίο εκπαιδεύουμε και αξιολογούμε τα μοντέλα, ώστε να υποστηρίζουν καλύτερα το λογισμικό στο οποίο βασίζεστε.