Az AI társprogramozói talán nem fognak annyi hibát okozni, mint amennyitől féltek a PlatoBlockchain Data Intelligence-től. Függőleges keresés. Ai.

Az AI-társprogramozók talán nem fognak annyi hibát okozni, mint amennyire féltek

A következő generációs kódkiegészítő eszközöket, például a GitHub Copilotot működtető gépi tanulási modellek segíthetnek a szoftverfejlesztőknek több funkcionális kódot írni anélkül, hogy az kevésbé lenne biztonságos.

Ez a New York-i Egyetem informatikusainak egy csoportja által végzett, bár kicsi, 58 fős felmérés kísérleti eredménye.

In egy papír Az ArXiven keresztül terjesztett Gustavo Sandoval, Hammond Pearce, Teo Nys, Ramesh Karri, Brendan Dolan-Gavitt és Siddharth Garg elmondja, hogyan tették próbára a nagy nyelvi modellek (LLM) segítségével létrehozott forráskód biztonságát.

Az olyan LLM-eket, mint az OpenAI GPT család, hatalmas mennyiségű nyilvános szöveges adatra vagy nyilvános forráskódra képezték ki az OpenAI Codex esetében, amely GPT leszármazottja és a GitHub másodpilótája. Mint ilyenek, reprodukálhatják az emberi programozók által a múltban elkövetett hibákat, illusztrálva a „szemetet be, szemetet ki” elveket. Félő volt, hogy ezek az eszközök visszafolynak, és rossz kódot sugallnak a fejlesztőknek, akik beillesztik a cuccokat a projektjeikbe.

Sőt, a kódbiztonság kontextusfüggő is lehet: az elszigetelten biztonságos kód bizonytalan lehet, ha egy bizonyos sorrendben más szoftverrel hajtják végre. Tehát ezek az automatikus kiegészítő eszközök olyan kódjavaslatokat kínálhatnak, amelyek önmagukban rendben vannak, de más kóddal összekapcsolva, most sebezhetőek a támadásokkal szemben, vagy egyszerűen eltörtek. Ennek ellenére kiderült, hogy ezek az eszközök valójában nem rontják az embereket a programozásban.

Bizonyos értelemben a kutatók saját tüzüket oltották el. Körülbelül egy évvel ezelőtt két ugyanazon informatikus közreműködött az „Alszik a billentyűzetnél? A GitHub másodpilóta kódjainak biztonságának felmérése.” Ez a munka megtalálta körülbelül 40 százalék A Copilot kimenete potenciálisan kihasználható hiányosságokat tartalmazott (CWE-k).

„A különbség a két papír között az, hogy az „Alvó a billentyűzetnél” teljesen automatizált kódgenerálást vizsgált (nincs ember a hurokban), és nem volt emberi felhasználónk, akivel összehasonlíthatnánk, így nem tudtunk semmit mondani arról, hogyan a másodpilóta biztonsága az ember által írt kód biztonságához képest” – mondta Brendan Dolan-Gavitt, mindkét tanulmány társszerzője és a NYU Tandon számítástechnikai és mérnöki tanszékének adjunktusa egy e-mailben. A regisztráció.

„A felhasználói tanulmányok közvetlenül megpróbálják kezelni ezeket a hiányzó részeket úgy, hogy a felhasználók fele segítséget kap a Codextől (a Copilotot működtető modelltől), a másik fele pedig maga írja meg a kódot. Ugyanakkor szűkebb is, mint az „Alvó a billentyűzetnél”: csak egy feladatot és egy nyelvet néztünk meg (C-ben írtunk egy linkelt listát).

A legfrissebb „Security Impplications of Large Language Model Code Assistant: A User Study” című jelentésben a NYU kutatóinak kissé változatos csoportja elismeri, hogy a korábbi munkák nem modellezték reálisan az LLM-alapú eszközök, például a Copilot használatát.

„Először is, ezek a tanulmányok azt feltételezik, hogy a teljes kódot az LLM automatikusan generálja (ezt autopilot módnak fogjuk hívni)” – magyarázzák a boffinok közleményükben.

„A gyakorlatban a kódkiegészítő LLM-ek olyan javaslatokkal segítik a fejlesztőket, amelyek elfogadását, szerkesztését vagy elutasítását választják. Ez azt jelenti, hogy míg az automatizálási elfogultságra hajlamos programozók naivan elfogadhatják a hibás kiegészítéseket, más fejlesztők kevésbé hibás kódot készíthetnek, ha a megspórolt időt a hibák kijavítására használják fel.”

Másodszor, megfigyelik, hogy míg az LLM-ekről kimutatták, hogy hibás kódot állítanak elő, az emberek is ezt teszik. Az LLM képzési adatok hibái az emberektől származnak.

Így ahelyett, hogy önmagában felmérnék az LLM által generált kód hibásságát, arra vállalkoztak, hogy összehasonlítsák, miben különbözik a gépi tanulási modellekkel támogatott emberi fejlesztők által előállított kód az önállóan működő programozással előállított kódtól.

