Umělá inteligence umí psát kód. Ale dokáže ho udržovat? Nový test odhalil zásadní slabinu AI programátorů
11. 3. 2026 – 11:24 | Technologie | Miroslav Krajča |Diskuze:
Umělá inteligence dnes dokáže generovat programový kód během několika sekund. Nový výzkum však ukazuje, že skutečná výzva začíná až poté. Studie analyzující dlouhodobý vývoj softwaru naznačuje, že většina AI modelů selhává při udržování kódu v průběhu měsíců, což je v reálném vývoji softwaru klíčová schopnost.
Vývoj softwaru se v posledních letech dramaticky proměnil díky nástrojům založeným na umělé inteligenci. Programátoři dnes používají asistenty, kteří dokážou generovat celé funkce, navrhovat architekturu aplikací nebo automaticky opravovat chyby. Na první pohled se může zdát, že AI směřuje k tomu, aby se stala plnohodnotným programátorem.
Nová studie však ukazuje, že realita je mnohem složitější. Výzkumníci analyzovali chování osmnácti AI modelů při práci na reálných softwarových projektech po dobu více než osmi měsíců. Test probíhal v rámci experimentálního benchmarku známého jako SWE-CI, který se zaměřuje na dlouhodobou údržbu kódu. Výsledky naznačují, že většina modelů má s touto úlohou zásadní problémy.
Zatímco mnoho systémů dokáže napsat funkční kód při jednorázovém testu, dlouhodobá údržba projektu vyžaduje zcela jiné schopnosti. Program musí zůstat stabilní i po desítkách úprav, aktualizací a změn architektury. Právě v této oblasti se podle analýzy většina AI modelů potýká s výraznými slabinami.
Výzkumníci testovali modely na stovce skutečných softwarových projektů. Každý z nich obsahoval desítky postupných změn v kódu, které simulovaly reálný vývoj aplikace. Každý test sledoval přibližně 71 po sobě jdoucích commitů, tedy jednotlivých verzí kódu, které vznikaly během dlouhodobého vývoje.
Cílem bylo zjistit, zda AI dokáže udržet stabilitu programu i po mnoha iteracích. Tento přístup je zásadně odlišný od běžných benchmarků v oblasti programování. Mnoho známých testů, například HumanEval, měří pouze to, zda model dokáže napsat funkční řešení konkrétní úlohy.
Podobně funguje i známý benchmark SWE-bench, který hodnotí schopnost AI opravit chybu v existujícím kódu. Tyto testy však zachycují pouze jednorázový okamžik – tedy zda program funguje právě teď.
Nový benchmark SWE-CI se snaží měřit něco mnohem obtížnějšího: zda kód stále funguje i po měsících postupných změn. Podrobnosti o tomto přístupu popisuje například technický přehled výzkumu dostupný na arxiv.org.
Výsledky testu byly překvapivě kritické. Přibližně 75 procent testovaných modelů během dlouhodobého vývoje opakovaně rozbilo funkčnost kódu, který předtím fungoval správně. Jinými slovy, každá další úprava často způsobila nové chyby nebo regresi.
Pouze dva modely dokázaly udržet relativně stabilní výkon. V testu dosáhly nejlepšího výsledku modely Claude Opus 4.5 a 4.6, které jako jediné překročily hranici padesátiprocentní úspěšnosti při zachování funkčnosti kódu.
Výzkumníci upozorňují, že hlavní problém spočívá v tom, jak jsou současné modely trénovány. Většina z nich je optimalizována na rychlé generování řešení, která projdou aktuálními testy. To však často vede k tomu, že model vytváří kód, který je sice funkční v daném okamžiku, ale není dostatečně robustní pro dlouhodobý vývoj.
Tento problém je v softwarovém inženýrství známý jako technický dluh. Jde o situaci, kdy rychlé řešení sice splní okamžitý požadavek, ale v budoucnu komplikuje další vývoj systému. Podrobnější vysvětlení tohoto konceptu nabízí například studie Technical Debt in Software Engineering.
V experimentu se ukázalo, že AI modely mají tendenci technický dluh rychle akumulovat. Každá další úprava kódu totiž často zvyšovala složitost programu nebo vytvářela nové konflikty mezi jednotlivými částmi systému.
Výzkumníci proto vytvořili nový hodnoticí systém nazvaný EvoScore. Tento algoritmus přikládá větší váhu pozdějším fázím vývoje než těm počátečním. Jinými slovy, model je penalizován, pokud sice na začátku vytvoří funkční řešení, ale později způsobí problémy při dalších změnách.
Podle autorů studie je tento přístup bližší reálnému světu softwarového vývoje. Programy totiž nejsou statické produkty, ale dynamické systémy, které se neustále vyvíjejí. Některé velké projekty obsahují tisíce změn během několika let.
Právě dlouhodobá stabilita kódu je proto jedním z nejdůležitějších kritérií kvality softwaru. Pokud každá změna způsobí nové chyby, vývoj se postupně zpomaluje a projekt se stává stále obtížněji udržovatelným.
Výsledky studie tak přinášejí důležitý pohled na současný stav AI v programování. Ukazují, že generování kódu je pouze první částí mnohem složitějšího procesu.
Software totiž není jen soubor funkcí, ale komplexní ekosystém, který musí zůstat stabilní po dlouhou dobu. K tomu je potřeba nejen technická přesnost, ale také schopnost plánovat architekturu systému a předvídat důsledky budoucích změn.
Někteří odborníci proto tvrdí, že role AI v programování bude v blízké budoucnosti spíše podpůrná než plně autonomní. Umělá inteligence může pomáhat s generováním kódu, ale lidský vývojář bude stále hrát klíčovou roli při navrhování architektury a dlouhodobé údržbě projektů.
Zároveň však výzkum naznačuje, že současné benchmarky mohou poskytovat příliš optimistický obraz schopností AI. Testy zaměřené na jednorázové úlohy totiž nezachycují skutečnou komplexitu vývoje softwaru.
Právě proto se objevují nové typy benchmarků, které se snaží simulovat realistické pracovní prostředí programátorů. Tyto testy mohou v budoucnu poskytnout přesnější obrázek o tom, jak dobře AI zvládá skutečné vývojové projekty.
Výsledky experimentu tak nepředstavují konečný verdikt nad schopnostmi umělé inteligence. Spíše ukazují, že cesta k plně autonomním AI programátorům je pravděpodobně delší, než se někdy zdá.