7月23日传来一则重磅消息,令整个开源社区为之振奋——Meta正式发布Llama3.1系列,这无疑是开源模型发展史上的一座里程碑。为了迎接这一重要时刻,我们的团队基于Llama3.1迅速推出了首个成果:OpenBuddy-Llama3.1-8B-v22.1-131K。

Llama3.1:开源模型的新里程碑
Meta此次带来的惊喜颇多。其中最引人注目的,是那款拥有405B参数的版本——它直接刷新了开源模型性能的天花板,多项测试成绩已逼近GPT-4这样的闭源巨头,甚至在部分基准测试中还展现出反超的势头。背后有哪些关键因素?除了模型自身能力的提升,Meta还对许可协议进行了调整,解除了数据蒸馏方面的限制。换句话说,开发者现在可以利用405B模型的输出来训练自己的模型,这对整个生态系统而言无疑是一大利好。
Llama3.1-8B-Instruct:利用合成数据增强小模型
大模型固然风光,但小模型同样没有缺席。Meta同步推出了8B和70B的3.1增强版,在数据集构成、训练方法以及位置编码缩放等方面做了针对性优化。具体到8B版本,它基于8种语言(英语、德语、法语、意大利语、葡萄牙语、西班牙语、印地语和泰语)的语料与问答对进行训练,配合特有的长文扩容技术,上下文长度直接拉升至131072 tokens。知识截止日期也更新到了2023年12月,比上一版更具“时效性”。
不过,最值得关注的是Meta在训练方法上的创新——用大模型“教”小模型。在后期训练阶段,他们引入了超过2500万条由405B模型等大模型合成的数据,使8B小模型的能力又迈上一个新台阶。从代码、数学这类考验推理能力的基准测试来看,Llama3.1-8B-Instruct的综合能力已经能够与GPT-3.5 Turbo一较高下。可以说,这个版本表明了一个道理:小模型搭配高质量数据这条路,是完全行得通的。
OpenBuddy-Llama3.1-8B-v22.1:新一代开源跨语言模型
Llama3.1虽然能力不俗,但有一个明显的不足:它不支持中文。不过,既然模型已经在8种语言上充分训练,其跨语言潜力毋庸置疑。我们团队花了大约半天时间,在Llama3.1-8B-Instruct的基础上,仅用约10%的少量数据进行了一次针对性训练,主要目标就是增强中文能力。
结果令人满意。经过少量数据训练后,该模型不仅具备了中文问答和跨语言翻译能力,还在一些容易混淆概念的问题上表现优异。相比上一代8B模型,它能输出通常只有更大模型才能生成的答案——认知潜力确实更强了。
举个例子,有人问:“为什么手机只有100/100的电啊,根本就不够用,建议以后手机都有200/200的电。”
模型给出的回答是:手机电量显示为100/100的设计,主要是为了给用户提供一个直观的电量剩余指示。简化显示有助于用户快速了解状况。实际上,电池容量并不是用“100单位”来衡量的,而是以毫瓦时或瓦时为单位。100/100显示的是电池容量的最大值,并不意味着充满后不能再充电——继续充电只是显示值不再增加。这种设计能保护电池,避免过度充电缩短寿命。如果改成200/200,虽然在视觉上可能让用户感觉“更爽”,但实际存储能力并没有改变。用户反而可能误以为容量翻倍,在显示接近200%时忽略真实充电情况。因此,从电池管理和用户教育角度看,保持100/100的设计才是更合理的选择,既不会误导用户,也有助于保护电池健康。
