Το Facebook ανέπτυξε ένα εργαλείο τεχνητής νοημοσύνης για να βοηθήσει τους προγραμματιστές με το «patching» προβληματικού ή «buggy» κώδικα.

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

Τo SapFix έχει ήδη βοηθήσει την εταιρεία να ενισχύσει τον κώδικα του app της στο Android, και τα αποτελέσματα ήταν τόσο ενθαρρυντικά που εκπρόσωπος του Facebook στο συνέδριο engineering Scale δήλωσε ότι το εργαλείο θα διανεμηθεί και στη κοινότητα των developers. 

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

Sapfix2-796x369.png.83cff5ebe8b9edbae60f395314dff6d6.png

Για να διορθώσει ένα bug, το εργαλείο «επαναστρέφει» πλήρως ή μερικώς τον κώδικα (επαναφέρει σε προηγούμενη κατάσταση) που το προκάλεσε. Για να διαχειριστεί περισσότερο σύνθετα bugs, είτε επιλέγει ένα παλαιότερο πρότυπο από κάποια προηγούμενη γνωσιακή βάση, είτε κάνει μικρές αλλαγές ή μεγάλες ωσότου διορθωθεί το σφάλμα. Το SapFix δημιουργεί πολλαπλές επιδιορθώσεις, τις οποίες δοκιμάζει ενάντια σε τρεις παραμέτρους:

  • Υπάρχουν σφάλματα στη σύνταξη του κώδικα;
  • Συνεχίζεται το «crashing»;
  • Μήπως κάποια από τα «crashes» οφείλονται στο νέο fix;

Μόλις το εργαλείο επιλέξει το κατάλληλο fix, "το στέλνει" στους μηχανικούς για έλεγχο και feedback.

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

Η ομάδα του SapFix εργάζεται επί του παρόντος πάνω στην εκπαίδευση του εργαλείου για τον εντοπισμό crashes προτού συμβούν. Μόλις ολοκληρωθεί η ανάπτυξη των Sapienz και SapFix, σύμφωνα με το Facebook, θα διατεθούν ως εργαλεία ανοιχτού κώδικα.

The Next Web

  • Like 2