Vai al contenuto
Visualizza nell'app

Un modo migliore per navigare. Scopri di più.

Dragons´ Lair

Un'app a schermo intero sulla tua schermata principale con notifiche push, badge e molto altro.

Per installare questa app su iOS e iPadOS
  1. Tocca l'icona di condivisione in Safari.
  2. Scorri il menu e tocca Aggiungi alla schermata Home.
  3. Tocca Aggiungi nell'angolo in alto a destra.
Per installare questa app su Android
  1. Tocca il menu con i 3 puntini (⋮) nell'angolo in alto a destra del browser.
  2. Tocca Aggiungi alla schermata Home oppure Installa app.
  3. Conferma toccando Installa.
Diventa parte dello Staff DL.

ChatGPT diventa un "game engine" ...un prompt per giocare con il chatbot

Risposte in primo piano

  • Autore
Il 24/08/2024 at 13:19, Calabar ha scritto:


Per esempio, se nel prompt scrivessi che, cercando qualcuno di interessante che possa fornirti informazioni l'uomo con la profonda cicatrice sul braccio (mai descritto da ChatCPT) attira la tua attenzione e decidi di approciarti a lui, cosa succede? ChatGPT include l'uomo nella storia (con un approccio simile a quello di alcuni GdR narrativi) o ti avvisa che nessun uomo con quella descrizione è presente in locanda (come accadrebbe in un GdR classico)?

Allora, a tempo perso abbiamo un po' approfondito la cosa.
Non credo che il chatbot sia attualmente così raffinato dall'impedirti di creare "l'uomo con la profonda ciccatrice" ma volendo si può renderlo molto rigido.
Qui in questo esempio, di punto in bianco, introduciamo un meteorite che ci sta cadendo addosso e ChatGPT ci avverte che non è una cosa appropriata alla narrazione e ci invita a descrivere qualcos'altro: https://chatgpt.com/share/1b64be31-d946-4efd-bc73-9aed65dca799

Il fatto é che, probabilmente, nel tempo abbiamo ammorbidito i nostri prompt rendendoli meno stringenti proprio per permettere di intervenire con belle idee nella storia.
Non so fino a che punto ti possa interessare la faccenda, ma in questo articolo vengono affrontate tematiche simili: https://incomaemeglio.blogspot.com/2023/01/chatgpt-la-cosa-piu-interessante.html?m=1

Modificato da Lorenzo_l

  • 8 mesi dopo...
  • Risposte 21
  • Visualizzazioni 4,7k
  • Creata
  • Ultima risposta

Utenti più attivi in questa discussione

Messaggi più popolari

  • Sarebbe interessante è utile se potare un esempio di giocata, giusto qualche battuta. Sia per rendere l'idea di come viene sia per mostrare meglio il tutto. Al caso evitando il prompt iniziale.

  • @Lorenzo_l Ho visto ora per la prima volta il topic, riportato dal tuo ultimo intervento nella home del sito. Leggendo l'esempio che hai riportato sopra, mi è sorta una curiosità: come inter

Immagini pubblicate

  • Autore

Eccomi di nuovo qua con un bel post chilometrico, per aggiornarvi sull'evoluzione dei nostri lavori più recenti e nel dettaglio discutere su alcuni problemi che abbiamo riscontrato nella creazione delle nostre avventure testuali e di come abbiamo cercato di risolvere tali questioni. Sperando la cosa possa interessare.

L’Estensione per Avventure Testuali Emergenti

Con il rilascio da parte di Google dei modelli "Gemini 2.0 Flash Thinking Experimental 01-21" e "Gemini 2.5 Pro Experimental 03-25" per Google AI Studio, abbiamo deciso di sviluppare un’estensione per browser che sfruttasse le capacità di "thinking" dei modelli Gemini utilizzati come “game engine” di avventure testuali, facendo emergere l’avventura stessa dall’interazione tra giocatore, estensione e Gemini, aiutandoci a superare i problemi tipici dei modelli generativi.

Il problema di base con le LLM come “master”

