No asi teď pojedeme nějakou do z kopce ... Ale, podle mne, se pak ustálí nový rovnovážný stav - staré chyby, nalezené pomocí AI, budou opravené a nové by mělo být možné odchytit pomocí AI rovnou při "výrobě".
Dostat se do tohohle stavu, pokud bude existovat, ale bude docela jízda na splašeném koni, co je na voru, co jede po divoké vodě ;-)
Stejně jako mnozí předpokládáte, že technologie XYZ se bude stále zlepšovat. Ale tak to vůbec být nemusí a taky není.
Ne, nepředpokládá. Současný stav AI umožňuje nalézat chyby, které se dříve nevyplatilo hledat. Současná AI tyhle chyby najde (takže staré už v kódu nebudou) a nové stejného typu odhalí ještě ve fázi vývoje (pokud budou mít vývojáři stejné prostředky, jako útočníci – to je za mne největší neznámá téhle situace). Tj. naopak to předpokládá neměnný stav AI. Zlepšující se AI do toho přidává novou neznámou – jestli vývojáři budou mít k dispozici tu nejlepší AI, aby nové chyby vychytali ještě při vývoji. Nebo jestli jim při vývoji proklouznou chyby, které umí najít ta nejlepší současná AI, ale oni ji nebudou mít k dispozici.
Bojuje se více způsoby, např se předělávají knihovny do Rustu, 90 % chyb odhalí už kompilátor (práce s pamětí v C/C++ tvoří většinu CVEček).
Videls nekdy (pokus) o kompikaci ... kompilatoru rustu? Vzdyt je to warrning vedle warnigu, desitky tisic warningu. A navic to samo sebe zkompilovat neumi. Pokud se pokusis prekompilovat tim kompilarorem ten stejnej kompilator s verzi +2 ... tak to se 100% jistotou crashne.
Proc myslis, ze to gentoo (kvuli JEDINY knihovne) cpe jako binarni blob.
Jako bonus se to dozaduje ruznych ychtylnich instrukci v CPU ...
Nevim jaka je zkusenosti jinych lidi s LLM, pouzivam jen zastarale a hloupe modely. Nicmene i ty jsou schopne resit spoustu veci hrubou silou.
Ladil jsem nejake jadro systemu, ktere v zavislosti na prekladu verze gcc (ne)chodilo. Ten kod je cca 30+ let stary, takze tam byla hromada problemu. Claude nejprve zabrednul do gdb (resp. qemu debugger) a bylo zjevne, ze nejak metodou pokus omyl zkousi vsechno mozne i nemozne. Zastavil jsem ho, aby nepropalil vsechny tokeny a dal instrukce, ze ma resit jen zjevne chyby spojene s assemblerem a warningy.
Nicmene on behem prekladu udelal ruzne verze a zacal je skriptem kombinovat, aby lokalizoval problem. Nahodou mu to vyslo, ze zasadni chyba byla jen v jednom .o souboru, takze ji nakonec nasel i bez toho zakazaneho gdb.
Tim padem mne nahradil, sice problem nevyresil "intelektem"/"znalostmi"/"praxi", ale zkousenim dokolecka az se povedlo - nicmene urcite to bylo levnejsi nez moje prace.
Umim si predstavit, ze kdyz najdu nekolik chyb v nejakem programu ,tak spustim dostatek agentu, aby se kazdy zabyval jen "svoji" kombinaci chyb a relativne hrubou silou to najdu. Zrejme mnohem levneji nez clovek.
Hrubou silou to riesim niekedy aj ja.
Je to legitimna metoda na hladanie chyb. Niekedy rychlejsia ako pouzitim "intelektu". Hlavne pri zaludnych chybach,
Aj to je o praxi a skusenostiach.
Tak hlavne tam ty chyby musi byt. Pokud je projekt udrzovany a v poradku tak v nem tech chyb zase tolik neni (viz. curl). A kde nic neni ani cert nebere. Co vidim posledni dobou za nahlasene AI chyby na Firefoxu tak to je jedna obskurnost za druhou, zda se ze uz vymysli naproste kraviny jen aby se neco naslo.