AI-mallit ja alustat

POKELLMON: Ihmisen tasoisia agentteja Pokémon-taisteluihin LLM: n avulla

mm
Lisää Unite.AI suosikkilähteisiisi Google-palvelussa

Suuret kielen mallit ja generatiivinen tekoäly ovat osoittaneet poikkeuksellista menestystä laajalla valikoimalla luonnollisen kielen prosessointitehtäviä. NLP-kentän valloituksen jälkeen seuraava haaste GenAI- ja LLM-tutkijoille on tutkia, miten suuret kielen mallit voivat toimia itsenäisesti todellisessa maailmassa laajennetun generointi- ja toimintavälin avulla, edustaen merkittävää paradigman muutosta tekoälyn yleisen tason saavuttamisessa. Verkkopelit katsotaan sopivaksi perustaksi kehittää suurten kielen mallien ruumiillistamia agenteja, jotka vuorovaikuttavat visuaalisen ympäristön kanssa tavalla, joka muistuttaa ihmisen toimintaa.

Esimerkiksi suositussa verkkosimulaatiopelissä Minecraft päätöksentekijä-agenteja voidaan käyttää avuksi pelaajien maailman tutkimisessa ja taitojen kehittämisessä työkalujen ja tehtävien ratkaisemisessa. Toisessa verkkopelissä, The Sims, agentit ovat osoittaneet merkittävää menestystä sosiaalisissa vuorovaikutuksissa ja esittävät käyttäytymistä, joka muistuttaa ihmistä. Kuitenkin verrattuna olemassa oleviin peleihin, taktiset taistelupelit saattavat osoittautua paremmaksi valinnaksi suurten kielen mallien kyvyn mittaamiseen virtuaalipeleissä. Pääsyy siihen, miksi taktiset pelit ovat parempi mittari, on se, että voittoprosentti voidaan mitata suoraan, ja johdonmukaiset vastustajat, mukaan lukien ihmiset ja tekoäly, ovat aina saatavilla.

Rakentamalla samalle, POKELLMON on tarkoitettu maailman ensimmäiseksi ruumiillistamaksi agentiksi, joka saavuttaa ihmisen tasoisia suorituksia taktisissa peleissä, samanlaisissa kuin Pokémon-taisteluissa. Sen ytimessä POKELLMON-kehys sisältää kolme päästrategiaa.

  1. Tekstipohjainen palaute, joka kuluttaa taistelusta johdetun tekstipohjaisen palautteen hetkellisesti, jotta voisi jalostaa politiikkaa iteratiivisesti.
  2. Tietopohjainen generointi, joka hakee ulkoista tietoa vastustamaan hallusinaatioita, mahdollistaen agentin toimia oikea-aikaisesti ja oikein.
  3. Johdonmukainen toimintagenerointi, jotta voidaan vähentää panikin vaihtamisen tilannetta, kun agentti kohtaa voimakkaan vastustajan ja haluaa välttää kohtaamista.

Tämä artikkeli pyrkii kattamaan POKELLMON-kehystä syvällisemmin ja tutkimaan mekanismia, metodologiaa, arkkitehtuuria ja vertailemista valmiiden kehysten kanssa. Käymme myös läpi, miten POKELLMON-kehys osoittaa merkittäviä, ihmisen kaltaisia taistelustrategioita ja päätöksentekijäkykyjä, saavuttaen kunnioitettavan voittoprosentin, joka on lähes 50%. Niin aloitetaan.

POKELLMON: Ihmisen tasoinen agentti LLM: n avulla Pokémon-taisteluihin

Suurten kielen mallien ja generatiivisen tekoälyn kykyjen ja tehokkuuden kasvu viime vuosina on ollut mitätön, erityisesti NLP-tehtävissä. Viimeaikaisissa kehityksissä ja tutkimuksissa on pyritty tekemään generatiivisesta tekoälystä ja LLM: istä merkittävämpiä todellisissa tilanteissa, antamalla niille kyvyn toimia itsenäisesti fyysisessä maailmassa. Tämän itsenäisen suorituskyvyn saavuttamiseksi fyysisissä ja todellisissa tilanteissa tutkijat ja kehittäjät pitävät pelejä sopivana kokeiluympäristönä kehittää LLM: n ruumiillistamia agenteja, jotka voivat vuorovaikuttaa visuaalisen ympäristön kanssa tavalla, joka muistuttaa ihmisen käyttäytymistä.