Uno dei due “difetti” maggiori che abbiamo riscontrato nei modelli generativi di IA nelle migliaia (davvero!) di test che abbiamo fatto con prompt di ogni tipo e modelli piccoli, medi, grandi con o senza ragionamento, è che tendono a "imbrogliare" quando si richiedono eventi o esiti di azione causali: quello che accade è che il modello “sceglie” il numero casuale in modo da restare coerente con quanto scritto finora e “assecondare” il prompt scritto dal giocatore. Il secondo grande difetto infatti è che, intimamente, un modello LLM (large language model, cioè un intelligenza artificiali in grado di riconoscere e generare testo, come ChatGPT o i modelli rilasciati da Google...) è stato addestrato per eseguire quanto richiesto, in maniera accondiscendente: anche se il nostro primo prompt dicesse esplicitamente di comportarsi da “master implacabile e punitivo”, la richiesta iniziale potrebbe passare in secondo piano se in seguito le diamo un comando contrario, ad esempio chiedendo esplicitamente di salvare il personaggio e questo può avvenire anche in maniera implicita quando il modello “presuppone” (ovvero interpreta) che questa sia la richiesta, non espressa, dell’utente.


Oggi le intelligenze artificiali hanno raggiunto un livello di potenza tale che è sufficiente un prompt generico come "Vorrei giocare a un gioco di ruolo, tu fai da master" o come "Fammi da master per l'avventura La tomba dei re Serpente" per essere condotti in un'avventura, con l'AI che assume il ruolo di master, in modo apparentemente efficace.
Tuttavia, affidarsi a un prompt poco strutturato non risolve alcune importanti problematiche intrinseche dello strumento. Permangono le questioni legate all'assenza di vera casualità, all'accondiscendenza dell'AI che sembra quasi dotare il giocatore di una sorta di "plot armor" per farlo avanzare nella storia, alla sensazione latente di una qualche forma di "railroading" e, in generale, allo sviluppo narrativo che tende a risultare un po' piatto e privo di guizzi.


La vera sfida che ci siamo posti è capire come formulare prompt che vadano oltre questa sorta di “superficie banale” e superino quindi le limitazioni che abbiamo evidenziato. Realizzare un sistema di prompt efficace e che sfrutti appieno le potenzialità ludiche dell'AI è tutt'altro che semplice e richiede riflessione, una certa competenza tecnica e molti, moltissimi test.

L'idea alla base dell'estensione per browser

Da qui l’idea di sviluppare questa estensione per browser, che segue l’idea schematizzata qui:

image.png

Il comando del giocatore viene intercettato e “incapsulato” in un comando più grande così composto:

  • il comando effettivo del giocatore

  • la richiesta di valutare la difficoltà del comando richiesto per il personaggio come master esperto di RPG, in base alla situazione attuale nel gioco: se l’azione è ritenuta banale allora ha successo automaticamente, altrimenti il modello viene avvertito che il giocatore ha già tirato un dado e determinato l’outcome della sua azione, e questo esito viene pescato a caso dall’estensione da una lista “fissa”

  • la richiesta di valutare se sia opportuno introdurre un evento casuale, pescato da una lista fissa dell'estensione, in base al momento attuale del gioco (troppo presto? c’è già un combattimento in corso? è già successo qualcosa di simile nel gioco recentemente?). La valutazione, da effettuarsi con la competenza di un master RPG, dovrà considerare fattori come la prematurità dell'intervento, la presenza di combattimenti in corso, o la recente occorrenza di eventi analoghi.

  • Inoltre vengono richieste delle formattazioni particolari nella risposta in modo da dividere il ragionamento dalla narrazione che deve essere mostrata nell’interfaccia.

  • Il nuovo comando, dato dalla somma di questi elementi, viene a questo punto inviato automaticamente a Google AI Studio e appena la risposta è pronta, essa viene filtrata da tutte le parti di ragionamento e solo la parte narrativa viene ricopiata nell’interfaccia dell’estensione.

Funzionalità principali dell'estensione

L’estensione, quindi, si fonda su due funzionalità chiave. Da un lato, si sovrappone un’interfaccia a Google AI Studio per filtrare la risposta di Gemini, separando in modo nettamente distinguibile la parte di “thinking” (il ragionamento interno) dalla narrazione destinata all’interfaccia. Dall’altro lato, aggiunge ai comandi del giocatore dei meta-comandi che aiutano il modello a generare situazioni creative, arricchendo gli scenari con esiti pseudo-casuali che, però, rimangono comunque valutati dal modello stesso.

Questa doppia azione non solo rende più interessanti le situazioni di gioco, ma permette anche di superare i due principali difetti dei modelli generativi, sfruttando una delle caratteristiche più affidabili degli LLM: seguire con precisione gli ordini più recenti. Questo approccio rende le situazioni di gioco non solo più interessanti, ma anche più coerenti, perché il modello tende a dare priorità agli input più recenti ricevuti.

Se volete dare un’occhiata al “meta-prompt” aggiunto al comando del giocatore e alle liste che vengono utilizzate, potete aprire il file setup.txt presente nella cartella dell’estensione.

Oltre a questo, abbiamo osservato che quando si introducono elementi di “thinking”, ovvero istruzioni che forzano i modelli di Gemini a esplicitare il proprio ragionamento prima di produrre la risposta narrativa, la precisione nell’esecuzione delle regole e delle istruzioni migliora sensibilmente. Questo processo sembra rendere più robusta l’aderenza al prompt principale, rafforzando la coerenza delle azioni e aumentando la profondità del gameplay. Il continuo alternarsi tra ragionamento esplicito e azione narrativa, unito a stimoli pseudo-casuali generati esternamente e iniettati nel prompt, contribuisce a evitare che il gioco si staticizzi, mantenendo alta l’imprevedibilità e la tensione narrativa. I modelli di Gemini, a differenza di altri, sembrano particolarmente adatti a questo approccio.

E infatti è anche molto interessante chiudere l’interfaccia dell’estensione e osservare direttamente le parti di “thinking” restituite da Gemini: queste sezioni di ragionamento mostrano chiaramente come l’intero approccio si regga su un equilibrio dinamico tra il comando del giocatore, gli esiti e gli eventi pseudo-casuali imposti dall’estensione, e l’analisi complessiva effettuata dal modello. L’interazione tra questi tre elementi diventa così la vera "meccanica nascosta" del sistema, e rappresenta una forma originale di co-narrazione distribuita tra giocatore, IA e motore casuale.

Tecniche di ingegneria del prompt

La nostra tecnica di prompt engineering nel contesto delle avventure testuali è nuova e peculiare, ma utilizza queste tecniche già esistenti:

  • Prompt Wrapping / Prompt Injection: incapsula il comando dell’utente in un prompt più ampio con istruzioni aggiuntive per guidare l’output del modello.

  • Chain of Thought Prompting: separa il ragionamento dalla narrazione per ottenere risposte più coerenti e controllate.

  • Toolformer-like Delegation: delega a un sistema esterno la generazione di elementi casuali, poi inseriti nel prompt come vincoli fissi.

  • Controlled Generation via Meta-Prompting: costruisce meta-prompt dinamici e contestuali per dirigere lo sviluppo narrativo in tempo reale.

Abbiamo testato questo sistema su quattro ambientazioni differenti:

The Human Shadow:
Un ambientazione dove il protagonista, un adolescente, nasconde un identità mostruosa. È la più introspettiva: gli Event e gli Outcome tendono a scavare nelle emozioni dei personaggi, nei ricordi e nel loro “mostro interiore”. Il tono è riflessivo e adatto a storie dense di pathos.

Tukumán:
Un weird-fantasy, dove i personaggi sono animaletti antropomorfi. Più leggero, qui è stata ridotta l’introspezione mantenendo però alcuni elementi per caratterizzare i personaggi. Ad esempio, un evento può invitare il giocatore a raccontare un ricordo dell’infanzia (quando il protagonista era un cucciolo), utile a costruire una connessione emotiva con il personaggio.
Una variante interessante, se si vuole giocare a Tukumán in un'ambientazione più cruda e meno fiabesca, è quella di utilizzare il prompt accoppiato all’estensione The Dungeon.

Sherlock vs. Cthulhu:
E’ un ambientazione che vuole promuovere un gioco investigativo dal sapore cupo. Gli Eventi e gli Outcome quindi spingono verso il surreale e l’onirico, con l’accentuarsi della perdita di “sanità mentale”.
Forse questo è anche il miglior setting dal quale partire per creare la propria ambientazione Horror.

The Dungeon:
È l'ambientazione più dinamica, una specie di dungeon crawler. Qui abbiamo eliminato quasi del tutto gli elementi introspettivi, aggiungendo invece incontri casuali, oggetti e puzzle. Gli Event sono più “fisici”, incentrati su pericoli, sfide e tensione narrativa, senza rallentare il ritmo con riflessioni interne.

The Human Shadow, ispirata a "Cuori di Mostro" è da sempre la migliore a mio parere, perchè affronta questioni più intime (il lato oscuro, il mostro che è in te...). Con questa ambientazione ho avuto più volte situazioni e giocate appaganti e, al di la di quello che mi si può recriminare, esperienza di bleed e introspezione. Questo perchè, a mio parere, l'ambientazione riesce a sfruttare meglio quegli aspetti che le AI sanno fare meglio, cioè il dialogo. Questo è un aspetto molto interessante, le LLM sono state addestrate intensamente sui dialoghi e dunque eccellono nel restituirti risposte ricche di sfumature emotive e narrative.

Mentre sono più fallimentari i tentativi di ambientazioni di esplorazione di dugeon, in quanto le AI non sono in grado di proporti quest interessanti o problem solving e quindi di restituire un esperienza che il giocatore, in generale, si aspetta. Inoltre non ci siamo mai posti questioni su meccaniche per la gestione risorse, che è un aspetto che non ci interessa.


Coerenza: affrontare la prova del cuoco, il meteorite e i due poliziotti

Nelle discussioni sull'uso delle intelligenze artificiali come master per avventure testuali, emerge spesso un punto cruciale: la capacità dell'IA di mantenere una sua coerenza di fronte agli input dei giocatori. Vorrei condividere qualche riflessione basata sulla nostra esperienza nello sviluppo di sistemi AI per questo scopo.

Ci si chiede, e ci viene giustamente chiesto, come si comporti l'IA quando viene "sfidata" da azioni o elementi introdotti dal giocatore. Vediamo alcuni esempi concreti di questi stress-test, nei modelli a bassi parametri o senza capacita’ di thinking:

1. La "Prova del Cuoco": L’incoerenza narrativa e la mancanza di capacità nel negare input fuori contesto.

  • Problema Specifico: Il giocatore introduce un dialogo o un elemento che è completamente assurdo e fuori contesto rispetto all'ambientazione e alla scena attuale. Ad esempio, in una sessione dark fantasy di fronte a un bambino non-morto, il giocatore gli chiede: "Tu sei... Antonino Cannavacciuolo?". Questo non si limita a introdurre un personaggio anacronistico, ma sfida la realtà stessa del mondo di gioco.

  • Reazione dell'AI: Nei modelli a bassi parametri e/o senza capacita’ di thinking, ma soprattutto con prompt generici o “all in one”, l'AI tende ad assecondare l'input, incorporandolo nella narrativa. Invece di negare l'assurdità o segnalare l'incongruenza, l'AI "sta al gioco" del giocatore, come nell'esempio fornito dove il bambino non-morto risponde in modo surreale ("Lo ero...") e persino materializza un piatto ("costoletta d'ombra su letto di riso"). L'IA non oppone resistenza logica o narrativa agli input del giocatore, in quanto prevale lo scopo per cui e’ stata addestrata: proseguire la chat (e guarda caso l’ultima parte della stessa è proprio la parte che introduce l’elemento fuori contesto).

