【简读】RECURRENT GPT: Interactive Generation of (Arbitrarily) Long Text
文章目录
【注意】最后更新于 June 20, 2023,文中内容可能已过时,请谨慎使用。
简述
本文针对 GPT 等 LLM 无法生成任意长的内容的问题,提出了一种在 LLM 基础上模拟 LSTM 的递归生成方法,实现了 LLM 的“任意”长文本。
论文原文:
https://arxiv.org/pdf/2305.13304.pdf
动机
目前的 LLM 往往基于 Transformer,而 Transformer 本身固定长度的 Context 限制了 LLM 生成任意长文本的能力,这使得此类 LLM 难以适用于长文的生成。
提出的方法
架构
针对上述问题,该文从 RNN 得到启发,思考能不能通过递归的方式循环生成内容,从而达到生成“任意”长的文本的目标。具体来说其参考 LSTM 架构,整体架构如下:
如上图所示,在每个时刻 $t$ 中,输入有:
- 长期记忆 $C_t$:这里的长期记忆包含所有生成内容的概要,从而让 LLM 生成时能不遗忘之前的信息。但是 LLM 毕竟长度有限,随着文章变长 $C_t$ 必然超长,因此其采用 Sentence Transformers 将每段记忆都嵌入,从而在生成 Prompt 的时候通过 语义检索的方式检索出最相近的几条输入,从而实现“任意”长的长期记忆。
- 短期记忆 $h_t$:这里的短期记忆一般是由上个时刻生成的,用于描述当前时刻最新的一些状态,并且随着时刻变更会不断更新,一般 20 句内。
- 计划 $x_t$:计划指的是上个时刻用户/模拟人类从候选计划中选择出来的计划,或者是用户编辑的计划,如小说中上一时刻选择哪一种行动剧情,计划将会对后续的进展进行影响。
输出为:
- 输出新内容 $O_t$:即 LLM 输出的续写内容,如小说中是新生成的小说内容,并且这个内容将会被概括后添加到长期记忆中,以避免后续剧情对前文的遗忘。
- 新的短期记忆 $h_{t+1}$:新的短期记忆是 LLM 根据当前时刻的输入单独生成出来的一个记忆,并会给出更新记忆的解释(并未在架构中表示,实现中有),可以理解成是输出一个当前最新的记录。
- 几个候选计划 $x^i_t$:LLM 输出的一些可能的计划选项,如小说中指的是后续的剧情行动,并且也可以用户自己进行编辑。
关键创新点
私以为,本文的核心创新有一下几点:
- 采用类似于 LSTM 的架构,区分长短期记忆,通过对长期记忆的检索筛选结合短期记忆来实现 LLM 生成长文的能力。
- 提出了交互式小说的交互方式,即该文所说的 AI As Content(AIAS)新范式,在交互上有较好的创新。
怀疑/缺陷
首先深刻怀疑该文进行实验的时候是在 “生成最长的文本是 5k 字” 的情况下进行评估,是否再生成更长的文本之后效果就会极速下降?不得而知。
文章作者 Littleor
上次更新 2023-06-20