Hopp til innholdet
Norsk journal om kunstig intelligens 247 artikler Oslo --:--
TokenPrat
[ Agenter ] 3 min lesetid Av TokenPrat-redaksjonen

Melee er 100 prosent dekompilert – AI tok siste etappe, men ikke uten bråk

Hver eneste av de 19 828 funksjonene i Super Smash Bros. Melee er nå gjenskapt som lesbar C-kode, og AI-agenter gjorde mye av sluttspurten. Men det betyr ikke at du kan dekompilere Photoshop i kveld.

Åpnet lilla spillkonsoll med kretskort på en arbeidsbenk, med kode på en laptop i bakgrunnen

Hva matchende dekompilering er

Når et spill kompileres, blir kildekoden til maskinkode som er nesten umulig for mennesker å lese. Dekompilering går motsatt vei. Men i spillmiljøet nøyer man seg ikke med kode som ligner. Målet er matchende dekompilering: C-kode som, kompilert med nøyaktig samme gamle kompilator, gir en binærfil som er byte for byte identisk med den som ble solgt i butikken.

Det høres pedantisk ut, men det er nettopp derfor AI fungerer så godt her. Kompilatoren svarer ja eller nei. Enten matcher funksjonen, eller så gjør den det ikke. En agent kan prøve, kompilere, sammenligne og prøve igjen hundrevis av ganger uten at et menneske trenger å sjekke om svaret er riktig.

Fra én funksjon om dagen til tusenvis

Melee-prosjektet har pågått i årevis, drevet av frivillige. Ifølge decomp.dev er nå all kode og data matchet: 19 828 av 19 828 funksjoner.

Utvikleren Stephen Jayakar har beskrevet hvordan han satte AI på oppgaven. En planleggeragent fant funksjoner som ikke var dekompilert ennå, arbeideragenter tok én hver, og en dommeragent sjekket resultatet. Tidligere tok én funksjon omtrent en dag med menneskelig arbeid. Interessant nok droppet agentene verktøyene han hadde laget til dem og satte i stedet opp sin egen løkke med prosjektets dekompilator, kompilator og sammenligningsverktøy.

Det er viktig å ikke overdrive AI-ens rolle. Det meste av grunnarbeidet ble gjort av mennesker over flere år, og AI-en jobbet i en kodebase der strukturer, navn og verktøy allerede var på plass. Det er en helt annen jobb enn å starte fra null.

Det store spørsmålet: hvor god er AI på å lese binærkode?

OpenAI oppgir at GPT-6 Astra løser 88 prosent av oppgavene på deres SRE-Bench på første forsøk og 99,2 prosent innen fire forsøk. Testen måler om modellen kan forstå hva et program gjør uten å ha kildekoden. Til sammenligning lå GPT-5.6 Sol på 55,9 og 68,7 prosent. Tallene er OpenAIs egne, og vi har ikke funnet noen uavhengig måling.

Det er heller ikke det samme som å dekompilere hva som helst. Å forstå hva en funksjon gjør, er noe annet enn å gjenskape hele programmet slik at det kan bygges på nytt. Påstander om at AI har «dekompilert Photoshop» har vi ikke funnet dekning for. Det nærmeste er en Photoshop-lignende app som en utvikler har bygget fra bunnen med hjelp fra AI. Det er nyutvikling, ikke dekompilering.

Bakslaget

Ikke alle i miljøet jubler. Skaperen av decomp.dev, som fulgte framdriften i hundrevis av dekompileringsprosjekter, stengte den offentlige topplisten, og prosjektoversikten er nå lagt ned. Begrunnelsen er at prosenttallene har blitt meningsløse. Forker bruker AI til å «fullføre» andre lags prosjekter og hastelanserer uferdige PC-versjoner uten å bidra tilbake.

Halo viser hvor rotete det kan bli. Det finnes flere Halo-prosjekter på GitHub med porter til PC, Linux, Android og VR. Men tallene spriker. Ifølge en gjennomgang av AI-dekompilerte spill oppgir én fork 99,5 prosent match, mens prosjektet bare lå på rundt en fjerdedel på decomp.dev i oktober. Når «ferdig» kan bety så forskjellige ting, er det lett å skjønne frustrasjonen.

Hva er lov?

Dekompileringsprosjektene deler bare koden de har skrevet selv, ikke grafikk, lyd eller andre ressurser fra spillet. Du må ha din egen kopi av spillet for å bygge det. Det er en gråsone, men en gråsone miljøet har levd med lenge.

For vanlig kommersiell programvare er rammene strammere. EUs regler, som Norge følger gjennom åndsverkloven, tillater dekompilering i bestemte tilfeller, først og fremst for å få programmer til å samarbeide. Å dekompilere et program for å kopiere funksjonene inn i ditt eget er noe annet. I tillegg forbyr de fleste lisensavtaler det uttrykkelig.

Og så er det baksiden: Ferdigheten som gjenskaper et gammelt Nintendo-spill, kan også brukes til å finne sårbarheter i programvare. Det er derfor enkelte laboratorier nå begrenser modellene sine på akkurat dette området, slik Moonshot gjorde med Kimi K3.1 Pro.

Vil du prøve selv?

Det enkleste stedet å begynne er et eksisterende prosjekt med gode verktøy. Melee-miljøet har et eget repo med verktøy for AI-agenter som henter ut funksjoner, tester forsøk og sender matchet kode tilbake. Melee er ferdig, men mange andre prosjekter trenger fortsatt hjelp. Les retningslinjene for hvert prosjekt først. Flere av dem har egne regler for AI-genererte bidrag nettopp på grunn av bråket.

Ressurser

Mer om

Alle →
Rød vannballong som sprekker med en krone av vannsprut
· Agenter

Vannballong-testen: Kritikeragenten som tvinger AI-en til å gjøre jobben om igjen

En kule gjennom en vannballong, med ray tracing og uten et eneste bibliotek. Oppgaven har blitt en uoffisiell test for nye AI-modeller, og demoene sprer seg med skiftende navn på hvilken modell som laget dem. Det mest nyttige er ikke resultatet, men hvordan prompten er bygget opp.

Drone flyr gjennom en innendørs hinderløype med oransje og hvite hindre
· Agenter

Jev styrer droner og biler i simulator – og prosjektene viser hvordan man bør bygge AI inn i kontrollsløyfer

Utviklere har latt beslutningsmodellen Jev fly droner gjennom hinderløyper og kjøre biler i simulatorer, for noen øre per tur. Flere av prosjektene ligger åpent på GitHub. Det mest lærerike er ikke at det virker, men hvordan de har gjort det trygt.

Telefon med fargekodede samtaletråder ved siden av fargede mapper og en messingfugl
· Agenter

Hermes Agent i Telegram: Slik deler du én rotete samtale opp i egne arbeidsområder

Bruker du Hermes Agent via Telegram, ender det fort med én endeløs tråd der nettsiden, forskningen og handlelista blandes sammen. Med Telegram-emner får hvert prosjekt sin egen samtale, sin egen historikk og egne ferdigheter – i samme bot.