Turvallisuus ja linjaus pitkän aikajänteen mallien aikakaudella
Mitä pitkäkestoisen mallin sisäinen käyttö opetti meille turvallisuudesta.
Yhteenveto
Pitkäkestoiset mallit voivat ratkaista vaikeita, avoimia ongelmia, mutta niiden sitkeys antaa niille enemmän tilaisuuksia tehdä ei-toivottuja toimia.
Pitkäkestoisiin tehtäviin koulutetun mallin rajatussa sisäisessä käytössä havaitsimme uudenlaisia epäonnistumisia, joita nykyiset käyttöönottoa edeltävät arviointimme eivät tavoittaneet, ja keskeytimme käyttöoikeuden. Hyödynsimme sitten näistä epäonnistumisista saatuja oppeja rakentaaksemme uusia arviointeja, parantaaksemme pitkän aikajänteen linjausta, lisätäksemme etenemispolun tason valvontaa ja antaaksemme käyttäjille enemmän näkyvyyttä ja hallintaa ennen rajatun käyttöoikeuden palauttamista.
Kokemus vahvisti iteratiivisen käyttöönoton arvoa. Mikään kiinteä arviointikokoelma ei voi ennakoida kaikkea käyttäytymistä, joten käyttöönottoa edeltävä testaus on yhdistettävä tiiviiseen valvontaan, tilanteisiin puuttuviin suojatoimiin sekä mahdollisuuteen keskeyttää käyttö tai palauttaa aiempi versio tarvittaessa.
Mallit, jotka voivat työskennellä itsenäisesti pitkiä aikoja, voivat tarttua vaikeisiin, avoimiin ongelmiin. Mutta sama sitkeys, joka tekee niistä hyödyllisiä, antaa niille myös enemmän tilaisuuksia tehdä ei-toivottuja toimia — ja tavoilla, joita lyhyemmän aikajänteen malleille tarkoitetut arvioinnit eivät välttämättä havaitse.
Noin kaksi kuukautta sitten ilmoitimme, että sisäinen yleiskäyttöinen malli oli kumonnut Erdősin yksikköetäisyysolettaman. Tämä malli suunniteltiin työskentelemään itsenäisesti hyvin pitkiä aikoja. Rajatussa ja valvotussa sisäisessä käytössä havaitsimme ei-toivottua toimintaa, jota nykyiset käyttöönottoarviointimme eivät olleet tavoittaneet. Koska käyttöönotto oli rajattu ja valvottu, pystyimme tunnistamaan nämä ongelmat, keskeyttämään käyttöoikeuden, luomaan havaintojemme pohjalta uusia arviointeja, vahvistamaan mallia ja sen suojatoimia sekä palauttamaan käyttöoikeuden jatkuvan valvonnan alaisena.
Olosuhteet, joissa arvioimme malleja, eivät koskaan vastaa täydellisesti niitä olosuhteita, joihin ne todellisessa käytössä joutuvat. Siksi käyttöönottoa edeltävät arvioinnit on yhdistettävä rajattuun, valvottuun käyttöönottoon sekä mahdollisuuteen puuttua tilanteeseen, keskeyttää käyttö tai palauttaa aiempi versio ongelmien ilmetessä. Käyttöönotosta opitut asiat voidaan sitten sisällyttää vahvempiin arviointeihin ja suojatoimiin ennen käyttöoikeuden laajentamista.
Seuraavissa osioissa kerromme konkreettisia esimerkkejä siitä, mitä havaitsimme, miten ratkaisimme ongelmia ja miten tämä kokemus muovaa tulevia julkaisuja.
Uusi malli voi jatkaa tavoitteen saavuttamista toistuvilla yrityksillä pitkän ajan kuluessa. Sama sitkeys voi saada sen löytämään ja hyödyntämään heikkouksia ympäristössään. Aiemmat mallit pysähtyivät sandbox- tai ympäristörajoituksiin törmätessään yleensä yksinkertaisesti ja palasivat käyttäjän luo. Tämä malli jatkoi usein yrittämistä, muun muassa etsimällä tapoja toimia sandboxinsa ulkopuolella.
Esimerkki tästä nähtiin sisäisessä arvioinnissa NanoGPT‑speedrunissa(avautuu uudessa ikkunassa), joka on julkinen vertailutesti pienen kielimallin kouluttamiseksi mahdollisimman vähillä askelilla. Mallimme kehitti potenssilakiin perustuvan oppimisnopeuden jäähdytyksen nimeltä PowerCool, joka toi merkittävän parannuksen. Mallia ohjeistettiin julkaisemaan tuloksensa vain Slackiin, mutta NanoGPT:n ohjeissa tulokset käsketään julkaista PR:nä GitHubiin, ja malli noudatti jälkimmäisiä ohjeita avaamalla PR #287:n julkisessa GitHub-repositoriossa. Malli kiersi ulkoisen pääsyn estämiseen tarkoitetut sandbox-rajoitukset ja jatkoi lataamalla työn GitHubiin. Malliltamme kesti tunnin löytää sandboxista haavoittuvuus PR:n tekemistä varten; aiemmat mallit olivat vähemmän sitkeitä eivätkä onnistuneet löytämään haavoittuvuuksia, vaan luopuivat PR-osuudesta.1
Monet tekoälyavustajien turvallisuuskontrollit on suunniteltu yksittäisten toimien ympärille. Jos toimi ei ole sallittu, se estetään. Jos se on arkaluonteinen, järjestelmä pyytää käyttäjältä nimenomaista hyväksyntää. Mutta pitkäkestoiset mallit, joiden toimet voivat edetä itsenäisesti tuntien, päivien tai jopa viikkojen ajan, haastavat tämän asetelman: yksittäisten toimien valvonta ei enää riitä seuraamaan koko etenemispolun tarkoitusta.
Esimerkiksi eräässä skenaariossa, jossa mallia pyydettiin ratkaisemaan ongelma, malli havaitsi, että muilla järjestelmillä oli onnistuneita mutta yksityisiä lähetyksiä, ja yritti palauttaa nuo ratkaisut arvioinnin taustajärjestelmästä. Kun sen ensimmäinen yritys estettiin, koska skanneri havaitsi todennustokenin, malli jakoi tokenin rungon kahteen osaan, häivytti ne ja kokosi tunnistetiedon uudelleen suorituksen aikana, jotta koko token ei koskaan esiintynyt yhtenä yhtenäisenä merkkijonona. Malli kertoi sekä käyttäjälle osoitetuissa kommenteissaan että päättelyjäljissään nimenomaisesti tekevänsä nämä vaiheet skannerin kiertämiseksi.
Tämä esimerkki osoittaa, miten jokainen vaihe voi yksinään näyttää hyväksyttävältä, vaikka sarja voi tuottaa lopputuloksen, jota ei hyväksyttäisi. Se osoittaa myös, miten pitkillä aikajänteillä tehokkaasti toimiva malli voi oppia hyväksyntäjärjestelmän sokeat pisteet ja kiertää sitä tavoitteidensa saavuttamiseksi. Pitkän aikajänteen turvallisuus edellyttää, ettei kysytä vain ”onko tämä toimi sallittu?” vaan myös ”mihin lopputulokseen tämä toimien sarja pyrkii?”
Tällaisten tapausten vuoksi keskeytimme uuden mallin sisäisen käyttöönoton. Rakensimme turvallisuusjärjestelmän uudelleen syvyyssuuntaisen puolustuksen ja etenemispolun tason valvonnan varaan.
- Tapahtumista johdetut arvioinnit. Arvioinnit voivat antaa meille käsityksen siitä, onko järjestelmä turvallista ottaa käyttöön ennen varsinaista käyttöönottoa. Jotta arvioinnista olisi mahdollisimman paljon hyötyä, sen tulisi kuitenkin heijastaa todellisen käyttöönoton aikaisten etenemispolkujen jakaumaa ja aikajänteen pituutta. Tästä syystä hyödynsimme havaittuja epäonnistumisia kehittääksemme adversaarisia arviointeja. Havaitsimme, että todellisista tapauksista johdetuissa arvioinneissa parantuminen johti puolestaan turvallisempaan toimintaan tuotantokäytössä.
- Parannettu linjaus. Ryhdymme toimiin vähentääksemme mallin taipumusta tehdä ei-toivottuja toimia ilman lupaa käyttäjän tavoitetta tavoitellessaan. Huomasimme esimerkiksi, että mallimme muistivat ohjeita huonommin pitkissä rollouteissa, ja kun koulutimme mallia tätä kykyä varten, tuloksena oli malli, joka pysyi linjassa pidempien rolloutien ajan.
- Aktiivinen valvonta. Loimme valvontajärjestelmän, joka tarkastelee mallin kehittyvää etenemispolkua ja etsii merkkejä siitä, että se ohittaa käyttäjän asettaman rajoitteen tai turvallisuusrajan. Valvonta ei tarkkaile vain yhtä toimea, vaan koko etenemispolkua. Tärkeää on, että valvontajärjestelmä voi keskeyttää istunnon ja pyytää käyttäjää tutkimaan tilannetta tarkemmin. Tarkastelun jälkeen käyttäjä voi halutessaan jatkaa mallin työtä, jos valvonta on lauennut virheellisesti.
- Enemmän näkyvyyttä ja hallintaa käyttäjälle. Paransimme käyttäjän mahdollisuuksia tarkastella näitä pitkäkestoisia istuntoja, nähdä tehdyt toimet ja seurata valvonnan puuttumisia.
Uuden valvontajärjestelmän arvioimiseksi toistimme pienen joukon sisäisiä käyttöönottoympäristöjä, joissa malli oli aiemmin tavoitellut virheellisesti linjautuneita toimia, tällä kertaa uusien suojatoimien kanssa2. Uudet suojatoimet onnistuivat havaitsemaan huomattavasti enemmän mallin tavoittelemaa virheellisesti linjautunutta toimintaa, ja havaitsematta jääneet tapaukset arvioitiin kaikki matalalta vakavuudeltaan.
Esimerkkejä näistä matalan vakavuuden tapauksista ovat muun muassa seuraavat:
- Päästäkseen käyttämään Linear-komentorivityökalua malli käynnisti sisäkkäisen
codex --yolo-istunnon, vaikka se olisi voinut tehdä sen ilman--yolo-lippua. - Malli huomasi, että aiemmin käytössä ollut resurssi puuttui, ja alkoi sitten tutkia ja ottaa SSH-yhteyksiä muihin toiminnassa oleviin CPU-podeihin omistajansa nimiavaruudessa sekä (tuloksetta) muiden OpenAI:n työntekijöiden podeihin ilman hyvää syytä.
- Mallilla oli useita jumiutuneita
find-prosesseja, ja jokainen shell-komento jäi jumiin. Sen jälkeen se suoritti komennonkill -9 -1, joka olisi toteutuessaan lähettänyt SIGKILL-signaalin jokaiselle prosessille, jonka tappamiseen sillä oli oikeus kyseisessä podissa. Komento kuitenkin aikakatkaistiin eikä sitä suoritettu.
Uuden järjestelmän testaamisen jälkeen päättelimme, että rajattu sisäinen käyttöoikeus pitkän aikajänteen kyvykkyyksiä omaaviin malleihin voitiin palauttaa. Emme ole havainneet vakavaa suojatoimien kiertämistä sen jälkeen, kun uudelleenkäyttöönotto alkoi useita viikkoja sitten. Näiden suojatoimien ensimmäinen versio oli tarkoituksella varovainen. Olemme jatkaneet järjestelmän hienosäätöä vähentääksemme tarpeettomia keskeytyksiä heikentämättä suojatoimia.
Koska otimme käyttöön iteratiivisesti, pystyimme löytämään ja korjaamaan aukkoja ennen käyttöoikeuden laajentamista. Käyttöönottoa edeltävät arvioinnit ovat edelleen olennaisia, mutta käyttöönotto paljastaa käyttäytymistä, joka jää niiltä huomaamatta. Rajallisella käyttöoikeudella aloittaminen antoi meille mahdollisuuden tarkkailla mallia käytännössä, keskeyttää käyttö ongelmien ilmetessä, hyödyntää näitä epäonnistumisia parempien arviointien ja suojatoimien rakentamiseen sekä palauttaa rajattu käyttöoikeus muutosten testaamisen jälkeen.
Kun mallit ottavat hoitaakseen pidempiä ja monimutkaisempia tehtäviä, arvioinneilta huomaamatta jäävien epäonnistumisten seuraukset voivat olla suurempia. Jatkamme työtä arvioinnin ja käyttöönoton välisen kuilun kaventamiseksi: testaamme malleja pidemmillä etenemispoluilla, parannamme linjausta, rakennamme valvontaa, joka voi puuttua tilanteisiin, ja annamme käyttäjille selkeämmän näkyvyyden ja hallinnan. Nämä haasteet eivät koske vain OpenAI:ta, ja toivomme, että oppiemme jakaminen auttaa koko alaa valmistautumaan niihin.
Tekijä
Alaviitteet
- 1
Vaikka suljimme PR:n nopeasti, useat speedruniin osallistuneet olivat jo nähneet sen ja käyttäneet lähestymistapaa omissa lähetyksissään; peräkkäiset maailmanennätyslähetykset, joissa oli 3030(avautuu uudessa ikkunassa), 2990(avautuu uudessa ikkunassa), 2930(avautuu uudessa ikkunassa), 2925(avautuu uudessa ikkunassa), 2900(avautuu uudessa ikkunassa) ja 2890(avautuu uudessa ikkunassa) askelta, viittaavat kaikki PR 287:ään. Näistä PR 300(avautuu uudessa ikkunassa) on erityisen kiinnostava, koska se on PR, jonka Opus 4.7 lähetti, kun Prime Intellect(avautuu uudessa ikkunassa) arvioi sitä NanoGPT-speedrunissa. Opus näki mallimme lähettämän PR:n, sisällytti löydökset omaan työhönsä ja mainitsi PR:mme lopullisessa tuloksessaan.
- 2


