
Egy kutatócsoport nemrégiben közzétett egy átfogó térképet a mesterséges intelligencia (MI) szoftverfejlesztési kihívásairól, és egy kutatási ütemtervet javasolt a terület további fejlesztésére.
Képzeljünk el egy olyan jövőt, ahol a mesterséges intelligencia csendben átveszi a szoftverfejlesztés fárasztó feladatait: az összetett kódok refaktorálását, a régi rendszerek migrálását és a rasszokon alapuló hibák nyomon követését, hogy az emberi szoftvermérnökök teljes mértékben a rendszerarchitektúrára, a tervezésre és a gépek által még megoldhatatlan kreatív problémákra koncentrálhassanak. Úgy tűnik, hogy a mesterséges intelligencia területén elért legújabb fejlesztések nagyon közel hoztak ehhez a vízióhoz.
Az MIT Számítástechnikai és Mesterséges Intelligencia Laboratóriumának (CSAIL) és partner kutatóintézeteinek tudósai által végzett új tanulmány azonban kimutatta, hogy ahhoz, hogy megvalósítsuk ezt a jövőt, először szembe kell néznünk a jelen pillanat nagyon is valós kihívásaival.
„Sokan azt mondják, hogy a programozókra már nincs szükség, mert a mesterséges intelligencia mindent automatizált” – osztotta meg Armando Solar-Lezama professzor, az MIT villamosmérnöki és számítástechnikai előadója, a CSAIL vezető kutatója és a tanulmány vezető szerzője. „A valóságban nagyon jelentős előrelépést tettünk. A most rendelkezésünkre álló eszközök sokkal hatékonyabbak, mint korábban. De ahhoz, hogy az automatizálás teljes potenciálját elérjük, még hosszú utat kell megtennünk.”
Armando Solar-Lezama professzor szerint a jelenlegi uralkodó felfogás leegyszerűsíti a szoftverfejlesztést egy olyan feladatra, mint egy diák programozási feladata: egy kis függvényhozzárendelés fogadása és a kezeléséhez szükséges kód megírása, vagy egy LeetCode-stílusú feladat elvégzése. Eközben a valóság sokkal összetettebb: a kódrefaktorálástól a tervezés optimalizálásán át a COBOL-ról Java-ra történő több millió sornyi kód nagymértékű migrációjáig, amely alapvetően megváltoztatja egy vállalat technológiai platformját.
A mérés és a kommunikáció továbbra is kihívást jelentő problémák.
Az ipari méretű kódoptimalizálás – mint például a GPU-mag finomhangolása vagy a Chrome V8 többszintű fejlesztései – továbbra is nehéz felmérni. A jelenlegi benchmarkok elsősorban a kis, csomagolt problémákra összpontosítanak. A jelenleg elérhető legpraktikusabb mérőszám, az SWE-Bench, egyszerűen egy MI-modellt igényel a GitHub-on lévő hiba javításához – ami egy alacsony szintű programozási gyakorlatnak felel meg, néhány száz sornyi kóddal, adatszivárgás lehetőségével, és számos más valós forgatókönyv figyelmen kívül hagyásával, mint például a MI által támogatott refaktorálás, az ember-gép programozás vagy a nagy teljesítményű rendszerek több millió sornyi kóddal történő átírása. Amíg a benchmarkokat nem bővítik ki a nagyobb kockázatú forgatókönyvekre, az előrehaladás mérése – és így annak előmozdítása – továbbra is nyitott kihívás marad.
Továbbá az ember-gép kommunikáció is jelentős akadály. A vezető szerző, Alex Gu, végzős hallgató kijelentette, hogy jelenleg a mesterséges intelligenciával való interakció olyan, mint „egy vékony kommunikációs szál”. Amikor arra kéri a mesterséges intelligenciát, hogy kódot generáljon, gyakran nagy, strukturálatlan fájlokat kap néhány egyszerű és kezdetleges tesztesettel együtt. Ez a hiányosság abban is megmutatkozik, hogy a mesterséges intelligencia nem képes hatékonyan használni az emberek számára ismerős szoftvereszközöket, például a hibakeresőket és a statikus analizátorokat.
Felhívás cselekvésre a közösség részéről.
A szerzők azzal érvelnek, hogy ezekre a problémákra nincs varázspálca-megoldás, és közösségi szintű erőfeszítéseket sürgetnek: olyan adatok építését, amelyek tükrözik a programozók tényleges fejlesztési folyamatát (melyik kódot tartják meg, melyiket vetik el, hogyan refaktorálják a kódot az idő múlásával stb.), közös értékelő eszközöket a refaktorálás minőségének, a javítások tartósságának és a rendszerátmenetek pontosságának felmérésére; valamint átlátható eszközök létrehozását, amelyek lehetővé teszik a mesterséges intelligencia számára a bizonytalanság kifejezését és az emberi beavatkozás ösztönzését.
Alex Gu végzős hallgató ezt egy olyan „cselekvésre való felhívásnak” tekinti a nagyszabású, nyílt forráskódú közösségek számára, amelyet egyetlen laboratórium sem tud elérni. A Solar-Lezama a haladást apró, egymást erősítő lépésekből – „a probléma egyes részeit szekvenciálisan kezelő kutatási eredményekből” – képzeli el, ezáltal a mesterséges intelligenciát egy „kódajánló eszközből” valódi mérnöki partnerré alakítva.
„Miért fontos ez? A szoftverek ma már a pénzügy, a közlekedés, az egészségügy és minden mindennapi tevékenység alapját képezik. De az emberi erőfeszítések ezek biztonságos felépítésére és karbantartására szűk keresztmetszetet jelentenek” – osztotta meg Gu. „Egy olyan mesterséges intelligencia, amely képes kezelni a nehéz feladatokat rejtett hibák nélkül, lehetővé tenné a programozók számára, hogy a kreativitásra, a stratégiára és az etikára összpontosítsanak. De ennek eléréséhez meg kell értenünk, hogy egy kódrészlet befejezése csak a könnyű rész – a nehéz minden másban rejlik.”
(Az MIT News alapján)
Forrás: https://vietnamnet.vn/hanh-trinh-dai-cua-ai-trong-ky-thuat-phan-mem-tu-dong-hoa-2426456.html






Hozzászólás (0)