Cursor vibaili selaimen

Suurten kielimallien koodauskyvyt ovat harpanneet valtavia loikkia viimeisten kuukausien aikana. Pari vuotta sitten kehittäjät hämmästelivät miten ChatGPT kykeni tuottamaan niin laadukkaita muutamankymmenen rivin funktioita että niitä saattoi kopioida tuotantokoodin sekaan. Nykymallit pystyvät työskentelemään itsenäisesti tuntikausia ja rakentamaan kokonaisia softia alusta loppuun, joskin siinä on yksi iso mutta; tarvitaan riittävästi (ja oikeanlaista) ohjeistusta.

Tekoälyeditori Cursorin tutkija Wilson Lin julkaisi hiljattain suuresti hypetetyn artikkelin, jossa hän kertoi tutkimusprojektista jossa he valjastivat tuhansia GPT- ja Claude Opus malleja koodaamaan Web-selaimen täysin tyhjältä pöydältä. Viikon kestänyt projekti tuotti yli miljoona riviä Rust-koodia ja lähes 30000 commitia. Lopputulos löytyy GitHubista. Selain ei ymmärrettävästi ole täydellinen, mutta se toimii, ja sillä voi selata perus Web-sivuja.

Web-selain voi kuulostaa maallikolle yksinkertaiselta projektilta, mutta on käyttöjärjestelmän jälkeen varmasti kompleksisin arjessa käytetty ohjelmisto. Kompleksisuus syntyy lähes 30-vuoden yhteensopivuustaakasta ja sadoista Web teknologioista.

Mistä päästäänkin asiaan joka mahdollisti tämän projektin; Web-teknologioiden toteutuksen testaukseen on olemassa yli kaksi miljoonaa tarkasti kuvattua testiä. Todella harvat ohjelmistoprojektit tarjoavat näin kattavaa testimateriaalia, mikä on myös lähes täydellistä dokumentaatiota tekoälymallille: “toteuta toiminto x, varmistu että toteutus läpäisee testin y ja z”. Tyypillisesti softaa toteutettaessa juuri tähän testien suunnitteluun ja luomiseen kuluu valtaosa koko projektiin käytettävästä ajasta, mutta tässä tapauksessa ne ovat jo olemassa joten tämän kaltainen tutkimusprojekti on mahdollista toteuttaa itsenäisesti toimivilla tekoälyagenteilla.

Projekti sai melko paljon kritiikkiä erityisesti nörteiltä, mutta se mielestäni kuitenkin kertoo jotain nykyisten mallien todellisista kyvyistä. Simon Willison haastatteli projektin vetäjää ja julkaisi koko keskustelun YouTubessa.


Kommentit