Help me write a poem : Instruction Tuning as a Vehicle for Collaborative Poetry Writing (2022)

Abstract: Recent work in training large language models (LLMs) to follow natural language instructions has opened up exciting opportunities for natural language interface design. Building on the prior success of large language models in the realm of computer assisted creativity, in this work, we present CoPoet , a collaborative poetry writing system, with the goal of to study if LLM’s actually improve the quality of the generated content. In contrast to auto-completing a user’s text, CoPoet is controlled by user instructions that specify the attributes of the desired text, such as Write a sentence about ‘love’ or Write a sentence ending in ‘fly’ . The core component of our system is a language model fine-tuned on a diverse collection of instructions for poetry writing. Our model is not only competitive to publicly available LLMs trained on instructions (InstructGPT), but also capable of satisfying unseen compositional instructions. A study with 15 qualified crowdworkers shows that users successfully write poems with CoPoet on diverse topics ranging from Monarchy to Climate change , which are preferred by third-party evaluators over poems written without the system.

## introduction advancements in large language models (llms) have made remarkable progress towards generating coherent text in a wide variety of domains. this has spurred increasing interest in computer-assisted creativity @xcite @xcite such as building co-creative assistants for writing stories, poems, and argumentative essays @xcite @xcite @xcite . the adoption of these technologies hinges on their * both authors contributed equally 1 our code, preprocessed data, models, and the interaction logs from our user study are available at https://github. com/vishakhpk/creative-instructions write a simile about 'cake' a cake is like a cloud of joy. a cake is like a piece of heaven. suggest a verse to follow the sentence 'the cake is like a cloud of joy' the frosting is like a rainbow. so soft so fluffy, i could cry. the cake is like a cloud of joy. the frosting is like a rainbow. one slice is heaven on earth, a flowing chocolate volcano. write a poetic sentence that contains the word 'chocolate' and ends in 'volcano' a flowing chocolate volcano. i ate so much chocolate and erupted like a volcano. the cake is like a cloud of joy. the frosting is like a rainbow. one slice is heaven on earth, the cake is like a cloud of joy. the frosting is like a rainbow. the cake is like a cloud of joy. ## data to train a model to follow instructions, we @xmath0, @xmath1. the key challenge to building such a model is the lack of parallel data, so we collect our own dataset of creative writing instructions from publicly available poem corpora or relevant subreddits from reddit ( based on some initial feedback from professional poets, we decided to include 3 major types of instructions: 1) continuation based in-structions that suggest content when writers are blocked/clueless on how to proceed; 2) instructions on lexical constraints to enable greater control of poetic form such as rhyme, sound, and meter. these are instructions that force language models to obey specific choices such as generating a line that contains a specific topic, start word, end word or a sentence with a particular rhyme; 3) instructions on rhetorical devices that are mostly used for introducing embellishments and imagery in a poem such as metaphor, similes, and onomatopoeia. each instruction consists of a template (unique to the instruction type) and one or more arguments, as can be seen in to allow models to adapt to linguistic variations of the instruction templates, we also include paraphrases of the instruction templates, e.g., instead of "write" we also use"generate", or instead of "write a sentence about" we use "write a sentence that contains the word" or "write a sentence that includes the word". in total, our dataset consists of 873,574 <instruction, @xmath4,180 train and 65,394 held-out validation examples. 3 we evaluate performance on three test sets of hand-crafted instructions of varying difficulty (section 3.2). in this section, we first describe our models and baselines, followed by the evaluation results using both automatic metrics (section 3.3) and human evaluation (section 3.4). ## copoet: collaborative poem writing our results in section 3.4 demonstrate copoet's ability to satisfy the constraints specified in the instructions. this presents us with an opportunity to test the model's capability in collaborative writing tasks. we design our user study (figure 3 ) to answer the following two main research questions: ## conclusion in this work, we present copoet, a collaborative poetry writing system that is controlled by user instructions that specify the attributes of any desired text. our system is built upon a language model fine-tuned on a diverse collection of instructions for poetry writing. empirical results show that our model is not only competitive with publicly available llms trained on instructions (in-structgpt), but also capable of satisfying unseen compositional instructions. a further study with 15 qualified crowd-workers shows that users successfully write poems with copoet on diverse topics, which are also preferred by third-party evaluators over poems written by solo-writers. these results show that language models acting as writing assistants are capable of understanding user intents and collaborating with them to improve the final outcome, potentially makes a challenging task such as poem writing more accessible to users. going forward we hope to extend our research to more challenging instructions such as converting longer content planning tasks into the instruction tuning setup to assist users with longer story writing. to provide more robust assistance, we also hope to study how to train models that generalize better to completely unseen instructions. finally, we intend to more holistically study the problem of co-creative writing by not just examining how to train better assistive models but also how to design effective user interfaces for end users.