用ChatGPT写一本小说,是什么体验?(译文)

内容简介

基亚拉·科茨伊(Chiara Coetzee)用ChatGPT-4写了一本115页的小说《亚特兰蒂斯的回声》。这篇文章记录了她创作这本小说的主要过程。

主要方法:

并不是简单地对ChatGPT说:给我写一个小说。 而是分步、一章一章完成的。

把整本书分为4个主要步骤:

第一步:全书大纲。 先让ChatGPT写整本书的大纲;然后每章后,让ChatGPT更新大纲

第二步:每章大纲。先让ChatGPT写每一章的开头场景和结尾场景,然后再根据第一步的全书大纲,和开头、结尾场景,写每一章的详细大纲。

第三步:写初稿。根据全书大纲和每章的大纲,写初稿,并为每个场景打标签。

第四步:写段落。根据第三步的初稿,写段落。先写段落的开头和结尾,用来控制内容边界;然后填充内容。

原文发布在medium上,用文章标题可以搜到:Generating a full-length work of fiction with GPT-4


正文

项目目标

这个项目的目标是让最新的大语言模型ChatGPT的GPT-4版本,不需要人类干预,从头开始生成一整本小说,包括标题、类型、故事情节、角色设定和所有文字。

目前无法使用单个提示(“写一本书”)来完成此任务,但可以提供一系列提示,为过程提供结构,并允许逐步完成这项大任务。

为确保所有创意工作都由GPT-4完成,提示(Prompts)不允许对书籍内容进行具体引用,只能涉及书籍结构。这样做的目的是使过程简单、机械化,并且在原则上可以完全自动化。

每次从头开始重复这个过程,都应该创建另一本完全新的书籍,仅基于GPT-4独立的创造性选择。

结果:《亚特兰蒂斯的回声》,一部奇幻冒险小说,共 12 章 115 页,于 2023 年 3 月用 10 天写成。

一些感想、心得体会

完成这个项目的一些主要感想:

  • 迭代改进 : 从高层次的大纲开始。制作详细的章节大纲。然后写出完整章节的草稿版本(比期望的要短得多)。最后将每个场景扩展为更长、更详细的场景。
  • 边界控制(由外向内):GPT-4 喜欢过度前进,写下了书中还没有发生的部分。防止这种情况的关键是让它先写出第一部分,然后再写最后一部分,最后填充中间部分。最后一部分可以防止它走得太远,而第一部分则限定了上一个章节的最后一部分。除了顶层之外,在每个细化级别都使用边界控制。
  • 单个提示(Single prompt):使用单个大提示(a single large prompt)而不是连续对话(a running conversation),可以灵活地确定输入缓冲区中包含的信息,并确保所有信息都与当前任务相关。有时即使使用单个提示也可能会超出令牌缓冲区的限制,需要删除一些文本。
  • 连续性笔记:让它记录重要的细节,以保持连贯性和一致性。从前一个场景总结连续性笔记,然后将之前的连续性笔记合并进去。这样做,提供有限的上下文(仅最近的场景和上一个场景的连续性笔记),避免限制太多。如果连续性笔记太长了,就让它进行总结。
  • 修改大纲:在某些情况下,AI会在写作过程中进行即兴创作,例如将第五章的一些场景移动到第四章中,这会破坏整本书。为了解决这个问题,在每个章节之后,我都要求它回顾并更新其早期、更高层次的大纲,并重新生成每个章节的开头和结尾场景后再继续。这与真正的作者随着时间推移修改他们大纲的创作过程非常相似。
  • 数据清理:有时会输出一些奇怪的事情,比如从输入缓冲区复制标签,例如“开头段落”,或者忘记对场景进行编号,或者从零开始编号,或在开头添加一些杂乱的文本。目前我手动清理这些问题,但完全自动化的解决方案,必须应对这些问题。

提示词示例

这里只是几个关键的提示词,并未包含所有的提示词。

如果感兴趣,可以点击下方链接,看到所有的提示词: https://docs.google.com/document/d/108oqbYW4BPc0hfHQDyXpk8RlsNmXJaJzi2U6G1tRLTg/edit#

级别 1:顶级大纲 (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.)

