MPT-30B:MosaicML 以新的 LLM 技术超越 GPT-3,推动自然语言处理的边界
MPT-30B MosaicML surpasses GPT-3 with new LLM technology, pushing the boundaries of natural language processing.
MosaicML是一家生成式人工智能公司,提供AI部署和可扩展性解决方案。他们最新的大型语言模型(LLM)MPT-30B在人工智能社区中引起了轰动。
MosaicML的LLM之旅始于2023年5月发布的MPT-7B(Mosaic Pretrained Transformer),该模型有三个变种:
- MPT-7B-StoryWriter-65k+(用于生成长篇故事)
- MPT-7B-Instruct(用于短篇指令跟随)
- MPT-7B-Chat(用于对话生成)
由于其开源性、商业可用性和处理扩展上下文窗口的卓越能力,这些模型在机器学习社区取得了巨大的成功。
更重要的是,在某些情况下,该模型与其他可比较的模型(如LLaMA-7B、StableLM 7B等)持平甚至表现更好。到6月,MPT-7B系列已经被下载了超过300万次。6月22日,MosaicML发布了MPT-30B,进一步提高了开源基础模型的标准。
MPT-30B:超越GPT-3的强大LLM
MPT-30B是一个基于解码器的开源和商业许可的LLM,比GPT-3-175B更强大,仅具有GPT-3参数的17%,即30B。它在多个任务上优于GPT-3。以下是MPT-30B和GPT-3之间的比较。
来源
MPT-30B是基于之前的MPT-7B模型构建的。与类似规模的模型相比,它在训练时具有更高的计算效率。例如,LLaMA-30B的FLOPs预算比MPT-30B多约1.44倍,而Falcon-40B的FLOPs预算比MPT-30B高约1.27倍。以下是MPT-30B在各项任务上相对于其前身的改进的示意图。
来源
MPT-30B的一些特殊功能如下:
8k个令牌的上下文窗口
LLM中的上下文窗口指的是模型在生成输出之前可以考虑的令牌范围。MPT-30B在训练时具有8000个令牌的上下文窗口。它首先使用2k个令牌序列对1T个令牌进行训练,然后使用8000个令牌序列的另外50B个令牌进行训练(大约6000个单词)。
ALiBi支持
为了解释这个特性,我们来考虑一个问题:
MPT-30B如何理解和对比训练时更长的序列进行预测?
MPT-30B使用一种称为Attention with Linear Biases(ALiBi)的技术,在微调或推理过程中理解更长的序列并扩展上下文窗口超过8000个令牌。
ALiBi不计算位置嵌入,而是计算关键令牌和查询令牌之间的注意力分数。当关键令牌和查询令牌靠近时,惩罚较低,否则较高。因此,底层的Transformer架构可以推广到长形式的输入。
通过FlashAttention实现高效的推理和训练性能
注意力,即关注输入序列的相关部分,是Transformer的一个关键组成部分,但在处理长文本序列时,它可能会变得缓慢和占用内存。
FlashAttention是康奈尔大学的研究人员提出的一种方法,解决了MPT-30B的这个问题。使用一种称为tiling的技术,FlashAttention减少了模型需要读取或写入内存的次数,加速了处理速度。因此,该模型采用了最先进的FlashAttention技术和NVIDIA的FasterTransformer优化库,实现了高效的训练和推理。
训练和部署的便利性
开发者可以从零开始训练MPT-30B,也可以使用MosaicML的检查点进行更快的部署。此外,它可以根据特定数据集的领域特定用例进行微调。
该模型的大小经过选择,以便在单个GPU上轻松部署,具体来说,是在16位精度下使用1xA100-80GB或在8位精度下使用1xA100-40GB。这意味着该模型被设计成适应这些GPU的内存限制。
编码能力
MPT-30B还提供了卓越的编码能力。HumanEval是由OpenAI发布的一个包含164个手工编程问题的数据集。在HumanEval数据集上,该模型超越了专门设计的LLM模型,如StarCoder系列。
来源
微调变体:MPT-30B-Instruct和MPT-30B-Chat
MPT-30B-Instruct
LLM主要用于指令,如问题回答、文本摘要、语言翻译等。MPT-30B-Instruct是MPT-30B的一个经过微调的商业可用变体(保持商业CC-By-SA-3.0许可)。它专门用于指令遵循任务的微调。微调使用了以下数据集:
- FLAN
- P3
- Alpaca
- Dolly-15k
为了指令微调,Dolly数据集还进一步增加了Anthropic的Helpful和Harmless数据集。此外,还使用了多样化的数据集进行数据增强,包括:
- CompetitionMath
- GradeSchoolMath
- DialogSum
- DuoRC
- QASPER
- QuALITY
- SummScreen
- Spider
MPT-30B-Chat
MPT-30B-Chat是MPT-30B的一个经过微调的对话生成版本。它是一个根据CC-By-NC-SA-4.0许可发布的研究成果,仅允许非商业使用。该模型是使用各种语言数据集进行微调的,包括:
- Airoboros/GPT4-1.2
- Baize
- Camel
- GPTeacher
- Guanaco
- LongCoversations
- ShareGPT
- WizardLM
LLM在数十亿美元的生成式人工智能市场中占据了很大一部分份额,在ChatGPT去年改变了这个领域后,该市场经历了巨大的增长。MPT系列是这场革命的基础部分。在不久的将来,我们可以期待看到商业可用的开源模型,它们比MPT系列更强大和高效。
欲了解最新的人工智能新闻,请访问unite.ai。