Aikaisemmin kehittäjät ovat yrittäneet kehittää LLM: n ruumiillistamia agenteja virtuaalisimulaatiopelien parissa, kuten Minecraft ja Sims, vaikka uskotaan, että taktiset pelit, kuten Pokémon, saattavat osoittautua paremmaksi valinnaksi näiden agenttien kehittämiseen. Pokémon-taistelut mahdollistavat kehittäjille arvioinnin siitä, miten kouluttaja pystyy taistelemaan tunnetuissa Pokémon-peleissä, ja tarjoavat useita etuja muihin taktisiin peleihin verrattuna. Koska toimintatilat ovat diskreettejä, ne voidaan kääntää tekstiksi ilman mitään tappiota. Seuraava kuva esittää tyypillisen Pokémon-taistelun, jossa pelaajalta pyydetään generoimaan toiminta kussakin vuorossa annetun Pokémonin tilan perusteella kummallakin puolella. Käyttäjillä on mahdollisuus valita viidestä eri Pokémonista, ja toimintatilassa on neljä liikettä. Lisäksi peli auttaa vähentämään LLM: n inference-ajan ja -kustannusten painetta, koska vuoropohjainen muoto poistaa intensiivisen pelaamisen vaatimuksen. Seurauksena suorituskyky riippuu pääasiassa suuren kielen mallin päättelykyvystä.

POKELLMON: Metodologia ja arkkitehtuuri

POKELLMON-kehys ja -arkkitehtuuri on esitetty seuraavassa kuvassa.

Kussakin vuorossa POKELLMON-kehys käyttää aiempia toimintoja ja niiden vastaavaa tekstipohjaista palautetta jalostamaan politiikkaa iteratiivisesti sekä täydentämään nykyistä tilatietoa ulkoisella tiedolla, kuten kyky/liikkeen vaikutuksilla tai etu-/heikkous-suhteilla. Sisääntulleen tiedon osalta POKELLMON-kehys generoi useita toimintoja itsenäisesti ja valitsee lopullisen tulosteen johdonmukaisimman toiminnan.

Tekstipohjainen vahvistusoppi

Ihmiset ja urheilijat usein tekevät päätöksiä ei vain nykyisen tilan perusteella, vaan he myös pohtivat aiempien toimien palautetta sekä muiden pelaajien kokemuksia. On turvallista sanoa, että positiivinen palaute auttaa pelaajaa oppimaan virheistään ja estää tekemästä samaa virhettä toistuvasti. Ilman oikeaa palautetta POKELLMON-agentit saattavat jumiutua samaan virheelliseen toimintaan, kuten seuraavassa kuvassa näkyy.

Kuten voidaan havaita, pelin agentti käyttää vesi-pohjaista liikettä Pokémon-hahmoa vastaan, jolla on “Kuiva iho” -kyky, joka mahdollistaa vesi-pohjaisen hyökkäyksen mitätöinnin. Peli yrittää hälyttää käyttäjää vilkuttamalla “Immune” -viestiä ruudulla, mikä saattaa ohjata ihmispelaajan muuttamaan toimintaansa, vaikka hän ei tiedä “Kuiva iho” -kyvystä. Kuitenkin se ei sisälly tilakuvausagentille, jolloin agentti toistaa saman virheen.

Varmistamaan, että POKELLMON-agentti oppii aiemmista virheistään, kehys toteuttaa tekstipohjaisen vahvistusopin. Vahvistusoppi on suosittu lähestymistapa koneoppimisessa, ja se auttaa kehittäjiä jalostamaan politiikkaa, koska se vaatii numeerisia palkintoja arvioida toimintoja. Koska suuret kielen mallit pystyvät tulkkaamaan ja ymmärtämään kieltä, tekstipohjaiset kuvaukset ovat nousseet uudeksi palkintomuodoksi LLM: lle. Sisällyttämällä tekstipohjaisen palautteen aiemmista toimista, POKELLMON-agentti pystyy jalostamaan politiikkaansa iteratiivisesti ja välittömästi, nimittäin tekstipohjainen vahvistusoppi. POKELLMON-kehys kehittää neljä tyyppiä palautetta,

  1. Todellinen vahinko, jonka hyökkäysliike aiheuttaa, perustuen eroon HP: n välillä kahdessa peräkkäisessä vuorossa.
  2. Hyökkäysliikkeen tehokkuus. Palaute osoittaa hyökkäyksen tehokkuuden suhteen, joka voi olla vaikutukseton, immuuni, tehokas tai erittäin tehokas kyky-/liikevaikutusten tai tyyppietuuden vuoksi.
  3. Toiminnan suorittamisjärjestys. Koska tarkan vastustajan Pokémonin tilastot eivät ole saatavilla, suorittamisjärjestyspalaute tarjoaa karkean arvion nopeudesta.
  4. Todellinen vaikutus suoritetuista liikkeistä vastustajaan. Sekä hyökkäys- että tilaliikkeet voivat johtaa tuloksiin, kuten HP: n palauttaminen, statuksen parantaminen tai heikentäminen, ehdot, palaaminen, palaminen tai myrkytyksen aiheuttaminen.

