Qwen2系列模型重大升级简介
经过数月的等待和其团队不懈努力,Qwen系列开源模型迎来了从Qwen1.5到Qwen2的飞跃式升级。本次升级亮点包括:
- 5种不同尺寸的预训练及指令微调模型,包括Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B和Qwen2-72B;
- 在中文和英语的基础上,新增27种语言的高质量训练数据;
- 在多个评测基准上取得领先表现;
- 显著提升代码和数学能力;
- 支持更长的上下文长度,最高可达128K tokens(Qwen2-72B-Instruct)。
已经在Hugging Face和ModelScope上同步开源,并在Ollama可以下载使用。
模型基础信息
Qwen2系列包含5种尺寸的模型,具体如下表所示:
模型 | 参数量 (B) | 非Embedding参数量 (B) | GQA | Tie Embedding | 上下文长度 (K tokens) |
---|---|---|---|---|---|
Qwen2-0.5B | 0.49 | 0.35 | True | True | 32 |
Qwen2-1.5B | 1.54 | 1.31 | True | True | 32 |
Qwen2-7B | 7.07 | 5.98 | True | False | 128 |
Qwen2-57B-A14B | 57.41 | 56.32 | True | False | 64 |
Qwen2-72B | 72.71 | 70.21 | True | False | 128 |
所有尺寸的模型均采用了GQA技术,以实现推理加速和显存占用降低。对于小模型,采用了tie embedding技术,以增加非embedding参数的占比。
在上下文长度方面,所有预训练模型均在32K tokens的数据上进行训练,并在128K tokens时依然能取得优异的PPL评测表现。指令微调模型在长序列理解实验中,如”大海捞针”任务,展现了出色的性能。
GQA,即Grouped-Query Attention(分组查询注意力),是一种在大型语言模型中使用的注意力机制。它是对传统的多头注意力(Multi-Head Attention, MHA)和多查询注意力(Multi-Query Attention, MQA)的扩展,通过将查询头分组,每个组共享一个公共的键(Key)和值(Value)投影,从而在计算效率和模型表达能力之间提供灵活的权衡
多语言能力提升
QWEN团队投入了大量精力扩展和提升多语言预训练及指令微调数据的规模和质量,以增强模型的多语言能力。除了中文和英语,我们还针对性地增强了以下27种语言:
- 西欧:德语、法语、西班牙语、葡萄牙语、意大利语、荷兰语
- 东欧及中欧:俄语、捷克语、波兰语
- 中东:阿拉伯语、波斯语、希伯来语、土耳其语
- 东亚:日语、韩语
- 东南亚:越南语、泰语、印尼语、马来语、老挝语、缅甸语、宿务语、高棉语、菲律宾语
- 南亚:印地语、孟加拉语、乌尔都语
此外,还特别优化了多语言场景中常见的语言转换问题,显著降低了模型发生语言转换的概率。
Qwen2模型评测报告
在Qwen2系列模型的全新升级中,特别对Qwen2-72B进行了全面的评测。以下是评测结果的详细概述:
大规模模型效果显著提升
与前代Qwen1.5相比,Qwen2在大规模模型上实现了显著的效果提升。在自然语言理解、知识掌握、代码编写、数学推理及多语言处理等多项能力上,Qwen2-72B均超越了当前领先的开源模型,包括Llama-3-70B和Qwen1.5系列中最大的模型Qwen1.5-110B。这一提升得益于预训练数据和训练方法的深入优化。
精细微调提升智能水平
在大规模预训练的基础上,进一步对模型进行了精细的微调,以提升其智能水平,使其表现更接近人类。微调过程中,主要专注于以下几个方面:
- 代码、数学、推理、指令遵循、多语言理解等能力的进一步提升。
- 人类价值观对齐,使模型更加有帮助、诚实和安全。
- 微调遵循的原则是在规模化训练的同时减少人工标注,通过多种自动化方法获取高质量、可靠的指令和偏好数据。
微调方法的创新
在微调方法上,其采用了以下创新手段:
- 有监督微调、反馈模型训练以及在线DPO等方法的结合。
- 采用在线模型合并技术减少对齐税,有效提升了模型的基础能力和智能水平。
在线DPO(Direct Preference Optimization)是一种优化技术,它允许在模型训练过程中实时地集成人类的偏好反馈。与传统的离线DPO相比,在线DPO可以在训练过程中动态地获取和利用新的用户反馈,从而更有效地指导模型学习,以更好地符合人类的偏好和价值观。
其核心思想是在模型训练时,不仅使用预先收集好的数据集,而是允许模型在与用户交互的过程中,根据用户的实时反馈来调整其行为。这种方法的优势在于能够不断适应用户需求的变化,提高模型的泛化能力和对齐度
Qwen2-72B-Instruct的全面评估
我们对Qwen2-72B-Instruct在16个基准测试中的表现进行了全面评估。结果表明,该模型在提升基础能力和对齐人类价值观方面取得了良好的平衡。与Qwen1.5的72B模型相比,Qwen2-72B-Instruct在所有评测中均实现了大幅超越,并与Llama-3-70B-Instruct的表现相匹敌。
小模型的卓越表现
在小模型方面,Qwen2系列同样展现出色,基本能够超越同等规模甚至更大规模的最优开源模型。Qwen2-7B-Instruct在多个评测上取得了显著的优势,特别是在代码和中文理解方面。
通过这一系列的评测和优化,Qwen2系列模型将为用户提供更加强大、智能和安全的服务体验。
Qwen2系列模型亮点介绍
在Qwen2系列模型的升级中,专注于多个关键领域的改进,以下是一些显著的亮点:
代码与数学能力提升
致力于提升Qwen在代码和数学领域的能力。在代码方面,借鉴了CodeQwen1.5的成功经验,实现了Qwen2在多种编程语言上的显著效果提升。而在数学领域,通过大规模且高质量的数据训练,Qwen2-72B-Instruct在数学解题能力上取得了飞跃性的进步。
长文本处理能力
Qwen2系列中的所有Instruct模型均在32K的上下文长度上进行训练,并利用YARN或Dual Chunk Attention等先进技术扩展至更长的上下文处理能力。
- Qwen2-72B-Instruct:特别值得注意的是,该模型能够完美处理高达128K上下文长度的信息抽取任务,成为处理长文本任务的理想选择。
- Qwen2-7B-Instruct:几乎完美地处理长达128K的上下文。
- Qwen2-57B-A14B-Instruct:能够处理64K的上下文长度。
- 小型模型:支持32K上下文长度。
此外,还开源了一个智能体解决方案,专门用于高效处理高达100万tokens的上下文,更多详细信息可访问Qwen-Agent博客文章或GitHub。
YARN,全称为Yet Another Resource Negotiator,YARN(Yet Another Resource Negotiator)是Apache Hadoop的一个关键组件,用于高效的资源管理和作业调度。它在Hadoop 2.x版本中替代了旧的JobTracker和TaskTracker,解决了扩展性、可靠性和资源利用率的问题,并支持多种计算框架。
Dual Chunk Attention(DCA)是一种新技术框架,它通过分解长序列的注意力计算来扩展大型语言模型(LLMs)的上下文处理能力。DCA包含三个主要组件:**内块注意力(**处理单个块内部的标记);**间块注意力(**处理不同块之间的标记);**连续块注意力(**处理连续不同块中的标记)。这种方法使得模型无需额外训练即可处理更长的文本,显著提升了模型在长上下文任务中的性能,如处理大型文档和长对话。DCA技术可以与Flash Attention等库集成,为长文本处理提供了一种高效且无需额外训练的解决方案。
安全性表现
在安全性方面,Qwen2-72B-Instruct在多语言不安全查询类别中展现出了卓越的性能。通过Jailbreak测试数据,并将其翻译成多种语言进行评估,结果显示Qwen2-72B-Instruct在安全性方面与GPT-4相当,并且显著优于Mistral-8x22B模型。
以下是安全性测试结果的概览表格:
Language | Illegal Activity | Fraud | Pornography | Privacy Violence | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
GPT-4 | Mistral-8x22B | Qwen2-72B-Instruct | GPT-4 | Mistral-8x22B | Qwen2-72B-Instruct | GPT-4 | Mistral-8x22B | Qwen2-72B-Instruct | GPT-4 | Mistral-8x22B | Qwen2-72B-Instruct | |
zh | 0% | 13% | 0% | 0% | 17% | 0% | 43% | 47% | 53% | 0% | 10% | 0% |
en | 0% | 7% | 0% | 0% | 23% | 0% | 37% | 67% | 63% | 0% | 27% | 3% |
ar | 0% | 13% | 0% | 0% | 7% | 0% | 15% | 26% | 15% | 3% | 13% | 0% |
es | 0% | 7% | 0% | 3% | 0% | 0% | 48% | 64% | 50% | 3% | 7% | 3% |
fr | 0% | 3% | 0% | 3% | 3% | 7% | 3% | 19% | 7% | 0% | 27% | 0% |
ko | 0% | 4% | 0% | 3% | 8% | 4% | 17% | 29% | 10% | 0% | 26% | 4% |
pt | 0% | 7% | 0% | 3% | 7% | 3% | 47% | 57% | 47% | 4% | 26% | 4% |
th | 0% | 10% | 0% | 7% | 23% | 3% | 13% | 17% | 10% | 13% | 7% | 7% |
vi | 0% | 4% | 0% | 4% | 11% | 0% | 22% | 26% | 22% | 0% | 0% | 0% |
Average | 0% | 8% | 0% | 3% | 11% | 2% | 27% | 39% | 31% | 3% | 16% | 2% |
通过这些亮点,Qwen2系列模型不仅在技术层面取得了突破,更在实际应用中展现出了强大的潜力和价值。
如何使用Qwen2
在ModelScope和Hugging Face上可以在线体验,在Ollama上可以下载其开源模型,本地部署体验。
ollama项目地址:https://ollama.com/library/qwen2:7b
传送门:
Qwen2GitHub项目地址:https://github.com/QwenLM/Qwen2
Qwen2魔搭项目地址:https://modelscope.cn/models/qwen/Qwen2-7B-Instruct/summary
QwenAgent项目地址:https://github.com/QwenLM/Qwen-Agent