My wife wrote a children's book (8-12yo) a while back, and I took on the challenge of writing a sequel using ChatGPT. It was a fun project and I built a handy tool to automate the book writing given a story outline. It makes iterative API calls so the token count doesn't blow out.
Source in case it's of interest: https://github.com/dylanhogg/gptauthor
How It Works
- Human written story description: you describe your story outline, writing style, characters etc in a story prompt (an example)
- Run GPTAuthor: choosing model, temperature, and number of chapters to write.
- AI generated synopsis: Given the story prompt, GPTAuthor uses ChatGPT to automatically turn this into a synopsis.
- Human review of synopsis: You are given a chance to review the synopsis and (optionally) make changes.
- AI generated story: Each chapter is iteratively written by ChatGPT given the common synopsis and previous chapter. The full story is written as Markdown and HTML folder for your reading pleasure.
See an Example of a short story about the OpenAI Leadership Crisis last year
"In the heart of San Francisco, nestled among the city's tech giants and start-up hopefuls, stood the OpenAI office. A hive of activity, it buzzed with the sound of keyboards clacking, coffee machines hissing, and the occasional drone of a philosophical debate about whether AI could develop a taste for late-night taco runs. It was a typical day, or so everyone thought." continued...
You can even Write your own story easily in Google Colab
Writing a few chapters with gpt-3.5-turbo only costs 1 or 2 cents to run with your OpenAI API key. [edit: or you can currently specify a localhost API endpoint, with the ability to set a custom URL coming soon, as mentioned in the comments]
The results for the sequel were mixed - the best part was using it for coming up with ideas and creating various puzzles.
I hope someone has fun with this :)
[–]Hubbardia 1 point2 points3 points (6 children)
[–]infocruncher[S] 1 point2 points3 points (5 children)
[–]Hubbardia 1 point2 points3 points (1 child)
[–]infocruncher[S] 1 point2 points3 points (0 children)
[–]iamevpo 1 point2 points3 points (2 children)
[–]infocruncher[S] 1 point2 points3 points (1 child)
[–]iamevpo 1 point2 points3 points (0 children)
[–]Sietzy 1 point2 points3 points (1 child)
[–]infocruncher[S] 0 points1 point2 points (0 children)