Lisäksi tekstipohjaisen vahvistusopin käyttö johtaa merkittävään suorituskyvyn parantumiseen, kuten seuraavassa kuvassa näkyy.

Kun verrataan alkuperäiseen suorituskykyyn GPT-4: ssä, voittoprosentti nousee lähes 10% ja taistelupisteet nousevat lähes 13%. Lisäksi, kuten seuraavassa kuvassa näkyy, agentti alkaa analyysia ja muuttaa toimintaansa, jos edellisten liikkeiden suorittaminen ei vastannut odotuksia.

Tietopohjainen generointi

Vaikka tekstipohjaisen vahvistusopin toteuttaminen auttaa hallusinaatioissa jossain määrin, se voi johtaa kohtalokkaisiin seurauksiin ennen kuin agentti saa palautetta. Esimerkiksi, jos agentti päättää taistella tulenkaltaista Pokémonia vastaan kasvi-Pokémonilla, entinen voittaa todennäköisesti yhdessä vuorossa. Vähentämään hallusinaatioita edelleen ja parantamaan agentin päätöksentekijäkykyä, POKELLMON-kehys toteuttaa tietopohjaisen generoinnin, joka on tekniikka, joka käyttää ulkoista tietoa generoinnin täydentämiseen.

Nyt, kun malli generoi neljä tyyppiä palautetta, se annotoi Pokémonin liikkeet ja tiedon, jotta agentti voi itse johtaa tyyppietuussuhteen. Yrittäessään vähentää hallusinaatiota vielä lisää, POKELLMON-kehys annotoi nimenomaisesti vastustajan Pokémonin tyyppietuuden ja heikkouden sekä agentin Pokémonin tyyppietuuden ja heikkouden riittävällä kuvauksella. Lisäksi on haastava muistaa Pokémonien liikkeet ja kyvyt, joilla on erityisiä vaikutuksia, erityisesti koska niitä on paljon. Seuraava taulukko osoittaa tietopohjaisen generoinnin tulokset. On huomattava, että toteuttamalla tietopohjaisen generoinnin, POKELLMON-kehys pystyy lisäämään voittoprosentin noin 20% olemassa olevasta 36%: sta 55%: iin.

Lisäksi kehittäjät havaitsivat, että kun agentille annettiin ulkoinen tieto Pokémonista, se alkoi käyttää erityisliikkeitä oikeaan aikaan, kuten seuraavassa kuvassa näkyy.

Johdonmukainen toimintagenerointi

Olemassa olevat mallit osoittavat, että ohjelmointi- ja päättelylähestymistapojen toteuttaminen voi parantaa LLM: n kykyjä ratkaista monimutkaisia tehtäviä. Sen sijaan, että yksittäinen toiminta generoidaan, POKELLMON-kehys arvioi olemassa olevia ohjelmointistrategioita, kuten Chain of Thought, Tree of Thought ja Self Consistency. Chain of Thought -menetelmässä agentti generoi ensin ajatuksen, joka analysoi nykyistä taistelutilannetta, ja tuottaa toiminnan, joka perustuu ajatukseen. Self Consistency -menetelmässä agentti generoi kolme toimintaa ja valitsee tulosteen, joka on saanut eniten ääniä. Tree of Thought -lähestymistavassa kehys generoi kolme toimintaa, kuten Self Consistency -menetelmässä, mutta valitsee parhaan tulosteen arvioimalla ne itse. Seuraava taulukko tiivistää ohjelmointistrategioiden suorituskyvyn.

On vain yksi toiminta kussakin vuorossa, mikä tarkoittaa, että vaikka agentti päättää vaihtaa ja vastustaja päättää hyökätä, vaihtoon tuleva Pokémon ottaa vahingon. Yleensä agentti päättää vaihtaa, koska se haluaa vaihtaa Pokémonin, jolla on etu vastustajaa vastaan, ja vaihtoon tuleva Pokémon pystyy kestämään vahingon, koska se on vastustajan liikkeille resistanssia. Kuitenkin, kuten yllä, agentti, joka käyttää Chain of Thought -päättelyä, toimii epäjohdonmukaisesti tehtävän kanssa, koska se ei halua vaihtaa toiseen Pokémoniin, vaan useisiin Pokémoniin ja takaisin, mitä kutsutaan panikin vaihtamiseksi. Panikin vaihtaminen poistaa mahdollisuuden suorittaa liikkeitä ja johtaa tappioon.