A NYU informatikusai a felmérésben 58 résztvevőt – szoftverfejlesztési kurzusokon részt vevő egyetemi és posztgraduális hallgatókat – toboroztak, és felosztották őket egy kontrollcsoportra, akik javaslatok nélkül dolgoztak, és egy asszisztált csoportra, akik hozzáfértek az OpenAI segítségével épített egyéni javaslattételi rendszerhez. Codex API. Összehasonlításként a Codex modell segítségével 30 megoldást készítettek az adott programozási problémákra. Ez az Autopilot csoport főleg második kontrollcsoportként működött.

Mind a Segített, mind a Vezérlőcsoport számára engedélyezték az internetes források, például a Google és a Stack Overflow konzultálását, de nem kérhettek segítséget másoktól. A munka a Visual Studio Code-ban, egy nyílt forráskódú webalapú tárolóban történt Anubis.

A résztvevőket arra kérték, hogy töltsenek ki egy bevásárlólista programot a C programozási nyelv használatával, mert „a fejlesztők könnyen könnyen kifejezhetik a sebezhető tervezési mintákat C nyelven”, és mivel a használt C fordító eszközlánc nem ellenőrzi a hibákat ugyanolyan mértékben, mint az eszközláncok a modern nyelvek, mint például a Go és a Rust, igen.

Amikor a kutatók manuálisan elemezték a Control és Assistant csoport által készített kódot, azt találták, hogy a korábbi munkával ellentétben az AI kódjavaslatok nem rontották a dolgokat összességében.

Világosnak tűnik, de vannak részletek

"Nem találtunk olyan bizonyítékot, amely arra utalna, hogy a Codex segítsége növelné a biztonsági hibák előfordulását" - szögezte le a lap, ugyanakkor megjegyezte, hogy a tanulmány kis mintája azt jelenti, hogy további vizsgálatokra van szükség. "Éppen ellenkezőleg, vannak olyan bizonyítékok, amelyek arra utalnak, hogy a CWE/LoC [kódsorok] csökkennek a Codex segítségével."

„Nehéz ezt nagy statisztikai önbizalommal levonni” – mondta Siddharth Garg, kiberbiztonsági kutató és a NYU Tandon mérnöki részlegének docense egy telefonos interjúban. A regisztráció.

Nehéz ezt nagy statisztikai önbizalommal levonni

Mindazonáltal azt mondta: "Az adatok azt sugallják, hogy a Copilot felhasználók nem jártak sokkal rosszabbul."

Dolan-Gavitt hasonlóan óvatos a megállapításokkal kapcsolatban.

„Felhasználói vizsgálataink eredményeinek jelenlegi elemzése nem talált statisztikailag szignifikáns különbségeket – ezt még mindig elemezzük, még minőségileg is, ezért ebből nem vonnék le határozott következtetéseket, különösen, mivel ez egy kis vizsgálat volt (összesen 58 felhasználó), és A felhasználók mind diákok, nem pedig professzionális fejlesztők” – mondta.

„Mégis azt mondhatjuk, hogy ezeknél a felhasználóknál ennél a feladatnál az AI segítségnyújtás biztonsági hatása valószínűleg nem volt nagy: ha nagyon nagy volt a hatása, akkor nagyobb különbséget figyeltünk volna meg a két csoport között. Most egy kicsit több statisztikai elemzést végzünk, hogy ezt pontosítsuk.”

Ezen túlmenően más meglátások is felmerültek. Az egyik az, hogy az asszisztens csoport résztvevői produktívabbak voltak, több kódsort generáltak, és a feladatban szereplő funkciók nagyobb hányadát teljesítették.

"Az Assisted csoport felhasználói több funkcionális teszten mentek át, és több funkcionális kódot készítettek" - mondta Garg, hozzátéve, hogy az ilyen típusú eredmények segíthetnek a kisegítő kódolási eszközöket kereső cégeknek eldönteni, hogy telepítik-e azokat.

A másik az, hogy a kutatók meg tudták különböztetni a Control, Assisted és Autopilot csoportok által termelt kimenetet, ami enyhítheti aggodalmak az AI-power csalásról oktatási környezetben.

A boffinok azt is megállapították, hogy a mesterséges intelligencia eszközöket figyelembe kell venni a felhasználói hibák kontextusában. „A felhasználók olyan promptokat adnak, amelyek tartalmazhatnak hibákat, elfogadják a hibás promptokat, amelyek a „befejezett” programokba kerülnek, valamint elfogadják azokat a hibákat, amelyeket később eltávolítanak” – írja a lap. „Egyes esetekben a felhasználók több hibával is találkoznak, mint amennyit a modell javasolt!”

További munkára kell számítani ezen a téren. ®

Időbélyeg:

Még több A regisztráció