A DeepCode megkeresi a hibákat a szoftver forráskódjában az AI segítségével

Ma egy svájci startup DeepCode, amely mesterséges intelligenciát és gépi tanulást használ a kódelemzés automatizálására, bejelentette, hogy 4 millió dollár befektetést kapott az Earlybird, a 3VC és a Btov Partners kockázati alapoktól. A cég ezeket az összegeket arra tervezi, hogy új programozási nyelvek támogatását vezesse be szolgáltatásába, valamint a terméket a globális IT-piacon értékesítse.

A DeepCode megkeresi a hibákat a szoftver forráskódjában az AI segítségével

A kódelemzés szükséges a hibák, a potenciális sebezhetőségek, a formázási hibák és a szoftverfejlesztés korai szakaszában történő észleléséhez, még mielőtt a kódot bárhol felhasználnák. Ezt az eljárást általában az új kód fejlesztésével párhuzamosan és közvetlenül annak befejezése után hajtják végre, magát a tesztelési szakaszt megelőzően. "A szoftvertesztelés kívülről nézi a kódot, de a kódelemzés lehetővé teszi, hogy belülről nézze meg" - magyarázza a DeepCode társalapítója és vezérigazgatója, Boris Paskalev a VentureBeatnek adott interjújában.

A kódellenőrzést leggyakrabban annak szerzői végzik kollégáival és vezetőivel együtt, hogy a nyilvánvaló hibákat azonosítsák, mielőtt a fejlesztés következő szakaszába lépnének. És minél nagyobb a projekt, annál több kódsort kell ellenőrizni, ami jelentős mennyiségű programozói időt igényel. A folyamatot felgyorsító eszközök már régóta léteznek, mint például a statikus kódelemzők, mint a Coverity és a PVS-Studio, de képességeik korlátozottak, mivel a „bosszantó és ismétlődő stilisztikai problémákra, formázásra és kis logikai hibák” – magyarázza Paskalev.

A DeepCode viszont a problémák szélesebb körét fedi le, például olyan sebezhetőségek felderítését, mint például a több helyek közötti szkriptelés és az SQL-injektálás lehetőségei, mivel a benne beágyazott algoritmusok nem csupán karakterkészletként elemzik a kódot, hanem megpróbálják megérteni a munka írott programok jelentését és célját. Ennek középpontjában egy gépi tanulási rendszer áll, amely nyilvánosan elérhető nyílt forráskódú projektekből származó kódsorok milliárdjait használja fel képzéséhez. A DeepCode elemzi a kód korábbi verzióit és az azt követő módosításokat, hogy megvizsgálja, milyen hibákat és hogyan javították ki a valódi programozók a munkájukat, majd hasonló megoldásokat kínál a felhasználóknak. Ezen kívül a rendszer hagyományos előrejelző algoritmusokat is használ a kód lehetséges problémáinak megtalálására, mint például a fent említett statikus analizátorok.

Az egyik kulcskérdés a DeepCode használatakor: mennyire megbízható az automatikus kódellenőrzés? A 100%-nál kisebb elemzési pontosság azt jelenti, hogy a fejlesztőknek továbbra is manuálisan kell elemezniük a kódjukat. Ha igen, mennyi időt szabadít fel ténylegesen a feladat automatizálására szolgáló eszközök használata? Paskalev szerint a DeepCode képes lesz megspórolni a fejlesztők számára a jelenleg a hibakereséssel töltött idő mintegy 50%-át, ami igen jelentős szám.

A fejlesztők csatlakoztathatják a DeepCode-ot GitHub- vagy Bitbucket-fiókjukhoz, és az eszköz támogatja a helyi GitLab-konfigurációkat is. Ezenkívül a projekt rendelkezik egy speciális API-val, amely lehetővé teszi a fejlesztők számára, hogy integrálják a DeepCode-ot saját fejlesztési rendszereikbe. Miután csatlakozott a tárolóhoz, a DeepCode minden kódváltozást elemezni fog, és megjelöli a lehetséges problémákat.

A DeepCode megkeresi a hibákat a szoftver forráskódjában az AI segítségével

„A fejlesztők átlagosan idejük 30%-át töltik a hibák felkutatásával és kijavításával, de a DeepCode ennek az időnek a felét megtakaríthatja most, és a jövőben még többet” – mondja Boris. "Mivel a DeepCode közvetlenül a fejlesztők globális közösségétől tanul, több problémát képes találni, mint amennyit egy személy vagy egy egész csoport értékelő valaha is találna."

A befektetések fogadásáról szóló mai hírek mellett a DeepCode új értékpolitikát is bejelentett termékéhez. A DeepCode eddig csak nyílt forráskódú szoftverfejlesztési projektekhez volt ingyenes. Mostantól ingyenes lesz bármilyen oktatási célra, de még a 30-nál kevesebb fejlesztővel rendelkező kereskedelmi cégek számára is. Nyilvánvalóan ezzel a lépéssel a DeepCode készítői szeretnék népszerűbbé tenni terméküket a kis csapatok körében. Ezenkívül a DeepCode fejlesztőnként havi 20 dollárt számít fel a felhőbe történő telepítésért, és fejlesztőnként 50 dollárt a helyi támogatásért.

Korábban a DeepCode csapata már 1 millió dolláros befektetést kapott. További 4 millióval a cég azt mondta, hogy a Java, a JavaScript és a Python mellett a támogatott programozási nyelvek bővítését tervezi, beleértve a C#, PHP és C/C++ támogatását is. Azt is megerősítették, hogy saját integrált fejlesztői környezetükön dolgoznak.



Forrás: 3dnews.ru

Hozzászólás