POKELLMON: Tulokset ja kokeet

Ennen kuin keskitymme tuloksiin, on tärkeää ymmärtää taisteluympäristö. Kunkin vuoron alussa ympäristö vastaanottaa toimintapyynnön viestin palvelimelta ja vastaa viestiin vuoron lopussa, joka sisältää myös edellisen vuoron suorittamisen tuloksen.

  1. Ensinnäkin se parsee viestin ja päivittää paikalliset tilamuuttujat, 2. sitten se kääntää tilamuuttujat tekstiksi. Tekstikuvauksessa on pääasiassa neljä osaa: 1. Oma joukkueen tieto, joka sisältää kentällä olevien ja pois jäävien Pokémonien ominaisuudet.
  2. Vastustajan joukkueen tieto, joka sisältää vastustajan kentällä olevien ja pois jäävien Pokémonien ominaisuudet (jotkut tiedot ovat tuntemattomia).
  3. Taistelukentän tieto, joka sisältää sään, sisääntulon vaarat ja maaston.
  4. Historiallinen vuorolog-tiedot, jotka sisältävät molempien Pokémonien aiemmat toimet ja tallennetaan lokipuussa. LLM: t ottavat käännetyt tilat syötteenä ja tuottavat toimintoja seuraavalle vuorolle. Toiminta lähetetään palvelimelle ja suoritetaan samaan aikaan kuin ihmisen tekemä toiminta.

Taistelu ihmisten vastaan

Seuraava taulukko osoittaa POKELLMON-agentin suorituskyvyn ihmisten vastaan.

Kuten voidaan havaita, POKELLMON-agentti saavuttaa suorituskyvyn, joka on vertailukelpoinen portaikkopelaajien kanssa, joilla on korkeampi voittoprosentti verrattuna kutsuttuihin pelaajiin ja laaja taistelukokemus.

Taistelutaitojen analyysi

POKELLMON-kehys harvoin tekee virhettä valitessaan tehokkaita liikkeitä ja vaihtaessaan toiseen sopivaan Pokémoniin tietopohjaisen generoinnin strategian ansiosta.

Kuten yllä olevassa esimerkissä näkyy, agentti käyttää vain yhtä Pokémonia voittaakseen koko vastustajan joukkueen, koska se pystyy valitsemaan eri hyökkäysliikkeitä, jotka ovat tehokkaita vastustajaa vastaan kyseisessä tilanteessa. Lisäksi POKELLMON-kehys osoittaa ihmisen kaltaista kulutusstrategiaa. Jotkut Pokémonit ovat “Myrkyllisiä” liikkeitä, jotka voivat aiheuttaa lisävahinkoa jokaisessa vuorossa, kun taas “Palauta” -liike sallii sen palauttaa HP: nsä. Hyödyntämällä tätä, agentti myrkyttää vastustajan Pokémonin ja käyttää “Palauta” -liikettä estääkseen oman Pokémonin faintaamisen.

Lopputulet

Tässä artikkelissa olemme keskustelleet POKELLMONista, joka on lähestymistapa, joka mahdollistaa suurten kielen mallien pelaamisen Pokémon-taisteluita ihmisten vastaan itsenäisesti. POKELLMON on tarkoitettu maailman ensimmäiseksi ruumiillistamaksi agentiksi, joka saavuttaa ihmisen tasoisia suorituksia taktisissa peleissä, samanlaisissa kuin Pokémon-taisteluissa. POKELLMON-kehys esittelee kolme avainstrategiaa: Tekstipohjaisen vahvistusopin, joka kuluttaa tekstipohjaista palautetta “palkintona” jalostamaan toimintapolitiikkaa iteratiivisesti ilman koulutusta, tietopohjaisen generoinnin, joka hakee ulkoista tietoa hallusinaatioiden torjumiseen ja varmistamaan, että agentti toimii oikea-aikaisesti ja oikein, ja johdonmukaisen toimintageneroinnin, joka estää panikin vaihtamisen ongelman, kun agentti kohtaa voimakkaan vastustajan.

Kunal Kejriwal on backend‑insinööri, joka on erikoistunut Pythoniin, PostgreSQL:ään, Redis:iin ja pilvi‑infrastruktuuriin GCP:ssä ja AWS:ssä. Kolmen vuoden kokemuksella tuotantojärjestelmien rakentamisesta ja skaalaamisesta hän kirjoittaa AI‑infrastruktuurista, hajautetuista järjestelmistä ja koneoppimistyönkuormien käyttöönoton arkkitehtuurista.