AI学习研究AI模型训练

Alpaca羊驼(斯坦福最新模型)

GPT-3.5 (text-davinci-003)、ChatGPT、Claude 和 Bing Chat 等指令遵循模型变得越来越强大。许多用户现在定期与这些模型交互,甚至将它们用于工作。然而,尽管它们被广泛部署,...

标签:

概述
GPT-3.5 (text-davinci-003)、ChatGPT、Claude 和 Bing Chat 等指令遵循模型变得越来越强大。许多用户现在定期与这些模型交互,甚至将它们用于工作。然而,尽管它们被广泛部署,但遵循指令的模型仍然存在许多缺陷:它们会产生虚假信息,传播社会刻板印象,并产生有毒语言。

为了在解决这些紧迫问题方面取得最大进展,学术界必须参与进来。不幸的是,在学术界对指令遵循模型进行研究一直很困难,因为没有易于访问的模型在功能上接近闭源模型,如OpenAI的text-davinci-003。

我们正在发布关于指令遵循语言模型的发现,该模型称为Alpaca,该模型是从Meta的LLaMA 7B模型微调而来的。我们在 52K 指令遵循演示中训练 Alpaca 模型,这些演示使用 text-davinci-003 以自学风格生成。在自指令评估集上,Alpaca表现出许多类似于OpenAI的text-davinci-003的行为,但也令人惊讶地小,易于复制/便宜。

我们正在发布我们的训练配方和数据,并打算在未来发布模型权重。我们还将举办一个互动演示,使研究界能够更好地了解羊驼的行为。交互可以暴露意外的功能和故障,这将指导我们未来对这些模型的评估。我们还鼓励用户在我们的 Web 演示中报告任何相关行为,以便我们更好地了解和缓解这些行为。由于任何版本都有风险,我们将在本博客文章的后面部分讨论此开放版本的思考过程。

我们强调,羊驼仅用于学术研究,禁止任何商业用途。这个决定有三个因素:首先,羊驼是基于LLaMA的,它有一个非商业许可证,所以我们必然继承这个决定。其次,指令数据基于OpenAI的文本-davinci-003,其使用条款禁止开发与OpenAI竞争的模型。最后,我们没有设计足够的安全措施,因此 Alpaca 尚未准备好用于一般用途。

训练食谱
在学术预算下训练高质量的教学遵循模型有两个重要挑战:强大的预训练语言模型和高质量的教学遵循数据。第一个挑战通过最近发布的 Meta 新 LLaMA 模型得到解决。对于第二个挑战,自指令论文建议使用现有的强语言模型来自动生成指令数据。特别是,Alpaca是一种语言模型,使用LLaMA 7B模型中的监督学习进行微调,该模型在OpenAI的文本davinci-003生成的52K指令遵循演示上进行微调。

下图说明了我们如何获得羊驼模型。对于数据,我们通过构建自指令方法生成了遵循指令的演示。我们从自指令种子集中的 175 个人类编写的指令输出对开始。然后,我们提示 text-davinci-003 使用种子集作为上下文示例生成更多指令。我们通过简化生成管道(请参阅 GitHub 中的详细信息)改进了自指令方法,并显着降低了成本。我们的数据生成过程会产生 52K 条独特的指令和相应的输出,使用 OpenAI API 的成本不到 500 美元。

羊驼管道
有了这个遵循指令的数据集,我们随后使用Hugging Face的训练框架对LLaMA模型进行了微调,利用了全分片数据并行和混合精度训练等技术。对于我们的初始运行,在 8 台 80GB A100 上微调 7B LLaMA 模型需要 3 个小时,而大多数云计算提供商的成本不到 100 美元。我们注意到,可以提高培训效率,以进一步降低成本。

初步评价
为了评估羊驼,我们对自学评估集的输入进行人工评估(由 5 名学生作者)。该评估集由自我指导作者收集,涵盖了各种面向用户的说明列表,包括电子邮件写作、社交媒体和生产力工具。我们对text-davinci-003和Alpaca 7B进行了盲对比较,我们发现这两个模型的性能非常相似:与text-davinci-003相比,Alpaca赢得了90和89的比较。

鉴于模型尺寸小且遵循数据的指令量适中,我们对这一结果感到非常惊讶。除了利用这个静态评估集之外,我们还一直在交互式测试Alpaca模型,发现Alpaca在各种输入集上的行为通常与text-davinci-003相似。我们承认,我们的评估在规模和多样性方面可能有限。因此,我们发布了一个 Alpaca 的互动演示,并鼓励读者自己评估 Alpaca 并向我们提供反馈。

在本节的其余部分,我们将包含几个交互示例来展示 Alpaca 的功能和局限性。

