DeepCode ще намери грешките в изходния код на софтуера с помощта на ИИ

Днес швейцарският стартъп DeepCode, който използва изкуствен интелект и машинно обучение за автоматизация на анализа на програмния код, обяви, че е получил инвестиции в размер на 4 милиона долара от венчурните фондове Earlybird, 3VC и Btov Partners. Компанията планира да изразходва тези средства за внедряване на нови програмни езици в услугата си, а също и за маркетинг на продукта на глобалния ИТ пазар.

DeepCode ще намери грешките в изходния код на софтуера с помощта на ИИ

Анализът на кода е необходим за откриване на грешки, потенциални уязвимости, нарушения на общоприетия формат и много други на ранните етапи на разработване на софтуер, преди кодът да бъде използван някъде. Обикновено тази процедура се извършва паралелно с разработката на нов код и веднага след приключването му, предшестваща етапа на тестиране. „Тестът на софтуера разглежда кода отвън, но анализът на кода позволява да го видите отвътре“, обяснява съоснователят и главен изпълнителен директор на DeepCode Борис Паскалев в интервю за VentureBeat.

Най-често проверката на кода се извършва от самите автори в сътрудничество с колеги и мениджъри с цел откриване на очевидни грешки, преди да се премине към следващите етапи на разработка. И колкото по-голям е проектът, толкова повече редове код трябва да се проверят, което отнема значително време на програмистите. Инструменти, които трябва да ускорят този процес, съществуват от доста време, например статични анализатори на код, като Coverity и PVS-Studio, но те обикновено са ограничени в своите възможности, тъй като са фокусирани върху „досадни и повтарящи се стилови проблеми, форматиране и малки логически грешки“, обяснява Паскалев.

DeepCode обхваща по-широк набор от проблеми, като например откриването на уязвимости, като междусайтов скриптинг и SQL инжекции, тъй като вградените му алгоритми не просто анализират кода като набор от символи, а се опитват да разберат смисъла и целта на написаната програма. В основата на това лежи система за машинно обучение, която използва за обучението си милиарди редове код от публични проекти с отворен код. DeepCode анализира предшестващи версии на кода и последващите изменения, направени в него, за да проучи какви грешки и как са били коригирани от реални програмисти в тяхната работа и след това предлага подобни решения на своите потребители. Освен това системата използва и традиционни алгоритми за прогнозиране, за да открие възможни проблеми в кода, подобно на споменатите по-горе статични анализатори.

Един от ключовите въпроси при използването на DeepCode е: колко надеждна е автоматичната проверка на кода? Точността на анализа е под 100 %, което означава, че разработчиците все пак ще трябва да анализират кода си ръчно. В такъв случай, колко време всъщност ще спести използването на инструменти за автоматизация на тази задача? Според Паскалев, DeepCode може да спести на разработчиците около 50 % от времето, което в момента инвестират в търсене на грешки самостоятелно, което е доста значителна цифра.

Разработчиците могат да свържат DeepCode с техните акаунти в GitHub или Bitbucket, а инструментът също така поддържа локални конфигурации на GitLab. Допълнително, проектът разполага със специален API, който позволява на разработчиците да интегрират DeepCode в собствените си системи за разработка. След свързване със хранилището, DeepCode ще анализира всяка промяна в кода и ще отбелязва потенциални проблеми.

DeepCode ще намери грешките в изходния код на софтуера с помощта на ИИ

«Средно разработчиците отделят около 30 % от времето си за търсене и отстраняване на грешки, но DeepCode може да спести половината от това време още сега, а в бъдеще - още повече», утверждава Борис. «Тъй като DeepCode се учи директно от глобалната общност на разработчиците, той е в състояние да открива повече проблеми, отколкото която и да е личност или цяла група рецензенти някога би могла да намери.»

Освен днешната новина за получаване на инвестиции, DeepCode обяви и нова ценова политика за своя продукт. Досега DeepCode беше безплатен само за проекти с отворен код. Сега той ще бъде безплатен за използване в образователни цели и дори за комерчески компании с по-малко от 30 разработчици. Очевидно е, че с този ход създателите на DeepCode искат да направят продукта си по-популярен сред малките екипи. В допълнение, DeepCode таксува 20 долара на разработчик на месец при внедряване на решение в облака и 50 долара на разработчик за локална поддръжка.

По-рано екипът на DeepCode вече получи инвестиции в размер на 1 милион долара. С налични още 4 милиона, компанията заяви, че планира да разшири поддържаните от тях програмни езици, освен Java, JavaScript и Python, включително да добави поддръжка на C#, PHP и C/C++. Те също потвърдиха, че работят по собствена интегрирана среда за разработка.



Източник: 3dnews.ru
Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster