3 ms·
It would be really interesting to see what's possible taking one of the more advanced/featureful MUD engines and combining them somehow with LLM text generation
by ilaksh 4y ago
It would be really interesting to see what's possible taking one of the more advanced/featureful MUD engines and combining them somehow with LLM text generation (especially text-davinci-003 from OpenAI since its so human-like).
I guess AI Dungeon is attempting something a bit like that. But what I am thinking is keeping the core as the MUD, which will ensure that game state and things stay consistent. Then having the AI generate things based on this core state fed as part of each prompt, to add a bit of variety to descriptions, or allow NPCs to have conversations. But always anchored by the world state tracked by the MUD. Except maybe for some random encounters inserted here and there.
That's the biggest issue with AI Dungeon is that it tends to not quite track whats going on properly from one sentence/paragraph to the next. Although they have improved it recently.
- ianbicking 4y agoI've been playing around with this idea a bit from a world building direction: https://www.youtube.com/watch?v=YUEXo3wrf70 https://www.youtube.com/watch?v=YUEXo3wrf70 – it generates cities in a top-down way using GPT. From city to neighborhood to buildings with individual rooms and items, though having implemented it I think anything smaller than buildings is the wrong approach. A particularly neat part is generating characters with backstories. Now I'm trying to experiment with giving them some personal perspective and autonomy. I haven't actually tried to move the data into a running game... I'd like to but I feel like I'm going to put it off indefinitely :-/
- aww_dang 4y agoI experimented with something similar at the conceptual stage. I used XML and a basic GPT2 model. The focus was on NPCs and quest items. Throw away invalid XML and prompt for NPCs to produce or consume quest items. Looking at reworking it, but ultimately it is something which has to be semi-supervised.
- ilaksh 4y agoThat's amazing! Reminds me of this site: https://www.litrpgadventures.com/ https://www.litrpgadventures.com/ which I think also uses OpenAI.
- int_19h 4y agoYou don't actually need to feed the entire core state as part of each prompt. You just need to tell it that X is one of the things that are known, and if it needs to know X to produce output, it should ask by outputting some F(X) - few-shot learning is usually the most reliable. Then you intercept those in the output and replace them with actual values before feeding it back into LLM for the next prediction. The "interface" can vary. For example, you can give it a bunch of SQL DDL definitions with descriptive table and field names and tell it that it can query that database as needed. When it works, it can get really impressive - I've seen it do inner queries and joins, and it routinely uses ORDER BY and LIMIT. But then sometimes it just mixes up fields from different tables even in very simple queries (although if you respond with "ERROR: no such field" etc, it can usually self-correct), and it can sometimes interpret the results in creative ways. The approach where it has to query for stuff one by one in a simple well-defined format is much more reliable.
- pkaye 4y agoI was playing with chatgpt in running a d&d game. It knew a lot of the rules but also needed to be prompted to follow some rules. Like it could do rolling for hits and damage, spells, hit points, healing. Sometimes is assumed things like you had a key when you didn't. When you asked where it came from it realized it's mistake.
- wardedVibe 4y agoNow I'm wondering if anyone has checked whether chat gpt can actually generate iid random numbers, or if it has the same sorts of bias as a human, or something else entirely.