羊驼关于美洲驼
羊驼关于斯坦福承认
上面的例子表明,羊驼的输出通常写得很好。我们注意到 Alpaca 反映了指令遵循数据集的一般风格。因此,Alpaca的答案通常比ChatGPT短,反映了text-davinci-003的较短输出。

已知限制
羊驼还表现出语言模型的几个常见缺陷,包括幻觉、毒性和刻板印象。特别是幻觉似乎是羊驼常见的失败模式,即使与文本-davinci-003相比也是如此。

例如,在下图中,羊驼错误地表示坦桑尼亚的首都是达累斯萨拉姆,这是坦桑尼亚最大的城市。(直到1974年才成为首都,当时它被多多马取代。

羊驼关于坦桑尼亚首都
此外,Alpaca 可用于生成编写良好的输出,以传播错误信息,如以下示例所示。

羊驼关于随机种子
Alpaca 可能包含与底层语言模型和指令调优数据相关的许多其他限制。但是,我们相信该工件仍然对社区有用,因为它提供了一个相对轻量级的模型,可以作为研究重要缺陷的基础。我们鼓励用户通过在 Web 演示中标记它们来帮助我们识别新的故障类型。总的来说,我们希望羊驼的发布能够促进对教学遵循模型及其与人类价值观的一致性的进一步研究。

释放的资产
我们今天发布以下资产:

演示:每个人都可以尝试羊驼的交互式演示。
数据:用于微调羊驼的52K演示。
数据生成过程:用于生成数据的代码。
训练代码:用于使用拥抱面部 API 微调模型。
我们打算在不久的将来释放以下资产:

模型权重:我们已联系 Meta,以获取有关发布 7B Alpaca 和较大 LLaMA 模型的微调版本的 Alpaca 模型权重的指导。
发布决定
我们相信,释放上述资产将使学术界能够对教学语言模型进行受控科学研究,从而产生更好的科学和最终的新技术来解决这些模型的现有缺陷。

同时,任何发布都会带来一些风险。首先,我们认识到,发布我们的培训配方揭示了某些功能的可行性。一方面,这使更多的人(包括不良行为者)能够创建可能造成伤害(有意或无意)的模型。另一方面,这种意识可能会激励迅速采取防御行动,特别是来自学术界,现在通过对此类模型进行更深入安全研究的手段而获得授权。总体而言,我们认为对研究界的好处超过了此特定版本的风险。

鉴于我们正在发布训练配方,我们认为,鉴于配方的简单性,发布数据、模型权重和训练代码会产生的进一步风险最小。同时,发布这些资产对于可重复的科学具有巨大的好处,因此学术界可以使用标准数据集、模型和代码来执行受控比较并探索扩展。

为 Alpaca 部署交互式演示也存在潜在风险,例如更广泛地传播有害内容并降低垃圾邮件、欺诈或虚假信息的门槛。我们已经制定了两项风险缓解策略。首先,我们使用OpenAI的内容审核API实现了内容过滤器,该API过滤掉OpenAI使用策略定义的有害内容。其次,我们使用Kirchenbauer等人2023中描述的方法为所有模型输出加水印,以便其他人可以(有一定的概率)检测输出是否来自Alpaca 7B。最后,我们对使用演示有严格的条款和条件;它仅限于非商业用途和遵循LLaMA许可协议的使用。

我们理解,一旦我们发布模型权重或用户训练自己的指令遵循模型,这些缓解措施就可以规避。但是,通过安装这些缓解措施,我们希望推进最佳实践,并最终为负责任地部署基础模型制定社区规范。

未来方向
我们对羊驼开启的研究机会感到兴奋。未来有许多令人兴奋的方向:

评估:我们需要更严格地评估羊驼。我们将从HELM(语言模型的整体评估)开始,希望它能够发展到捕获更多生成,遵循指令的场景。
安全性:我们希望进一步研究羊驼的风险,并使用自动红队、审核和自适应测试等方法提高其安全性。
理解:我们希望更好地了解能力是如何从培训配方中产生的。您需要基本模型的哪些属性?扩大规模后会发生什么?指令数据的哪些属性需要?在文本-davinci-003上使用自指令的替代方法是什么?
确认
这项工作是在斯坦福大学以人为中心的人工智能研究所(HAI)和斯坦福自然语言处理(NLP)小组的支持下在基础模型研究中心(CRFM)完成的。我们还要特别感谢麦一凡为演示部署提供的有用的工程支持。

羊驼直接和批判性地依赖于现有作品。我们要感谢 Meta AI Research 训练和发布 LLaMA 模型,感谢自我指导团队为我们提供数据生成管道的基础,感谢 Hugging Face 的训练代码,感谢 OpenAI 铺平道路并展示可以实现的目标。

我们还想强调的是,对于遵循指令的LLM和聊天模型,还有许多其他开放的努力,包括OpenChatKit,Open Assistant和Carper AI。

数据统计

相关导航