Problémy s dodržiavaním autorských práv pri prepisovaní ScanCode na Rust pomocou AI

Sprievodný otvorený nástroj ScanCode Toolkit, určený na skenovanie kódu z hľadiska porušovania autorských práv, identifikáciu použitých licencií a objavovanie nevyriešených zraniteľností, skritizoval projekt, ktorý vytvoril pomocou AI klon produktu ScanCode, prepísaný z Pythonu na Rust (názov klonu nie je uvedený, ale podľa všetkých znakov ide o projekt Provenant). Tvrdí sa, že v prepísanom projekte došlo k porušeniu ochrannej známky ScanCode a odstránili sa zmienky o autorských právach a licenciách. Námietky sú vysvetlené tým, že v prepísanom klone pokračuje používanie kľúčových algoritmov ScanCode, zachováva sa architektúra projektu a štruktúra kódu.

Podľa sprievodcu ScanCode úspešnému vytvoreniu klonu pomohla existencia komplexného automatizovaného testovacieho súboru, ktorý obsahuje viac ako 90 tisíc testov, z ktorých 40 tisíc je zameraných na odhaľovanie použitých licencií v kóde. Autori prepísanej verzie uviedli na zvýšenie výkonu (10-100 krát), ale podľa slov sprievodcu ScanCode bola cena za zrýchlenie úplné neprekročenie testovacieho súboru a taktiež zníženie correctness a úplnosti poskytovaných informácií (klon vykazoval nesprávne výsledky a nenašiel všetky informácie pri analýze).

Ak v špeciálnych testoch výkonu Rust-port výrazne prekonal ScanCode, pri prechode štandardným testovacím súborom sa klon ukázal byť pomalší, aj keď sa v ňom vynechali niektoré kontroly. Po vykonaní optimalizácií v ScanCode, ako je cachovanie, výkon ScanCode pri skenovaní kódu sa stal porovnateľným s klonom na Rust, pri úplnom zachovaní correctness.

Autorom klonu sa tiež pripisuje porušenie autorských práv a licencie Apache 2.0, pod ktorou je distribuovaný kód ScanCode. Uvádza sa, že počas prepísania došlo k porušeniu 4 hlavných požiadaviek licencie: ponechanie pôvodného súboru s poznámkou (NOTICE), zachovanie zmienok o autorských právach, vyčlenenie vykonaných zmien a zmena názvu vo derivačnej práci. Po upozornení autori klonu umiestnili súbor NOTICE a premenovali svoj projekt, ale dve ostatné porušenia zatiaľ ostávajú neopravené.

Sprievodca ScanCode sa domnieva, že spoločenstvo by malo vypracovať kritériá na rozlíšenie toho, čo považovať za odvodzované dielo pri využívaní AI a čo za nezávislú implementáciu. Podľa neho, po prepísaní kódu do iného jazyka pri zachovaní algoritmov a štruktúry, výsledok zostáva odvodzovaným dielom, aj keď boli v procese premenované premenné a upravené alebo odstránené komentáre. Vyhlásenia autorov Rust-portu o nezávislej prerábke, ktorá je len inšpirovaná projektom ScanCode, sú v tomto prípade nesprávne, pretože práca je zameraná na vytvorenie dojmu pôvodnej vývoja, čo je horšie ako priamy kopírovanie, pretože takéto manipulácie sú ťažšie odhaliteľné.

Značnou problematikou pri generovaní kódu prostredníctvom AI je absencia sledovania pôvodu kódu, ktorý bol použitý na získanie výsledku. Predvolene AI agenty, ktoré používajú kód z otvorených projektov, ignorujú informácie o autoroch, pokiaľ nie sú špeciálne implementované prostriedky na identifikáciu a uchovanie metadát o licenciách a autorstve. Problém atribúcie sa týka nielen prepisovania kódu z jedného jazyka do druhého, ale aj generovania kódu vo všeobecnosti - výsledok v tomto prípade môže dostatočne presne opakovať šablóny z existujúceho otvoreného kódu, ktorý bol použitý v procese učenia modelu.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster