开源模型32K长文本版本发布
一个开源LLM支持32K上下文长度,适合处理长文本场景的开发者集成使用。
一个开源LLM支持32K上下文长度,适合处理长文本场景的开发者集成使用。
在之前博客文章工作的基础上,我们今天发布了一篇 arXiv 论文,题为"Giraffe: Adventures in Expanding Context Lengths in LLMs"。
Giraffe 是一个新的模型系列,通过微调来自 LLaMA 和 LLaMA2 的基础模型构建而成。我们包含了从 LLaMA 微调的 4k Giraffe 和 16k Giraffe,以及从 LLaMA2 微调的 32k Giraffe,并在 HuggingFace 上发布了它们的权重。我们还向研究社区发布了我们的训练代码、评估数据集和评估脚本。
本论文探讨了大语言模型 (LLMs) 的上下文长度外推课题,这些模型近年来在自然语言建模任务中表现卓越。上下文长度外推是指使用在短上下文长度上训练的 LLM 进行更长上下文长度的评估,而无需对长上下文进行任何进一步的训练。拥有能够外推至更长上下文的模型对于多种任务至关重要。例如,如果你想让 LLM 从你拥有的大型数据语料库中检索信息,更大的上下文容量允许模型同时处理更多的语料库(或者也许甚至全部!),这样它可以用更少的错误执行更复杂的检索。这对于维持长对话(想象与 AI 驱动的聊天机器人的互动)或让 LLM 帮助处理大型现有代码库的编码也可能很重要。
那我们为什么不能直接在更长的上下文上训练模型呢?主要原因是现代 LLM 架构的一个关键组件——称为自注意力机制——在内存和计算方面都随上下文长度二次方扩展,因此很快就会到达一个点,你没有足够的 GPU、时间或金钱来训练更长的上下文。因此,拥有一种可以零样本外推至之前从未见过的上下文长度的方法至关重要。
近期关于上下文长度外推的工作中已提出了许多方法。在本论文中,我们整理了我们认为最突出的方法,并对它们进行了彻底的测试以确定哪些最有效。我们还提出了几个新的方法,其中一个我们称之为截断(truncation),显示了一些有前景的结果。
评估 LLM 性能的困难之一是选择正确的评估方法。文献中最常用的指标是下一个 token 困惑度(next-token perplexity),它衡量模型在给定前面上下文的情况下预测下一个 token 的好坏。然而,我们认为测量困惑度的文档通常只需通过基于整个可用上下文的一个小子集产生合理连贯的文本分布就能实现良好性能。我们在本论文中表明,出于这个原因,困惑度在区分模型之间的长上下文性能方面的敏感性不如我们引入的新任务,这些新任务更强烈地关注模型回忆准确性而非通用文本一致性。
这些新任务是 LongChat-Lines、FreeFormQA 和 AlteredQA。第一个将 LongChat 引入的键值检索任务扩展到更长的上下文。FreeFormQA 和 AlteredQA 来自自然问题数据集(Natural Questions Dataset),是基于维基百科的问答数据集。我们将所有三个任务作为 HuggingFace 数据集发布。
在 LLMs 的上下文长度外推领域仍然存在许多开放问题。正如我们在论文中所示,我们调查的任何方法目前都不完全满足能够真正外推而不会出现性能某些程度降级的要求。我们对进一步研究这个课题以及找到解决这些问题的方法感兴趣;敬请持续关注!
Giraffe – Long Context LLMs - 2023 年 8 月 22 日