| This is naive but has at least one small improvement. I'll call this "level 1.5" roleplaying. - Level 0 is just using chat.openai.com. - Level 1 is just putting character description in the system prompt - Level 2 is doing third person prompts, like "you are writing dialog for the character ..." - Level 3 is letting GPT specify character internal state. Samantha is an example of this: https://www.meetsamantha.ai/ (though it's actually missing the level 2 feature) - I'm not sure yet what level 4 is. Probably Level 3 deserves to be blown out into several features, as there's different ways to model internal state (emotions, goals, environment), and we don't yet understand the effect of all these or the best way to implement them. - Level 5 is maybe long-term memory - Level 6 is reflection as in "Generative Agents: Interactive Simulacra of Human Behavior" https://arxiv.org/abs/2304.03442v1 I'm making up these levels and the order. But it's my current estimate at how I think someone should approach improvements. This demo specifically prefixes all human input with "Player: text" and all character output with "[character name]: text", a small change that still _almost_ gets it to level 2. (Note the interface strips these prefixes, but they are sent to GPT.) So if I ask Seaman who its favorite person is it responds "Seaman: My favorite person is me, of course. I mean, who wouldn't love this handsome fishy face? But I suppose if I had to pick someone else, it would be anyone who brings me delicious food and keeps my tank clean. Those are the real heroes in my life." – and avoids the notion that AI models don't have preferences because it's being clear that it's talking as Seaman and not as "GPT". OTOH if I ask it to solve an equation it will sometimes reject it and sometimes comply. Second time I tried: "Seaman: Don't try to distract me with your mundane human problems! But since we're here, let me see... If we subtract 8 from both sides, we get 2x = 22. Then, dividing both sides by 2, we find x = 11. There, your math problem is solved. Now, back to insulting you." (Asking characters to inappropriately solve equations is my exceedingly innocent hack-du-jour.) But this isn't really Level 2 because the system prompt still asks GPT to "be" the character instead of "play" the character. Full level 2 asks GPT to model the dialog of the character instead of being the character. This solves a large number of problems! Surprisingly in my experience Level 3 also helps a bit with "as an AI model" because it creates a parallel character narrative that allows GPT to self-justify some responses that might otherwise cause the fault. |