众所周知,在人工智能的问题上OpenAI并不Open,从Meta那里开源的羊驼系列模型也因为数据集等问题「**于学术研究类应用」,在人们还在因为寻找绕过限制方法的时候,主打****开源的大模型来了。
4月12日,Databricks发布了Dolly2.0,这是两周前发布的类人工智能人类交互性(指令遵循)大语言模型(LLM)的又一个新版本。
Databricks表示,Dolly2.0是业内第一个开源、遵循指令的LLM,它在透明且免费提供的数据集上进行了微调,该数据集也是开源的,可用于商业目的。这意味着Dolly2.0可用于构建商业应用程序,无需支付API访问费用或与第三方共享数据。
项目链接:https://huggingface.co/databricks/dolly-v2-12b
数据集:https://github.com/databrickslabs/dolly/tree/master/data
根据Databricks首席执行官AliGhodsi的说法,已有其他大模型可以用于商业目的,但「它们不会像Dolly2.0那样与你交谈。」基于Dolly2.0模型,用户可以修改和改进训练数据,因为它是在开源许可下免费提供的。你可以制作你自己的Dolly版本。
Databricks还发布了Dolly2.0在其上进行微调的数据集,称为databricks-dolly-15k。这是由数千名Databricks员工生成的超过1.5万条记录的语料库,Databricks称这是「第一个开源的、人工生成的指令语料库,专门设计用于让大型语言能够展示出人工智能的神奇交互性。」
Dolly2.0是怎么诞生的
在过去的两个月里,业界、学界纷纷追赶OpenAI提出了一波遵循指令的类人工智能大模型,这些版本被许多定义视为开源(或提供某种程度的开放性或有限访问)。其中Meta的LLaMA*受人关注,它引发了大量改进的模型,如Alpaca、Koala、Vicuna以及Databricks的Dolly1.0。
但另一方面,许多这些「开放」模型都处于「工业限制」之下,因为它们接受了旨在限制商业用途的条款的数据集的训练——例如来自StanfordAlpaca项目的5.2万个问答数据集,是根据OpenAI的人工智能的输出进行训练的。而OpenAI的使用条款包括一条规则,即你不能使用OpenAI的服务反过来与其竞争。
Databricks思考了解决这个问题的方法:新提出的Dolly2.0是一个120亿参数的语言模型,它基于开源EleutherAIpythia模型系列,专门针对小型开源指令记录语料库进行了微调(databricks-dolly-15k),该数据集由Databricks员工生成,许可条款允许出于任何目的使用、修改和扩展,包括学术或商业应用。
到目前为止,在人工智能的输出上训练的模型一直处于合法的灰色地带。「整个社区一直在小心翼翼地解决这个问题,每个人都在发布这些模型,但没有一个可以用于商业用途,」Ghodsi表示。「这就是我们非常兴奋的原因。」
「其他人都想做得更大,但我们实际上对更小的东西感兴趣,」Ghodsi在谈到Dolly的微缩规模时说。「我们翻阅了所有的答案,它是高质量的。」
Ghodsi表示,他相信Dolly2.0将启动「雪球」效应,让人工智能领域的其他人加入并提出其他替代方案。他解释说,对商业用途的限制是一个需要克服的大障碍:「我们现在很兴奋,因为我们终于找到了一个绕过它的方法。我保证你会看到人们将这15000个问题应用于现有的每一个模型,他们会看到这些模型中有多少突然变得有点神奇,你可以与它们互动。」
手搓数据集
要下载Dolly2.0模型的权重,只需访问DatabricksHuggingFace页面,并访问databricks-labs的Dollyrepo,下载databricks-dolly-15k数据集。
「databricks-dolly-15k」数据集包含15000个高质量的人类生成的prompt/回复对,由5000多名Databricks员工在2023年3月和4月期间撰写,专门设计用于指令调优大型语言模型。这些训练记录自然、富有表现力,旨在代表广泛的行为,从头脑风暴、内容生成到信息提取和
根据该数据集的许可条款(CreativeCommonsAttribution-ShareAlike3.0UnportedLicense),任何人都可因任何目的使用、修改或扩展这个数据集,包括商业应用。
目前,这一数据集是首个开源的、由人类生成的指令数据集。
为什么要创建这样一个数据集?团队也在博客中解释了原因。
创建Dolly1.0或任何遵循LLM的指令的一个关键步骤是,在指令和回复对的数据集上训练模型。Dolly1.0的训练费用为30美元,使用的是斯坦福大学Alpaca团队用OpenAIAPI创建的数据集。
在Dolly1.0发布之后,就有很多人要求试用,还有一部分用户希望在商业上使用这个模型。
训练数据集包含人工智能的输出,正如斯坦福大学团队所指出的,服务条款试图阻止任何人创建一个与OpenAI竞争的模型。
此前,所有的知名指令遵循模型(Alpaca、Koala、GPT4All、Vicuna)都受到这种限制:禁止商业使用。为了解决这个难题,Dolly团队开始寻找方法来创建一个没有商业用途限制的新数据集。
具体而言,团队从OpenAI公布的研究论文中得知,*初的InstructGPT模型是在一个由13000个指令遵循行为演示组成的数据集上训练出来的。受此启发,他们开始研究是否可以在Databricks员工的带领下取得类似的结果。
结果发现,生成13000个问题和答案比想象中更难。因为每个答案都必须是原创的,不能从人工智能或网络上的任何地方复制,否则会「污染」数据集。但Databricks有超过5000名员工,他们对LLM非常感兴趣。团队进行了一次众包实验,创造出了比40位标注者为OpenAI创造的更高质量的数据集。
当然,这项工作耗时耗力,为了激励大家,团队设立置一个竞赛,前20名的标注者将获得惊喜大奖。他们也列出了7项非常具体的任务:
公开问答:例如「为什么人们喜欢喜剧电影?」或「法国的首都是什么?」在某些情况下,没有一个正确的答案,而在其他情况下,需要借助于整个世界的知识;
封闭式问答:这些问题只用一段参考文献中的信息就可以回答。例如,给定**百科中关于原子的一段,人们可能会问:「原子核中质子和中子的比例是多少?」;
从**百科中提取信息:在这里,标注者会从**百科上复制一个段落,并从该段落中提取实体或其他事实信息,如重量或测量;
**百科上的信息:对于这一点,注释者从**百科上提供了一段话,并被要求将其提炼为一个简短的摘要;
集思广益:这项任务要求进行开放式的构思,并列出相关的可能选项。例如「这个周末我可以和我的朋友做哪些有趣的活动?」;
分类:在这项任务中,标注者被要求对类别成员进行判断(例如,列表中的项目是动物、矿物还是蔬菜),或者判断一段短文的属性,例如电影评论的情绪;
创意写作:这项任务将包括写一首诗或一封情书等内容。
以下是一些示例:
*开始,团队对于是否能达到10000个结果持怀疑态度。但通过每晚的排行榜游戏,一周内就成功地突破了15000个结果。
随后,出于对「占用员工生产力」的担心,团队关闭了比赛(这很合理)。
商业化的可行性
在数据集火速创建完成之后,团队开始考虑商业应用的问题了。
他们想制作一个可在商业上使用的开源模型。databricks-dolly-15k比Alpaca(训练Dolly1.0的数据集)小得多,但基于EleutherAIpythia-12b的Dolly2.0模型却表现出高质量的指令遵循行为。
事后看来,这并不令人惊讶。毕竟*近几个月发布的许多指令调优数据集包含合成数据,这些数据往往包含幻觉和事实错误。
另一方面,databricks-dolly-15k是由专业人士生成的,质量很高,包含大多数任务的长篇答案。