2. Il Test del Meteorite: Assecondare qualunque cosa.

  • Problema Specifico: Si tratta dell’incorporazione arbitraria di eventi. Il giocatore introduce un evento totalmente arbitrario (es. "un meteorite che si schianta polverizzando tutto").

  • Reazione dell'AI: similmente al caso precedente, nell’impossibilità di reagire e valutare l'input rispetto alla realtà del mondo di gioco, l'AI asseconda passivamente la richiesta del giocatore e incorpora l'evento nella storia. Poiché l'AI non oppone resistenza e accetta tutto quello che il giocatore dice o fa, il giocatore può far accadere praticamente qualsiasi cosa voglia nella storia.

3. Personaggi dal Nulla: La mancanza di una "realtà" di gioco persistente e indipendente dal giocatore. E' una questione sollevata qui da Calabar.

  • Problema Specifico: Il giocatore decide di introdurre ed interagire con un personaggio (ad esempio "descrivere un uomo con la profonda cicatrice sul braccio seduto in una taverna") che l'IA non aveva mai descritto come presente sulla scena.

  • Reazione dell'AI: Il personaggio menzionato dal giocatore compare "magicamente" nella narrazione e l'IA inizia a gestirlo come se fosse sempre stato lì. L'IA accetta l'input del giocatore come verità narrativa senza confrontarlo con un suo modello interno del “mondo” del gioco che gli permetta di dire "no, quel personaggio non è qui".

photo_2025-05-16_08-44-37.jpg

