重要新闻Alpaca:一个强大的开源指令跟随模型-aigc导航|ai导航
我们介绍了Alpaca 7B,它是在 52K 指令跟随演示中从 LLaMA 7B 模型微调而来的模型。Alpaca 的行为类似于 OpenAI 的 text-davinci-003,同时出奇的小且易于/便宜地复制(<600 美元)。网络演示 GitHub
概述
GPT-3.5 (text-davinci-003)、ChatGPT、Claude 和 Bing Chat 等指令跟随模型变得越来越强大。许多用户现在定期与这些模型交互,甚至将它们用于工作。然而,尽管它们得到广泛部署,指令遵循模型仍然存在许多缺陷:它们会产生虚假信息、传播社会刻板印象并产生有毒语言。
为了在解决这些紧迫问题方面取得最大进展,学术界的参与很重要。不幸的是,在学术界对指令遵循模型进行研究一直很困难,因为没有开源模型在功能上接近闭源模型,例如 OpenAI 的 text-davinci-003。
我们正在发布我们关于指令跟随语言模型的发现,该模型被称为Alpaca ,它是从 Meta 的LLaMA 7B 模型中微调而来的。我们使用 text-davinci-003在以自我指导方式生成的 52K 指令跟随演示上训练羊驼模型。Alpaca 表现出许多类似于 OpenAI 的 text-davinci-003 的行为,但也出奇地小且易于复制/便宜。
我们正在发布我们的训练配方和数据,并打算在未来发布模型权重。我们还举办了一个互动演示,让研究界更好地了解羊驼的行为。交互可以暴露意想不到的能力和失败,这将指导我们未来对这些模型的评估。我们还鼓励用户在我们的网络演示中报告任何相关行为,以便我们更好地理解和减轻这些行为。由于任何版本都有风险,我们稍后将在本博文中讨论我们对这个公开版本的思考过程。
我们强调 Alpaca仅用于学术研究,禁止任何商业用途。这个决定有3个因素:第一,Alpaca基于LLaMA,有非商业许可,所以我们必然继承这个决定。其次,指令数据基于 OpenAI 的 text-davinci-003,其使用条款禁止开发与 OpenAI 竞争的模型。最后,我们没有设计足够的安全措施,所以 Alpaca 还没有准备好部署到一般用途。
训练食谱
在学术预算下训练高质量的指令跟随模型有两个重要挑战:强大的预训练语言模型和高质量的指令跟随数据。Meta 最近发布的新 LLaMA 模型解决了第一个挑战。对于第二个挑战,self-instruct论文建议使用现有的强语言模型自动生成指令数据。特别是,Alpaca 是一种语言模型,它使用来自 LLaMA 7B 模型的监督学习在 OpenAI 的 text-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 进行了盲配对比较,我们发现这两个模型的性能非常相似:Alpaca 在与 text-davinci-003 的比较中以 90 比 89 获胜。
考虑到小模型尺寸和适度的指令跟随数据,我们对这个结果感到非常惊讶。除了利用这个静态评估集,我们还一直在交互式地测试羊驼模型,发现羊驼在不同的输入集上的表现通常与 text-davinci-003 相似。我们正在发布Alpaca 的交互式演示,并鼓励读者自己评估 Alpaca 并向我们提供反馈。
在本节的其余部分,我们包括几个交互示例来展示 Alpaca 的功能和局限性。
上面的例子表明,Alpaca 的输出通常写得很好。我们注意到羊驼反映了指令跟随数据集的一般风格。因此,Alpaca 的答案通常比 ChatGPT 更短,反映出 text-davinci-003 的输出更短。
已知限制
羊驼还表现出语言模型的几种常见缺陷,包括幻觉、毒性和刻板印象。尤其是幻觉似乎是羊驼的常见故障模式,即使与 text-davinci-003 相比也是如此。
例如下图中,Alpaca 误说坦桑尼亚的首都是达累斯萨拉姆,是坦桑尼亚最大的城市。(它在 1974 年之前一直是首都,之后被多多马取代。)
此外,Alpaca 可用于生成编写良好的输出以传播错误信息,如以下示例所示。
Alpaca 可能包含许多与底层语言模型和指令调优数据相关的其他限制。但是,我们相信该工件对社区仍然有用,因为它提供了一个相对轻量级的模型,可作为研究重要缺陷的基础。我们鼓励用户通过在网络演示中标记它们来帮助我们识别新类型的故障。总的来说,我们希望 Alpaca 的发布能够促进对指令遵循模型及其与人类价值观的一致性的进一步研究。
资产释放
我们今天发布以下资产:
Demo : 一个互动演示,供大家试用 Alpaca。数据:用于微调 Alpaca 的52K 演示。数据生成过程:生成数据的代码。超参数:用于使用 Hugging Face API微调 模型。
我们打算在不久的将来发布以下资产:
模型权重:我们已联系 Meta 以获得有关发布羊驼模型权重的指导,包括 7B 羊驼和较大的 LLaMA 模型的微调版本。训练代码:我们的代码使用LLaMA 的 Hugging Face 接口。截至目前,支持 LLaMA 的工作仍在进行中且不稳定。一旦 Hugging Face 正式支持 LLaMA,我们将给出准确的训练命令。
发布决定
我们相信,发布上述资产将使学术界能够对指令跟随语言模型进行受控科学研究,从而产生更好的科学并最终产生新技术来解决这些模型的现有缺陷。
同时,任何发布都带有一定的风险。首先,我们认识到发布我们的训练配方揭示了某些能力的可行性。一方面,这使更多人(包括不良行为者)能够创建可能造成伤害(有意或无意)的模型。另一方面,这种意识可能会激励迅速采取防御行动,尤其是来自学术界的行动,他们现在有能力对此类模型进行更深入的安全研究。总的来说,我们认为这一特定版本对研究社区的好处大于风险。
鉴于我们正在发布训练配方,我们相信发布数据、模型权重和训练代码会产生最小的进一步风险,因为配方很简单。同时,发布这些资产对于可重复的科学具有巨大的好处,使学术界可以使用标准的数据集、模型和代码来进行受控比较和探索扩展。
为羊驼部署交互式演示也会带来潜在风险,例如更广泛地传播有害内容和降低垃圾邮件、欺诈或虚假信息的障碍。我们制定了两项风险缓解策略。首先,我们使用OpenAI 的内容审核 API实现了一个内容过滤器,它可以根据 OpenAI 的使用政策过滤掉有害内容。其次,我们使用 Kirchenbauer 等人中描述的方法为所有模型输出加水印 。2023,以便其他人可以(以一定的概率)检测输出是否来自羊驼 7B。最后,我们对使用演示有严格的条款和条件;它仅限于非商业用途和遵循LLaMA 许可协议的用途。
我们知道,一旦我们发布模型权重或用户训练自己的指令遵循模型,就可以规避这些缓解措施。但是,通过安装这些缓解措施,我们希望推进最佳实践,并最终为负责任地部署基础模型制定社区规范。
未来发展方向
我们对羊驼开启的研究机会感到兴奋。有许多令人兴奋的未来方向:
评价:我们需要更严格地评价羊驼。我们将从HELM (语言模型的整体评估)开始,它有望发展为捕获更多生成的、指令遵循的场景。安全性:我们希望进一步研究羊驼的风险,并通过自动红队、审计和自适应测试等方法提高其安全性。理解:我们希望更好地理解能力是如何从训练配方中产生的。您需要基础模型的哪些属性?当你扩大规模时会发生什么?需要指令数据的哪些属性?在 text-davinci-003 上使用自我指导的替代方法是什么?
致谢
羊驼直接且关键地依赖于现有作品。我们要感谢 Meta AI Research 训练和发布 LLaMA 模型,感谢自我指导团队为我们提供数据生成管道的基础,感谢 Hugging Face 的训练代码,感谢 OpenAI 铺平道路并展示什么可以是实现了。
我们还想强调的是,指令跟随 LLM 和聊天模型还有许多其他开源项目,包括OpenChatKit、Open Assistant和Carper AI。
ai工具箱
ai导航
免费aigc导航
aigc工具
免费ai工具