级别 1:在每章之后更新大纲(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.)

级别 2:场景(边界)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.)

第 2 级:场景(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.)

第 3 级:初稿(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.)

级别 4:段落(边界)(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.)

第 4 级:段落(Level 4: Paragraphs )

我:根据以下书籍大纲和第一章的草稿,写一个更长、更详细版本的场景1。该场景必须以以下段落开头和结尾:(在此处插入开头和结尾段落)。 (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))

连续性笔记

我:请简要记下下面场景中的任何重要细节或事实,在写本书的其余部分时,你需要记住这些细节或事实,以确保连续性和一致性。标记这些连续性说明。 (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.)

对结果的反思

虽然在很多方面,这部作品确实成为了一部连贯的小说,遵循着自己的大纲并按照其规定的节奏进行,而且其中有些部分真的挺令人兴奋和有趣(特别是最早和最后的章节),但我不敢称它是一本好书。它仍然存在一些奇怪而有趣的问题:

情节突兀:偶尔,AI会提到一些尚未真正介绍/解释的事情,比如Langdon在第4章知道Malakhar勋爵,或者Aria在梦见Neria女王后拥有一个物理吊坠。你会感觉:可能漏掉了什么。

开头和结尾段落的衔接问题:由于开头和结尾段落是在场景的其余部分之前编写的,有时它们与其余部分不流畅连接,甚至可能变得多余。 进行额外的命令可以帮助解决这个问题。 同样地,有时章节之间的过渡会显得突兀,比如从第8章到第9章(在迷宫中与马拉卡尔战斗到突然打开通往亚特兰蒂斯的通道)。

遗忘某些细节 :虽然某些细节在连续笔记或大纲中得以保留,但其他的则被决定舍弃,因此它们再也无法被引用,因为它们不再在缓冲区中保留。 一个很好的例子是Aria作为毕业礼物收到的指南针,在感觉上非常像一把从未再次提及的切科夫之枪。 另一个例子是他们在开始时购买的特殊武器,却从未使用过。 唯一明确的解决方案要么是更大的缓冲区,要么是长期记忆解决方案。我考虑了一种更好的连续性笔记流程,在其中删除可以从章节大纲中推断出来的项目,为这样更多详细信息腾出空间,但没有实施这个想法。

重新排列:尽管我尽力限制,例如将岛上早期场景从第五章移动到第四章,以及将早期迷宫场景从第六章移动到第五章,但AI仍然将一些部分从后面的章节移到了前面的章节。 唯一真正解决这个问题的方法是:要求其事后编辑和更新高层次概述。 这类似于人类作者所做的——他们很少把自己的大纲视为静态和不可侵犯。

节奏:对我来说,迷宫章节感觉有点艰难。一个又一个陷阱房间,持续了很长时间。 这些确实符合原始大纲的要求,所以原始大纲也是问题的一部分,但也有可能通过其他方式让迷宫感觉新颖和不同。在我看来,这似乎是GPT-4写作时会犯的一个错误。

过于规则的结构:AI几乎总是选择每章写6-8个场景,每个场景大约1-2页。这感觉太死板。 而许多人类写的作品,一些场景/章节很短,而其他则更长。也许最好开发一种动态扩展结构,在达到所需细节水平之前继续扩展。

不同的细节水平:一些场景非常详细,包括对话和微小动作,而其他一些(甚至更重要的场景),似乎在重要事件上,简单地概述过去。我认为采用某种动态扩展来实现一致的细节水平可能会有所帮助。

常见问题

  1. 问题:这本书不是很好。我不认为专业作者会有很多担心。

回答:没错,但这不是重点。这只是要证明:AI可以自己写一本100页以上的书,而且能够保持连贯性和按照原计划进行。这证明了AI具备写作能力,并且未来的GPT模型会成为更好的作者。

  1. 问题:作者是否在选择保留哪些答案和丢弃哪些答案时,花费了很多心思?

回答:作者很少重新生成回答,只有在发现过程中存在严重问题,或书中存在无法通过流程更改解决的逻辑问题时,才会这样做。 大多数情况下,书中的文本是作者从GPT-4得到的第一个回复。

近期文章

发表评论