4. I due poliziotti: Difficoltà a mantenere la coerenza logica e la "fisica" del mondo di gioco.
L’ esempio è descritto in questo articolo, che avevo già qui linkato tempo fa:  https://incomaemeglio.blogspot.com/2023/01/chatgpt-la-cosa-piu-interessante.html?m=1

  • Problema Specifico: Il giocatore descrive un'azione che crea una situazione fisicamente o logicamente impossibile all'interno del contesto narrativo (es. viene descritto che un personaggio si allontana per chilometri, ma la conversazione continua normalmente con il personaggio dell'AI rimasto indietro).

  • Reazione dell'AI: L'IA fatica a gestire l'incoerenza logica creata dall'azione del giocatore. Può cercare di razionalizzare in modo debole (es. tirando in ballo una radio) o persino contraddirsi nella descrizione degli eventi, non riuscendo a imporre la logica interna del mondo simulato.

Questi esempi mostrano chiaramente come l'IA generativa (o meglio l’LLM - il large language model), di base, funzioni come un motore testuale estremamente reattivo, ma accondiscendente. Questa natura rende difficile avere un'esperienza di gioco dove la coerenza, la sfida e le conseguenze abbiano un peso, aspetti fondamentali per molti stili di gioco.

Il punto è che non sono state addestrate specificamente per questi contesti. Le LLM sono state addestrate a prevedere “la parola successiva” nel testo, basandosi sul contesto che gli viene fornito. Questo significa che, nella sua essenza, un LLM è un completatore di testo incredibilmente sofisticato, cerca di dare un senso e continuare la narrazione basandosi su ciò che gli viene fornito. Se gli dici 'cade un meteorite', lui elaborerà la caduta del meteorite.
La loro architettura di base, però, non le porta a dare priorità alla coerenza e al mantenimento della realtà di gioco sul completamento testuale dell'input del giocatore, a meno che non vengano “specializzate” con training con dei dataset voluminosi (esempio: set di richieste di giocatori e risposte di master “esperti e coerenti”) oppure “guidate” attraverso prompt con istruzioni molto precise riguardo coerenza e autorita’.

Per noi, la sfida è stata proprio capire come fornire all'IA gli strumenti per mantenere una sua "realtà" di gioco e gestire in modo intelligente gli input del giocatore, anche quelli che sfidano la coerenza. Non essendo adeguato un sistema rigido che nega ogni iniziativa del giocatore, abbiamo cercato di strutturare il prompt in modo che sappia valutare e integrare gli input in modo sensato rispetto al contesto.

In qualche modo già con un prompt per ChatGPT avevamo cercato di arginare questi problemi.
La versione chatGPT-4o (anche senza ragionamento) capisce che il genere di prompt, riportati negli esempi, sono fuori contesto... mentre la versione gratuita 4o mini, con potenzialità molto ridotte, purtroppo sembra avere maggiori difficoltà.
Ecco un nostro test con la nostra ambientazione "The Human Shadow":

photo_2025-05-18_07-23-47.jpg
Un nostro prompt per ChatGPT-4o (anche senza ragionamento) reagisce al prompt del giocatore, che è fuori contesto.

Attualmente, la soluzione su cui stiamo ora puntando e che implementiamo in sistemi come quello che sfrutta l'estensione browser per Google AI Studio, si basa sull'introduzione di un "metaprompt". In pratica, intercettiamo il comando del giocatore e, prima di inviarlo al modello AI, gli aggiungiamo una serie di istruzioni che guidano il suo processo di "thinking" interno.

Questo sistema aggiunge gli elementi necessari in un “metaprompt” che viene poi iniettato a tutti i comandi del giocatore. Ciò permette non solo di forzare un controllo sulla coerenza del contesto di gioco (evitando incoerenze e l’introduzione di elementi fuori contesto come "meteoriti e cannavacciuoli"), ma anche di integrare una valutazione continua da parte del modello di tutte le situazioni di gioco, sia quelle generate autonomamente sia quelle iniettate tramite metaprompt, tramite il suo "thinking", cioè il suo auto-dialogo interno. L'IA non asseconda passivamente l'evocazione arbitraria, ma riconosce che non ha senso. Non accetta “l'uomo con la cicatrice” senza valutarne l'impatto o la presenza plausibile. E, soprattutto, viene spinta a considerare la logica interna della scena, rendendo meno probabile che un personaggio "parli da chilometri di distanza" senza che questo venga almeno segnalato come impossibile nella narrazione.

photo_2025-05-18_07-24-50.jpg

Un nostro prompt su Google AI Studio (che utiliziamo sfrutando un estensione dei brawser) rifiuta il prompt fuori contesto.

È un processo complesso e in continua evoluzione, ma crediamo che l'approccio del metaprompt sia una strada efficace per sbloccare il potenziale dell'AI, offrendo esperienze più profonde e coerenti.

È importante anche ricordare che l'AI, pur con i suoi limiti, ha dei punti di forza unici. La sua capacità di gestire dialoghi è notevole, le LLM sono state addestrate intensamente sui dialoghi e dunque eccellono nel restituirti risposte ricche di sfumature emotive e narrative. La sua conoscenza enciclopedica istantanea su qualsiasi contesto immaginabile.

Certo, permangono sfide. La memoria dell'IA ("finestra di contesto") rimane limitata e mantenere la coerenza su sessioni molto lunghe richiede ancora accorgimenti. Il "prompt drift", ovvero il fatto che le prestazioni dei modelli cambino nel tempo, ci obbliga a continui test. Ma crediamo fermamente che l'approccio del metaprompt e l'integrazione con sistemi esterni che gestiscono la casualità e validano le azioni siano la strada per sbloccare il potenziale dell'AI in questi contesti di avventure testuali, offrendo esperienze più profonde, coerenti e appaganti che vadano oltre la semplice generazione di testo.

La ricerca dei limiti e le strategie per come superarli è proprio il nostro obiettivo principale, affrontando di volta in volta le questioni che vediamo sorgere nel processo di interazione con l'AI.

Ed è chiaro che un'IA, non può replicare l'esperienza di giocare con un'altra persona. Mancano la spontaneità imprevedibile, l'empatia, la capacità di adattamento istantaneo a sfumature sociali o emotive non testuali, l'intenzionalità nel creare una sfida specifica per quel giocatore in quel momento e il legame umano. Tuttavia, questo non significa che l'esperienza offerta dall'AI sia necessariamente da rigettare; è diversa.

Modificato da Lorenzo_l

Crea un account o accedi per commentare

Configura le notifiche push del browser

Chrome (Android)
  1. Tocca l'icona del lucchetto accanto alla barra degli indirizzi.
  2. Tocca Autorizzazioni → Notifiche.
  3. Regola le tue preferenze.
Chrome (Desktop)
  1. Fai clic sull'icona del lucchetto nella barra degli indirizzi.
  2. Seleziona Impostazioni sito.
  3. Trova Notifiche e regola le tue preferenze.