Makakakita ang DeepCode ng mga error sa source code ng software gamit ang AI

Ngayon ay isang Swiss startup DeepCode, na gumagamit ng artificial intelligence at machine learning para i-automate ang code analysis, ay nag-anunsyo na nakatanggap ito ng $4 milyon na pamumuhunan mula sa venture funds Earlybird, 3VC at Btov Partners. Plano ng kumpanya na gamitin ang mga pondong ito upang ipakilala ang suporta para sa mga bagong programming language sa serbisyo nito, pati na rin ang i-market ang produkto sa pandaigdigang merkado ng IT.

Makakakita ang DeepCode ng mga error sa source code ng software gamit ang AI

Kinakailangan ang pagsusuri ng code upang matukoy ang mga error, potensyal na kahinaan, mga paglabag sa pag-format, at mas maaga sa pagbuo ng software, bago gamitin ang code kahit saan. Karaniwan, ang pamamaraang ito ay isinasagawa nang kahanay sa pagbuo ng bagong code at kaagad pagkatapos na makumpleto ito, bago ang mismong yugto ng pagsubok. "Ang pagsubok ng software ay tumitingin sa code mula sa labas, ngunit pinapayagan ka ng pagsusuri ng code na tingnan ito mula sa loob," paliwanag ng co-founder at CEO ng DeepCode na si Boris Paskalev sa isang pakikipanayam sa VentureBeat.

Kadalasan, ang pagsusuri ng code ay ginagawa ng mga may-akda nito kasama ng mga kasamahan at tagapamahala upang matukoy ang mga halatang error bago magpatuloy sa susunod na mga yugto ng pag-unlad. At kung mas malaki ang proyekto, mas maraming linya ng code ang kailangang suriin, na tumatagal ng malaking halaga ng oras ng mga programmer. Matagal nang umiiral ang mga tool na dapat magpabilis sa prosesong ito, tulad ng mga static code analyzer gaya ng Coverity at PVS-Studio, ngunit malamang na limitado ang mga ito sa kanilang mga kakayahan habang nakatuon sila sa β€œnakakainis at paulit-ulit na mga isyung pangkakanyahan, pag-format at maliliit na lohikal na pagkakamali,” paliwanag ni Paskalev.

Ang DeepCode naman, ay sumasaklaw sa mas malawak na hanay ng mga problema, halimbawa, pag-detect ng mga kahinaan tulad ng mga pagkakataon para sa cross-site scripting at SQL injection, dahil ang mga algorithm na naka-embed dito ay hindi lamang nagsusuri ng code bilang isang set ng mga character, ngunit subukang maunawaan ang kahulugan at layunin ng gawaing nakasulat na mga programa. Sa gitna nito ay isang machine learning system na gumagamit ng bilyun-bilyong linya ng code mula sa mga pampublikong available na open source na proyekto para sa pagsasanay nito. Sinusuri ng DeepCode ang mga nakaraang bersyon ng code at ang mga kasunod na pagbabagong ginawa dito upang pag-aralan kung anong mga error at kung paano itinama ng mga totoong programmer ang kanilang trabaho, at pagkatapos ay nag-aalok ng mga katulad na solusyon sa mga gumagamit nito. Bilang karagdagan, gumagamit din ang system ng mga tradisyunal na algorithm ng paghula upang mahanap ang mga posibleng problema sa code, tulad ng mga static na analyzer na binanggit sa itaas.

Ang isa sa mga pangunahing tanong kapag gumagamit ng DeepCode ay: gaano ka maaasahan ang awtomatikong pagsusuri ng code? Ang katumpakan ng pagsusuri na mas mababa sa 100% ay nangangahulugan na kailangan pa ring manu-manong suriin ng mga developer ang kanilang code. Kung gayon, gaano katagal ang paggamit ng mga tool upang i-automate ang gawaing ito ay talagang magpapalaya? Ayon kay Paskalev, ang DeepCode ay makakapag-save ng mga developer tungkol sa 50% ng oras na kasalukuyan nilang ginugugol sa paghahanap ng mga error sa kanilang sarili, na medyo isang makabuluhang figure.

Maaaring ikonekta ng mga developer ang DeepCode sa kanilang mga GitHub o Bitbucket account, at sinusuportahan din ng tool ang mga lokal na configuration ng GitLab. Bukod pa rito, ang proyekto ay may espesyal na API na nagpapahintulot sa mga developer na isama ang DeepCode sa kanilang sariling mga sistema ng pag-unlad. Kapag nakakonekta na sa repositoryo, susuriin ng DeepCode ang bawat pagbabago ng code at i-flag ang mga potensyal na problema.

Makakakita ang DeepCode ng mga error sa source code ng software gamit ang AI

"Sa karaniwan, ang mga developer ay gumugugol ng humigit-kumulang 30% ng kanilang oras sa paghahanap at pag-aayos ng mga bug, ngunit ang DeepCode ay maaaring makatipid sa kalahati ng oras na iyon ngayon, at higit pa sa hinaharap," sabi ni Boris. "Dahil ang DeepCode ay direktang natututo mula sa pandaigdigang komunidad ng mga developer, nakakahanap ito ng higit pang mga problema kaysa sa isang tao o isang buong grupo ng mga reviewer na maaaring mahanap kailanman."

Bilang karagdagan sa balita ngayon tungkol sa pagtanggap ng pamumuhunan, inihayag din ng DeepCode ang isang bagong patakaran sa halaga para sa produkto nito. Hanggang ngayon, libre lang ang DeepCode para sa mga open source software development projects. Ngayon ay magiging libre na ito para magamit para sa anumang layuning pang-edukasyon at maging para sa mga komersyal na kumpanya na may mas kaunti sa 30 mga developer. Malinaw, sa hakbang na ito, nais ng mga tagalikha ng DeepCode na gawing mas sikat ang kanilang produkto sa maliliit na koponan. Bukod pa rito, naniningil ang DeepCode ng $20 bawat developer bawat buwan para sa cloud deployment at $50 bawat developer para sa lokal na suporta.

Noong nakaraan, ang koponan ng DeepCode ay nakatanggap na ng mga pamumuhunan na $1 milyon. Sa isa pang 4 na milyon, sinabi ng kumpanya na plano nitong palawakin ang mga programming language na sinusuportahan nito sa kabila ng Java, JavaScript at Python, kabilang ang pagdaragdag ng suporta para sa C#, PHP at C/C++. Kinumpirma din nila na nagtatrabaho sila sa kanilang sariling pinagsama-samang kapaligiran sa pag-unlad.



Pinagmulan: 3dnews.ru

Magdagdag ng komento