Το DeepCode θα βρει σφάλματα στον πηγαίο κώδικα του λογισμικού χρησιμοποιώντας AI

Σήμερα μια ελβετική startup DeepCode, που χρησιμοποιεί τεχνητή νοημοσύνη και μηχανική μάθηση για την αυτοματοποίηση της ανάλυσης κώδικα, ανακοίνωσε ότι έλαβε 4 εκατομμύρια δολάρια σε επενδύσεις από τα venture funds Earlybird, 3VC και Btov Partners. Η εταιρεία σχεδιάζει να χρησιμοποιήσει αυτά τα κεφάλαια για να εισαγάγει υποστήριξη για νέες γλώσσες προγραμματισμού στην υπηρεσία της, καθώς και για την προώθηση του προϊόντος στην παγκόσμια αγορά πληροφορικής.

Το DeepCode θα βρει σφάλματα στον πηγαίο κώδικα του λογισμικού χρησιμοποιώντας AI

Η ανάλυση κώδικα είναι απαραίτητη για τον εντοπισμό σφαλμάτων, πιθανών τρωτών σημείων, παραβιάσεων μορφοποίησης και άλλα νωρίς στην ανάπτυξη λογισμικού, πριν ο κώδικας χρησιμοποιηθεί οπουδήποτε. Τυπικά, αυτή η διαδικασία πραγματοποιείται παράλληλα με την ανάπτυξη νέου κώδικα και αμέσως μετά την ολοκλήρωσή του, πριν από το ίδιο το στάδιο της δοκιμής. «Οι δοκιμές λογισμικού εξετάζουν τον κώδικα από έξω, αλλά η ανάλυση κώδικα σάς επιτρέπει να τον δείτε από μέσα», εξηγεί ο συνιδρυτής και διευθύνων σύμβουλος της DeepCode, Boris Paskalev, σε συνέντευξή του στο VentureBeat.

Τις περισσότερες φορές, η ανασκόπηση του κώδικα εκτελείται από τους συντάκτες του μαζί με συναδέλφους και διευθυντές προκειμένου να εντοπιστούν προφανή σφάλματα πριν προχωρήσουμε στα επόμενα στάδια ανάπτυξης. Και όσο μεγαλύτερο είναι το έργο, τόσο περισσότερες γραμμές κώδικα πρέπει να ελεγχθούν, κάτι που απαιτεί σημαντικό χρόνο από τους προγραμματιστές. Τα εργαλεία που θα πρέπει να επιταχύνουν αυτή τη διαδικασία υπάρχουν εδώ και πολύ καιρό, όπως οι αναλυτές στατικού κώδικα όπως το Coverity και το PVS-Studio, αλλά τείνουν να περιορίζονται στις δυνατότητές τους καθώς επικεντρώνονται σε «ενοχλητικά και επαναλαμβανόμενα στιλιστικά θέματα, μορφοποίηση και μικρά λογικά λάθη», εξηγεί ο Πασκάλεφ.

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

Ένα από τα βασικά ερωτήματα κατά τη χρήση του DeepCode είναι: πόσο αξιόπιστη είναι η αυτόματη αναθεώρηση κώδικα; Μια ακρίβεια ανάλυσης μικρότερη από 100% σημαίνει ότι οι προγραμματιστές θα πρέπει ακόμα να αναλύσουν τον κώδικά τους με μη αυτόματο τρόπο. Εάν ναι, πόσο χρόνο θα ελευθερώσει πραγματικά η χρήση εργαλείων για την αυτοματοποίηση αυτής της εργασίας; Σύμφωνα με τον Paskalev, το DeepCode θα μπορεί να εξοικονομήσει τους προγραμματιστές περίπου το 50% του χρόνου που αφιερώνουν αυτήν τη στιγμή στην αναζήτηση σφαλμάτων μόνοι τους, κάτι που είναι αρκετά σημαντικό.

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

Το DeepCode θα βρει σφάλματα στον πηγαίο κώδικα του λογισμικού χρησιμοποιώντας AI

«Κατά μέσο όρο, οι προγραμματιστές ξοδεύουν περίπου το 30% του χρόνου τους για να βρουν και να διορθώσουν σφάλματα, αλλά το DeepCode μπορεί να εξοικονομήσει το μισό από αυτόν τον χρόνο τώρα και ακόμη περισσότερο στο μέλλον», λέει ο Boris. «Επειδή το DeepCode μαθαίνει απευθείας από την παγκόσμια κοινότητα προγραμματιστών, είναι σε θέση να βρει περισσότερα προβλήματα από αυτά που θα μπορούσε ποτέ να βρει ένα άτομο ή μια ολόκληρη ομάδα αναθεωρητών».

Εκτός από τα σημερινά νέα σχετικά με τη λήψη επενδύσεων, η DeepCode ανακοίνωσε επίσης μια νέα πολιτική αξίας για το προϊόν της. Μέχρι τώρα, το DeepCode ήταν δωρεάν μόνο για έργα ανάπτυξης λογισμικού ανοιχτού κώδικα. Τώρα θα είναι δωρεάν για χρήση για οποιονδήποτε εκπαιδευτικό σκοπό, ακόμη και για εμπορικές εταιρείες με λιγότερους από 30 προγραμματιστές. Προφανώς, με αυτό το βήμα, οι δημιουργοί του DeepCode θέλουν να κάνουν το προϊόν τους πιο δημοφιλές στις μικρές ομάδες. Επιπλέον, το DeepCode χρεώνει 20 $ ανά προγραμματιστή ανά μήνα για την ανάπτυξη του cloud και 50 $ ανά προγραμματιστή για τοπική υποστήριξη.

Προηγουμένως, η ομάδα του DeepCode είχε ήδη λάβει επενδύσεις ύψους 1 εκατομμυρίου δολαρίων. Με άλλα 4 εκατομμύρια, η εταιρεία είπε ότι σχεδιάζει να επεκτείνει τις γλώσσες προγραμματισμού που υποστηρίζει πέρα ​​από την Java, την JavaScript και την Python, συμπεριλαμβανομένης της προσθήκης υποστήριξης για C#, PHP και C/C++. Επιβεβαίωσαν επίσης ότι εργάζονται για το δικό τους ολοκληρωμένο περιβάλλον ανάπτυξης.



Πηγή: 3dnews.ru

Προσθέστε ένα σχόλιο