Facebook рассказал об инструменте для автоматического исправления кода Getafix

Facebook рассказал об инструменте для автоматического исправления кода Getafix
16.12.2018
10887

В своем блоге Facebook рассказал о принципе работы Getafix. Программа создана для автоматического исправления кода.

Принцип работы заключается в исправлении багов, найденных анализатором Infer, также созданным Facebook. Инструмент предлагает правки для ошибок, обнаруженных системой тестирования приложений.

Принцип работы

Инструмент создан для того, чтобы инженеры тратили меньше времени на поиск ошибок в коде. Но если Getafix обнаружит проблему, решение за исправлением бага все равно остается за программистом. Нейронная сеть учится на правках, внесенных инженером ранее, и сверяет их с контекстом фрагмента кода. Затем предлагает пути исправления ошибки.

 

Схема работы Getafix

 

Программа создана специально для Facebook, но способна работать с любым сервисом или приложением. Это позволит распространить его на другие свои службы, в частности и на VR-подразделение компании.

Отличие от аналогов

Аналоги Getafix могут решать лишь базовые задачи и совсем не опираются на контекст. Инструмент Facebook способен в одной ситуации предложить разные пути решения. Это необходимо, когда требуется нерутинный способ решения проблемы, позволяющий сделать код более удобным и менее громоздким.

 

Пример работы Getafix с кодом

 

Что на практике?

Facebook проверил систему в условиях исправления 200 багов и сравнил результат ее работы с работой человека. Только четверть решений совпала с решением программиста.

Еще одна проверка с 2 тысячами багов на исправление метода нулевого указателя показала, что 53% всех багов ИИ смог обнаружить и исправить сразу.

У Facebook уже есть похожий инструмент на основе ИИ для генерирования и внедрения патчей Sapfix. ПО ищет ошибки в коде и самостоятельно генерирует и предлагает патчи для исправления неточностей. Если патч не подойдет, нейросеть будет подбирать варианты до тех пор, пока код не заработает. Решение может работать как «самостоятельно», так и в сочетании с умным тестировочным ПО Sapienz, предназначенным для поиска ошибок в коде.

Автор:
Обозреватель

См. также

Вышла новая версия Geany 2.0. Обновление затронуло внешний вид программы, расширило поддержку файлов и сторонних проектов, добавило новые способы работы с кодом.

25.10.2023    1053    VKuser24342747    0       

1

«СберТех» начал прием заявок на тестирование веб-сервиса для публикации ИТ-проектов GitVerse. Платформа подходит для разработки программ с открытым и закрытым кодом.

26.09.2023    1339    VKuser24342747    2       

1

GitLab представила собственную нейросеть Code Suggestions, способную генерировать код по запросу на естественном языке. ИИ-помощник поддерживает работу с 13 языками программирования.

10.07.2023    1752    VKuser24342747    0       

1

Сумма сделки не раскрывается, но близкие к компаниям источники говорят о сумме в 1 млрд долларов, сообщает Bloomberg.

30.09.2019    19140    user1015646    3       

2

Facebook анонсировал новый JavaScript-движок Hermes. Решение с открытым исходным кодом упрощает разработку Android-приложений для слабых смартфонов. 

17.07.2019    20841    user1015646    16       

4

Специалист отдела исследований ИИ Facebook Роберто Каландра рассказал о том, чего уже достигла компания, и как роботы учатся познавать мир.

25.05.2019    24912    user1015646    5       

1

Код пяти новых инструментов выложили в открытый доступ разработчики Facebook. Два из них созданы для работы с системами искусственного интеллекта и технологиями машинного обучения.

08.05.2019    8145    user1015646    0       

1

Facebook работает над созданием криптовалюты, которая позволит переводить деньги в мессенджере WhatsApp. У разработчиков амбициозные планы, но компания сталкивается с трудностями при наборе персонала на фоне многочисленных скандалов.

27.12.2018    18747    SKravchenko    2       

9

Пользуетесь ли вы средством автоисправления кода?


Да, часто, очень помогает в работе (20%, 2 голосов)
20%
Да, но редко (10%, 1 голосов)
10%
Нет, ищу и исправляю ошибки самостоятельно (70%, 7 голосов)
70%

Комментарии

Инфостарт бот
1. d.zhukov 16.12.18 13:35 Сейчас в теме
Синтаксис-помощник на максималках?
SagittariusA; +1 Ответить
2. Dem1urg 16.12.18 20:37 Сейчас в теме
Непонятно, что Getafix считает ошибкой? Ошибки синтаксиса и без нейросетей отлично ловятся.

Оставьте свое сообщение