“Co-Writing Screenplays and Theatre Scripts With Language Models (Dramatron): An Evaluation by Industry Professionals”, 2022-09-29 ():
Language models are increasingly attracting interest from writers. However, such models lack long-range semantic coherence, limiting their usefulness for longform creative writing.
We address this limitation by applying Chinchilla language models hierarchically, in a system we call Dramatron. By building structural context via prompt chaining, Dramatron can generate coherent scripts and screenplays complete with title, characters, story beats, location descriptions, and dialogue.
We illustrate Dramatron’s usefulness as an interactive co-creative system with a user study of 15 theatre and film industry professionals. Participants co-wrote theatre scripts and screenplays with Dramatron and engaged in open-ended interviews. We report critical reflections both from our interviewees and from independent reviewers who watched stagings of the works to illustrate how both Dramatron and hierarchical text generation could be useful for human-machine co-creativity.
Finally, we discuss the suitability of Dramatron for co-creativity, ethical considerations—including plagiarism and bias—and participatory models for the design and deployment of such tools.
…3.3 The Importance of Prompt Engineering: …For Dramatron, each prompt set is composed of: (1) title prompt, (2) character description prompt, (3) plot prompt, (4) location description prompt, (5) and dialogue prompt. Each prompt is detailed briefly below to give a sense of how they are engineered; additional details are in Appendix E.
The Title Prompt is used to generate titles from a log line. A simplified title prompt, a user-provided log line, and randomly sampled titles are shown in Figure 3.
It shows a prefix with an instruction (
Examples of alternative, original and descriptive titles for known play and film scripts.) and an example (Example 1. Ancient Greek tragedy […]. Title: In My Brother’s Name<end>). The prefix finishes with:Example 2. A user-input log line (eg. Grandma Phyllis and Grandpa Jim […]) is concatenated to that prefix, as well as the tagTitle:, which encourages the LLM to generate a title that matches the log line. From a few examples, the LLM has “learned” to generate a related title and terminate tag<end>.The Character Description Prompt is used to generate character names and descriptions from a log line. The Plot Outline Prompt is used to turn a log line and list of characters into a plot. This prompt encourages the few-shot language model to transform a single sentence log line into a sequence of scene descriptions. Each scene is highly compressed, describing only the short name of the location, the narrative element identifying the position of the scene in the narrative arc (see §2), and a summary of what the characters are doing and saying, often called a “narrative beat”69. As a note, the prompt imposes a strong representational constraint on the way Dramatron represents a scene; each scene is composed of a location, narrative element identifier, and beat.
The Location Description Prompt is used to generate a detailed scenic description from a place name and a log line.
Finally, the Dialogue Prompt is used to turn a beat (ie. the scene summary), scene location description, description of each of the characters involved in the scene, and the log line (for story consistency), into dialogue.
This prompt uses scene information generated for both the current and previous scenes.
…The writer can furthermore perform these operations by stepping forward and back in the Dramatron hierarchy. For example, they could: (1) generate a title, (2) generate a new title, (3) edit the title, (4) generate a list of characters, (5) edit the characters by removing one character and changing the description of another, (6) generate a plot outline, (7) edit the plot by removing part of the narrative arc, (8) generate a continuation of that edited plot, (9) go back and rewrite the log line, etc. This co-writing approach allows the human and Dramatron to both contribute to the authorship of a script. Following these operations, the human author could further edit and format to finalize a script. Appendix G shows examples of human-edited scripts.