18 April 2021
This past week I was granted beta access to OpenAI's GPT-3 model. So far, the only truly gripping application of this software I had seen was AIDungeon, which is essentially a table-top role-playing game on steroids: you're given a lead-in to an adventure story, and you provide actions which GPT-3 uses to generate further story events. Most of the other applications OpenAI has on its website are narrow uses, such as semantic search, summarization, text styling, translation, sentiment analysis, and so on. These sorts of things are pretty obvious and not very interesting to toy around with. Sure, GPT-3 is a qualitative step up from other models at these tasks, but that step taken is a predictable one once you've seen a few examples. I don't have any particular need for text processing in my current daily life, so I decided I would have to come up with an intrinsically interesting application. AIDungeon had set a precedent here, indicating that GPT-3's completion capabilities are very compelling in an interactive, conversational format.
So I made Resurrect. This is a web app that lets you chat in an interview format with historical figures, ranging from Cleopatra and Friedrich Nietzsche, to Benjamin Franklin and Albert Einstein. It's not live for public use yet (more on that below) but I've gotten a good bit of amusement out of using it myself over this weekend.
The few conversations I've had in this app are surprisingly deep, and often educational:
There are some gotchas with the application, e.g., the interviewee will begin repeating phrases or behaving in an annoyed manner; generally, it is difficult or impossible to recover the interview once this happens (or maybe I'm just bad at appeasing angry interviewees). I will have to implement some tools to prevent and mitigate this behavior; I do not think it will be difficult. One major issue I do not see a solution to is that of interviewees lying or failing to recall very basic information about their lives. Outside of the interviewer gently nudging the interviewee to recall information, or insisting on the truth, this does not seem to be resolvable; furthermore, even when the interviewer is clever and tries to keep the subject accurate, the interviewee is exceptionally likely to become frustrated and exhibit the aforementioned behaviors. I have noted that these interview-ruining behaviors occur around 20-30% of the time in my own experience.
I feel it necessary to note also that I am refraining from including living people as interviewees in this application. Of course, GPT-3 simulated people are not to be considered accurate depictions of those people (as they can be manipulated into saying uncharacteristic or harmful things), but I do wish to avoid any ethical missteps with this toy project. So living people are not going to be available. I'm also not adding dictators or people who committed major crimes against humanity or other controversial activities — Genghis Khan is off the table, for example.
Resurrect has, over the course of a week, amassed a collection of some 54 available interviewees. I hope to continue developing the application and open it to the public within a couple of months, my studies and work permitting. This is also assuming that OpenAI will approve my application to move into production, which is far from guaranteed.
Assuming the deployment of the web application is successful, I may also develop a native Android application. But for now, everything rides on getting OpenAI's approval.
If you wish to make a contribution to this project, feel free to submit a pull request to the GitHub repository. One particularly low-hanging contribution would be new interviewees to include; submitting an issue with a list of candidates is probably the best way to go about this.