Význam nového výzkumu v oblasti AI a softwarového inženýrství
V dnešní době se stále více zaměřujeme na to, jak umělá inteligence (AI) může změnit oblast softwarového inženýrství. Nový výzkum se snaží zjistit, zda AI může samostatně vykonávat úkoly typické pro softwarové inženýry. Tím by se nejen zrychlil proces vývoje softwaru, ale také by se zvýšila jeho přesnost. Díky tomuto pokroku by firmy mohly vytvářet samočinné učící se agenty, kteří by zvládali úkoly jako hledání chyb, testování a odstraňování chyb.
Jak funguje systém SSR
Systém SSR (Self-Supervised Research) využívá velký jazykový model, který plní dvě odlišné role: ‚vkladač chyb‘ a ‚řešitel chyb‘. Když model funguje jako vkladač chyb, úmyslně vkládá chyby do kódu, například odstraněním řádku, změnou logiky nebo opakováním starých změn. Následně, při fungování jako řešitel chyb, tento model identifikuje chyby a generuje správný kód. Tento proces se opakuje, čímž AI sama získává nové vzory programování a řešení problémů.
Prostředí pro trénink
Celý trénink probíhá v otevřených repozitářích a v prostředí Docker sandbox, kde může model bezpečně experimentovat a učit se z reálného kódu. Otevřené repozitáře představují veřejné úložiště kódu, které může kdokoli zhlédnout, používat a zdokonalovat, zatímco Docker sandbox jsou bezpečná a izolovaná místa, kde lze kód testovat bez rizika poškození systému.
Revoluce proti tradičním systémům
Dosud byly AI kódovací agenti trénováni na datech napsaných lidmi. Schopnosti těchto systémů byly omezené, protože modely se učily pouze z již existujících příkladů. Systém SSR tuto závislost eliminuje. Místo toho, aby vycházel ze starých dat, systematicky hledá nové problémy a rozvíjí vlastní řešení.
Úspěchy nového systému
Podle společnosti Meta dosáhl SSR překonání předchozích záznamů v populárních benchmarcích SWE-Bench Verified a SWE-Bench Pro. V testu Verified získal o 10,4 bodu více než předchozí nejlepší systém, zatímco v testu Pro byl o 7,8 bodu napřed. Tyto výsledky ukazují, že jeho výkon převyšuje i modely, které byly trénovány na velkých objemech dat od lidí.
Celý tento výzkum naznačuje, že budoucnost programování a softwarového průmyslu se může výrazně změnit. Přechod od lidského zásahu k základním schopnostem AI v psaní a opravě kódu přináší nový pohled na to, jak mohou technologie ovlivnit naši práci a školení v oblasti softwarového inženýrství.

