I asked GPT-4 to write a book. The result: “Echoes of Atlantis”, 12 chapters, 115 pages, zero human input

This content has been archived. It may no longer be accurate or relevant.

From Reddit:

The goal of this project was to have GPT-4 generate an entire novel from scratch, including the title, genre, story, characters, settings, and all the writing, with no human input. It is impossible currently to do this using a single prompt, but what is possible is to supply a series of prompts that give structure to the process and allow it to complete this large task, one step at a time. However, in order to ensure that all the creative work is done by GPT-4, prompts are not allowed to make specific references to the content of the book, only the book’s structure. The intention is that the process should be simple, mechanical and possible (in principle) to fully automate. Each time the process is repeated from the beginning, it should create another entirely new book, based solely on GPT-4’s independent creative choices.

The result: Echoes of Atlantis, a fantasy adventure novel with 12 chapters and 115 pages, written over 10 days, from the day GPT-4 was released until now.

Insights/Techniques
My main insights I figured out in the course of doing this project:

Iterative refinement: Start with a high level outline. Make a detailed chapter outline. Then write a draft version of the full chapter (this will be much shorter than desired). Then expand each scene into a longer, more detailed scene.

Bounding (outside-in): GPT-4 loves to go too far ahead, writing about parts of the book that aren’t supposed to happen yet. The key to preventing this is to have it first write the first parts, then the last parts, then fill in the middle parts. The last part prevents it from going too far ahead, and the first parts in turn bound the last part of the previous section. Bounding is used at every level of refinement except the top level.

Single prompt: Often, by using a single large prompt, rather than a running conversation, you can flexibly determine exactly what information will be included in the input buffer, and ensure that all of it is relevant to the current task. I’ve crafted this approach to squeeze as much relevant info as I can into the token buffer.

Continuity notes: Ask it to take notes on important details to remember for continuity and consistency as it goes. Begin with continuity notes summarized from the previous scene, and then fold in additional continuity notes from the previous continuity notes. Continuity Notes will tend to grow over time; if they become too long, ask it to summarize them.

Revising outlines: In some cases, the AI improvises in its writing, for example moving some of the Chapter 5 scenes into Chapter 4, which breaks the book. To resolve this, I ask it after each chapter to go back and update its earlier, higher-level outlines and regenerate the opening and closing scenes of each chapter before continuing. This is very similar to how real authors revise their outlines over time.

Data cleanup: Sometimes outputs will do things a little weird, like copy labels from the input buffer like “Opening Paragraph”, or forget to number the scenes, or start numbering at zero, or add a little bit of stray text at the beginning. Currently I clean these up manually but a fully automated solution would have to cope with these.

Example prompts
These are just a few examples. For full details, see my Research Log.

Level 1: Top-level outline

Me: Please write a high-level outline for a book. Include a list of characters and a short description of each character. Include a list of chapters and a short summary of what happens in each chapter. You can pick any title and genre you want.

Level 1: Updating outline after each chapter

Me: Please edit and update the high-level outline for the book below, taking into account what has already happened in Chapter 1.

Level 2: Scenes (bounding)

Me: Please write a detailed outline describing the first scene of each chapter. It should describe what happens in that opening scene and set up the story for the rest of the chapter. Do not summarize the entire chapter, only the first scene.

Me: Write a detailed outline describing the final, last scene of each chapter. It should describe what happens at the very end of the chapter, and set up the story for the opening scene of the next chapter, which will come immediately afterwards.

Level 2: Scenes

Me: Given the following book outline, and the following opening and final scenes for Chapter 1, write a detailed chapter outline giving all the scenes in the chapter and a short description of each. Begin the outline with the Opening Scene below, and finish the outline with the Final Scene below.

Level 3: Rough draft

Me: Given the following book outline, and following detailed chapter outline for Chapter 1, write a first draft of Chapter 1. Label each of the scenes. Stop when you reach the end of Chapter 1. It should set up the story for Chapter 2, which will come immediately afterwards. It should be written in a narrative style and should be long, detailed, and engaging.

Level 4: Paragraphs (bounding)

Me: Given the following book outline, and the following draft of Chapter 1, imagine that you have expanded this draft into a longer, more detailed chapter. For each scene, give me both the first opening paragraph, and the last, final paragraph of that longer, more detailed version. Label them as Opening Paragraph and Final Paragraph. The opening paragraph should introduce the scene. The final paragraph should set up the story for the following scene, which will come immediately afterwards. The last paragraph of the final scene should set the story up for the following chapter, which will come immediately afterwards.

Level 4: Paragraphs

Me: Given the following book outline, and the following draft of Chapter 1, write a longer, more detailed version of Scene 1. The scene must begin and end with the following paragraphs: (opening and closing paragraphs here)

Continuity Notes

Me: Please briefly note any important details or facts from the scene below that you will need to remember while writing the rest of the book, in order to ensure continuity and consistency. Label these Continuity Notes.

Me: Combine and summarize these notes with the existing previous Continuity Notes below.

Link to the rest at Reddit

2 thoughts on “I asked GPT-4 to write a book. The result: “Echoes of Atlantis”, 12 chapters, 115 pages, zero human input”

  1. “Iterative refinement: Start with a high level outline. Make a detailed chapter outline. Then write a draft version of the full chapter (this will be much shorter than desired). Then expand each scene into a longer, more detailed scene.”

    Reminds me of how the Hardy Boy books were written

Comments are closed.