Tutti i videogiocatori che hanno giocato a giochi che raccontano storie hanno sempre aspirato a poter interagire con personaggi credibili e che fossero il più possibile autonomi, capaci di creare un mondo libero il cui comportamento dei vari caratteri “autonomi” sia plausibile e ricco.
Chiunque abbia giocato sa che i cosiddetti NPC (non player characters) nei videogiochi o sono “rigidi” nei propri comportamenti grazie all’esecuzione di un copione predeterminato dal creatore del videogioco, oppure esibiscono comportamenti ripetitivi e poco interessanti, tanto da contribuire a rendere popolari i giochi MMORPG (Massive Multiplayer On-line Role Playing Games) dove sono i giocatori stessi ad animare i personaggi che si incontrano nel gioco.
Ecco, immaginiamo ora un futuro in cui nei videogame incontreremo personaggi credibili, che reagiscono ideando risposte e comportamenti sul momento. Con l’intelligenza artificiale.
Cos’è AutoGpt
Sì, i videogame potrebbero mostrare il futuro dell’intelligenza artificiale, dopo avere contribuito a forgiarne il presente (sostenendo la crescita delle GPU con cui fare training degli algoritmi).
L’arrivo di ChatGPT inevitabilmente sta mostrando di poter cambiare i videogame – e da qui l’AI tutta – grazie al progetto Open Source AutoGPT che sostanzialmente usa le capacità dell’intelligenza artificiale per sviluppare un comportamento autonomo di un software.
In sostanza si usa la capacità generativa di GPT che ci ha tanto stupito per la generazione di un ragionamento ottenuto proponendo in modo automatico dei prompt all’AI ed elaborando l’output automaticamente.
L’idea di sfruttare le capacità logiche che l’AI GPT apprende dai testi analizzati apre sicuramente scenari molto intriganti per lo sviluppo dei cosiddetti agenti autonomi, ovverosia entità software che esibiscono un comportamento autonomo, e che possono essere robot che situati nel mondo reale oppure agenti che si muovono in un mondo virtuale come, ad esempio, i NPC dei videogiochi.
- Gli agenti autonomi potrebbero anche diventare companion personali “intelligenti”, dotati di iniziativa.
- Creare interi programmi o copioni cinematografici.
- Una mail, un business plan per una startup…
Per capire meglio di cosa si parla vale la pena di analizzare brevemente il concetto di agente intelligente così come è emerso nella seconda metà degli anni Novanta, in modo da comprendere come l’AI di GPT e altri meccanismi come i cosiddetti embeddings possano contribuire a realizzare degli agenti più intelligenti rispetto a quelli creati finora.
Gli agenti intelligenti
Nel 1995 il libro dal titolo “Artificial Intelligence, a Modern Approach” (anche noto come AIMA) offre una visione dell’intelligenza artificiale incentrata sul concetto di agente autonomo e razionale, autonomo in quanto prende decisioni autonomamente, razionale (e non intelligente!) perché prende decisioni razionalmente basandosi sulle informazioni in suo possesso.
In sostanza l’idea è che il software che realizza l’agente riceve percezioni dal mondo che in cui è situato, può costruire in una propria memoria una rappresentazione del mondo, e usa questa sua conoscenza per decidere quale azione intraprendere in base alle informazioni sull’ambiente e sui propri obiettivi. Ripete continuamente questo ciclo di percezione azione realizzando quindi un comportamento autonomo.
Questo schema di funzionamento di un agente autonomo offre un modo di descrivere il comportamento a prescindere dall’intelligenza dell’algoritmo che selezionerà la prossima azione da intraprendere e che potrà essere realizzato usando molti approcci sviluppati dalla ricerca in intelligenza artificiale.
È quindi naturale chiedersi se GPT possa contribuire a realizzare questa funzione attraverso l’elaborazione di linguaggio naturale a partire dalla definizione degli obiettivi descritti in linguaggio naturale. Questo è, in ultima analisi, la funzione che cerca di realizzare AutoGPT: attraverso interrogazioni autonome a ChatGPT è possibile fornire un’implementazione sicuramente innovativa del ciclo percezione-azione di un agente.
La necessità di un’agenzia internazionale per controllare l’AI autonoma
Sistemi come Autogpt e Babyagi permettono ai dilettanti di costruire complessi assemblaggi di sistemi ai inaffidabili, difficili da debuggare (o persino da capire), che controllano altri sistemi ai inaffidabili per raggiungere obiettivi arbitrari. Tutto questo è una pratica pericolosa.
Questa l’opinione espressa qualche giorno fa da alcuni noti esperti come Gary Marcus and Anka Reuel.
Come ha detto Marek Rosa, amministratore delegato di good.Ai, abbiamo bisogno di nuove idee tecniche su “come aumentare la sicurezza (difesa proattiva) in un mondo in cui ci sono miliardi di agenti ai… che girano in app e server, e non sappiamo di cosa stiano parlando”, forse rendendo necessaria una sorta di “software antivirus contro gli agenti ai”.
Così quegli esperti ora propongono un’alleanza globale con i migliori esperti e ricercatori a disposizione sarebbe in grado di fornire indicazioni rapide e ponderate su questi nuovi sviluppi.
L’esempio a cui fanno riferimento è quando, dopo la seconda guerra mondiale, 81 Paesi hanno approvato all’unanimità lo statuto dell’Agenzia internazionale per l’energia atomica per “promuovere tecnologie nucleari sicure e pacifiche”, con diritti di ispezione. Un modello diverso e più soft, meno incentrato sull’applicazione delle norme, è l’Organizzazione Internazionale dell’Aviazione Civile, in cui i Paesi membri emanano le proprie leggi ma si avvalgono della consulenza di un’agenzia globale. Per arrivare al modello giusto e fare le scelte giuste ci vorranno tempo, saggezza e collaborazione.
L’importanza della memoria
Un aspetto centrale nella realizzazione di un agente intelligente è l’abilità di aggiornare la propria rappresentazione del mondo man mano che opera nell’ambiente, aggiungendo ricordi e di conseguenza modificando il proprio comportamento non solo in base al suo programma ma anche all’esperienza passata. L’approccio di ChatGPT è quello di inserire tutta l’informazione oltre il modello appreso durante la fase di apprendimento nel prompt. Ecco, quindi, che la conoscenza specifica che si può fornire è limitata a 3.500 parole circa includendo anche il testo generato, adeguate per molti compiti ma non certo per memorizzare dei comportamenti di un agente e farli evolvere nel tempo. Per questo motivo è necessario ricorrere agli embeddings, una sorta di indice in cui i dati vengono elaborati da modelli linguistici per poter effettuare ricerche semantiche su dei dati. In questo modo è possibile creare un vero e proprio database di esperienze che sono poi usate per reperire le informazioni rilevanti da utilizzare per creare un prompt e sfruttare la capacità logica dei modelli linguistici.
Questo è in sostanza quello che fa AutoGPT: è una libreria che dato un prompt di altissimo livello che indica il comportamento atteso, usa GPT prima per definire i passi per ottenere il risultato atteso e successivamente interroga il modello memorizzando le opportune informazioni nei propri embeddings.
La temperatura di GPT
Uno degli aspetti che caratterizzano l’”intelligenza” di un agente che anima un personaggio è sicuramente quella di non essere interamente prevedibile e ripetitivo. I modelli Large Language Model (LLM) come GPT non fanno che completare il prompt con frammenti di parole che più probabilmente seguiranno. I ricercatori si sono accorti infatti che se si utilizzava il frammento più probabile di una parola che segue un particolare prompt si tendeva a ricevere un testo non troppo interessante e ripetitivo. Se al contrario si seleziona casualmente un frammento nel 20% più probabile il modello linguistico improvvisamente si comporta in modo interessante e genera i testi che ci hanno sorpreso negli ultimi mesi. La percentuale tra cui scegliere casualmente il prossimo frammento è nota come temperatura (in questo esempio la temperatura è del 20% e quindi 0,2) ed inserisce un elemento di casualità nella generazione dei testi. Per questo motivo quando si rigenera l’output in GPT si ottiene un testo differente.
La generazione casuale insita nel meccanismo generativo del testo implica anche che se si chiede al modello la prossima azione che un personaggio di un gioco deve intraprendere in una certa situazione può portare ad esiti differenti introducendo una componente di imprevedibilità nei comportamenti.
La ricerca di Stanford e Google
Ricercatori di Stanford e Google hanno messo insieme tutti questi tasselli ed hanno modificato un gioco simile a “The Sims” popolandolo con 25 entità “generative” che utilizzando la capacità di ragionare di GPT unitamente alla capacità di memorizzare negli embeddings la propria storia. Questi agenti intelligenti hanno esibito comportamenti straordinari, mostrando anche la capacità di interagire socialmente tra loro, organizzando party e decidendo autonomamente se partecipare o meno.
“Gli agenti generativi si svegliano, preparano la colazione e si mettono al lavoro”, scrivono gli autori dello studio. “Gli artisti dipingono, mentre gli autori scrivono; formano opinioni, si accorgono l’uno dell’altro e avviano conversazioni; ricordano e riflettono sui giorni passati”.
Questi personaggi non solo registrano i ricordi, ma li incanalano anche in comportamenti credibili, eseguiti in un mondo aperto; su un sito web interattivo, è possibile vederli lavarsi i denti, trascinarsi al lavoro o a yoga, flirtare e fare amicizia, persino coordinarsi tra loro per facilitare gli eventi sociali di gruppo quando se ne presenta l’occasione. Per esempio, quando un agente ha suggerito di organizzare una festa di San Valentino, i bot hanno deciso di inviare gli inviti, si sono chiesti a vicenda di andare come accompagnatori e hanno discusso su quando presentarsi. (Anche la partecipazione è stata realistica: solo cinque dei 12 agenti invitati sono arrivati, e molti di loro hanno citato “conflitti di programma”).
Questo tipo di comportamento sociale emergente, portato avanti autonomamente da diverse iterazioni di ChatGPT, è parte di ciò che differenzia questo esperimento dagli ambienti di gioco tradizionali, dove gli avatar devono essere codificati per portare avanti le interazioni. Invece di essere guidati da alberi decisionali o da altri metodi di scripting “a forza bruta”, gli agenti virtuali di Smallville non solo popolano la città con fenomeni interpersonali realistici, ma lo fanno in modo autonomo, facendo appello alle esperienze per informare il loro comportamento sul momento, senza bisogno di suggerimenti esterni.
All’inizio di Smallville, a ogni agente è stata data una memoria seminale: una descrizione di un paragrafo, redatta dai ricercatori, che delineava la sua storia, la sua professione, le sue relazioni e i suoi obiettivi, da cui poi sono nate le dinamiche sociali emergenti. Per esempio, quando un agente ha comunicato a un altro la sua intenzione di candidarsi a sindaco, la cosa è diventata subito un argomento di discussione. Si parla anche male l’uno dell’altro! (“Ho discusso delle elezioni con Sam Moore”, ha detto un agente, Isabella, e un altro ha risposto: “Ad essere onesti, non mi piace Sam Moore. Penso che non sia in sintonia con la comunità e che non abbia a cuore i nostri interessi”).
In conclusione
I primi esperimenti mostrano che l’uso di approcci come AutoGPT per la generazione di comportamenti di agenti intelligenti hanno enormi potenzialità nella realizzazione di simulazioni interattive, aprendo possibilità nella realizzazione di mondi virtuali in cui i NPC sono capaci di comportamenti complessi, consentendo di fatto di superare i mondi MMORPG in cui solo i giocatori introducevano “intelligenza” nei comportamenti dei personaggi del gioco.
Queste tecniche potrebbero anche portare alla generazione di veri e propri copioni che possono poi essere usati nella realizzazione di contenuto cinematografico.
Ancora una volta questi modelli generativi ci sorprendono e aprono nuove possibilità, in questo caso nel mondo dell’intrattenimento, sia interattivo che non.