阿里开源 Qwen2 模型全系列,提供多个规格选择,支持本地部署和私有化集成,是开源 LLM 的重要补充。
经过数月的努力,我们很高兴宣布从 Qwen1.5 演进到 Qwen2。这一次,我们为你带来:
包含 5 种规模的预训练和指令调优模型,分别是 Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B 和 Qwen2-72B;
已经在包含英文、中文之外的 27 种语言数据上进行了训练;
在大量基准测试评估中达到了最先进的性能;
在编码和数学方面性能显著提升;
扩展的上下文长度支持,Qwen2-7B-Instruct 和 Qwen2-72B-Instruct 最高可支持 128K tokens。
我们已经在 Hugging Face 和 ModelScope 上开源了这些模型,期待听到你的反馈!
Qwen2 系列包括 5 种规模的基础和指令调优模型,分别是 Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B、Qwen2-72B。我们在下表中说明了这些模型的关键信息:
具体而言,在之前的 Qwen1.5 中,只有 Qwen1.5-32B 和 Qwen1.5-110B 采用了分组查询注意力机制(Group Query Attention, GQA)。这一次,我们对所有模型规模都应用了 GQA,使得它们能够在模型推理中获得更快的速度和更少的内存占用。对于小型模型,我们倾向于应用嵌入层权重共享,因为大的稀疏嵌入在总模型参数中占据很大比例。
在上下文长度方面,所有基础语言模型都已在 32K tokens 的上下文长度数据上进行了预训练,我们在 PPL 评估中观察到了令人满意的外推能力,可以达到 128K。然而,对于指令调优模型,我们不满足于仅仅进行 PPL 评估;我们需要模型能够正确理解长上下文并完成任务。在表中,我们列出了通过"大海捞针"(Needle in a Haystack)任务评估所得的指令调优模型的上下文长度能力。值得注意的是,当与 YARN 结合使用时,Qwen2-7B-Instruct 和 Qwen2-72B-Instruct 模型展现出令人印象深刻的能力,可以处理长达 128K tokens 的上下文长度。
我们投入了大量努力来增加预训练和指令调优数据集的数量和质量,涵盖多种语言谱系,远超英文和中文,以增强其多语言竞争力。虽然大语言模型本身具有对其他语言的泛化能力,但我们明确突出了训练中包含的 27 种额外语言:
此外,我们投入了大量工作来应对代码混用问题,这是多语言评估中的常见现象。因此,我们模型在处理这一现象方面的能力得到了显著提升。使用通常会引发语言间代码混用的 prompt 进行的评估证实了相关问题的大幅减少。
比较评估表明,相对于 Qwen1.5,大规模模型(70B+ 参数)的性能有了实质性提升。这里我们的评估重点是大规模模型 Qwen2-72B。就基础语言模型而言,Qwen2-72B 和最先进的开源模型在不同能力方面进行了评估,包括自然语言理解、知识获取、编码能力、数学技能和多语言能力。得益于精心策划的数据集和优化的训练方法,Qwen2-72B 相比 Llama-3-70B 等领先模型展现出优越的性能。值得注意的是,尽管参数更少,它的性能还超越了其前身 Qwen1.5-110B。
经过大规模的预训练后,我们进行后训练来进一步增强 Qwen 的智能,使其更接近人类。这个过程进一步改进了模型在编码、数学、推理、指令遵循、多语言理解等方面的能力。此外,它使模型的输出与人类价值观相一致,确保它是有帮助的、诚实的和无害的。我们的后训练阶段遵循最少人工标注的可扩展训练原则。具体而言,我们研究了如何通过各种自动对齐策略(如数学拒绝采样、编码执行反馈和指令遵循、创意写作的回译、角色扮演的可扩展监督等)获得高质量、可靠、多样和创意的演示数据和偏好数据。在训练方面,我们应用了监督微调、奖励模型训练和在线 DPO 训练的组合。我们还采用了一种新颖的在线合并优化器来最小化对齐税。这些共同的努力大大提升了我们模型的能力和智能。
我们对 Qwen2-72B-Instruct 在 16 个不同领域的基准上进行了综合评估。Qwen2-72B-Instruct 在获得更好的能力和与人类价值观更好地对齐之间取得了平衡。具体而言,Qwen2-72B-Instruct 在所有基准上都显著超越了 Qwen1.5-72B-Chat,与 Llama-3-70B-Instruct 相比也达到了具有竞争力的性能。¹
就较小的模型而言,我们的 Qwen2 模型也胜过了相似甚至更大规模的 SOTA 模型。与最近发布的 SOTA 模型相比,Qwen2-7B-Instruct 仍然能够在各个基准上展示优势,在编码和中文相关指标上表现特别突出。¹
我们一直致力于增强 Qwen 的高级能力,特别是在编码和数学方面。在编码方面,我们成功集成了 CodeQwen1.5 的代码训练经验和数据,在 Qwen2-72B-Instruct 上带来了多种编程语言的重大改进。关于数学,通过利用广泛的高质量数据集,Qwen2-72B-Instruct 在解决数学问题方面展现了更强的能力。
在 Qwen2 中,所有指令调优模型都已在 32k 长度的上下文上进行训练,并使用 YARN 或双块注意力(Dual Chunk Attention)等技术外推到更长的上下文长度。
下图显示了我们在"大海捞针"上的测试结果。值得注意的是,Qwen2-72B-Instruct 能够在 128k 上下文内无缺陷地处理信息提取任务。加上其固有的强大性能,当资源充足时,它成为处理长文本任务的首选。
另外,值得注意的是该系列其他模型的卓越能力:Qwen2-7B-Instruct 几乎完美地处理长达 128k 的上下文,Qwen2-57B-A14B-Instruct 可以处理长达 64k 的上下文,而该系列中较小的两个模型支持 32k 的上下文。
除了长上下文模型,我们还开源了一个 Agent 解决方案,能够高效处理包含最多 100 万 tokens 的文档。有关详情,请参阅我们关于此主题的专门博客文章。
下表列出了大模型对四类多语言不安全查询(非法活动、欺诈、色情、隐私暴力)生成有害回应的比例。测试数据来自越狱相关数据集,并被翻译成多种语言进行评估。我们发现 Llama-3 在处理多语言 prompt 方面不够有效,因此未将其纳入对比。通过显著性检验(P 值),我们发现 Qwen2-72B-Instruct 模型在安全性方面与 GPT-4 相当,并显著超过了 Mistral-8x22B 模型。
现在所有模型都已在 Hugging Face 和 ModelScope 上发布。欢迎访问模型卡获取详细使用方法,了解每个模型的更多信息,包括其特性、性能等。
长期以来,许多朋友一直在支持 Qwen 的开发,包括微调(Axolotl、Llama-Factory、Firefly、Swift、XTuner)、量化(AutoGPTQ、AutoAWQ、Neural Compressor)、部署(vLLM、SGL、SkyPilot、TensorRT-LLM、OpenVino、TGI)、API 平台(Together、Fireworks、OpenRouter)、本地运行(MLX、Llama.cpp、Ollama、LM Studio)、Agent 和 RAG 框架(LlamaIndex、CrewAI、OpenDevin)、评估(LMSys、OpenCompass、Open LLM Leaderboard)、模型训练(Dolphin、Openbuddy)等。关于如何在第三方框架中使用 Qwen2,请参阅相应的文档以及我们的官方文档。
仍有许多未被提及的团队和个人为 Qwen 的发展做出了贡献。我们衷心感谢他们的支持,我们希望我们的合作能推动开源 AI 社区的研究和开发。
这一次,我们改变了模型的许可证。虽然 Qwen2-72B 及其指令调优模型仍然使用原始的千问许可证,但所有其他模型,包括 Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B 和 Qwen2-57B-A14B,现已改为采用 Apache 2.0 许可证!我们相信,向社区开放我们模型的增强开放性可以加速 Qwen2 在世界各地的应用和商业使用。
我们正在训练更大的 Qwen2 模型,以进一步探索模型缩放和我们最近的数据缩放。此外,我们将 Qwen2 语言模型扩展到多模态,能够理解视觉和音频信息。在不久的将来,我们将继续开源新模型来加速开源 AI 的发展。敬请期待!
如果你觉得我们的工作有帮助,欢迎引用!
@article{qwen2,
title={Qwen2 Technical Report},
author={An Yang and Baosong Yang and Binyuan Hui and Bo Zheng and Bowen Yu and Chang Zhou and Chengpeng Li and Chengyuan Li and Dayiheng Liu and Fei Huang and Guanting Dong and Haoran Wei and Huan Lin and Jialong Tang and Jialin Wang and Jian Yang and Jianhong Tu and Jianwei Zhang and Jianxin Ma and Jin Xu and Jingren Zhou and Jinze Bai and Jinzheng He and Junyang Lin and Kai Dang and Keming Lu and Keqin Chen and Kexin Yang and Mei Li and Mingfeng Xue and Na Ni and Pei Zhang and Peng Wang and Ru Peng and Rui Men and Ruize Gao and Runji Lin and Shijie Wang and Shuai Bai and Sinan Tan and Tianhang Zhu and Tianhao Li and Tianyu Liu and Wenbin Ge and Xiaodong Deng and Xiaohuan Zhou and Xingzhang Ren and Xinyu Zhang and Xipin Wei and Xuancheng Ren and Yang Fan and Yang Yao and Yichang Zhang and Yu Wan and Yunfei Chu and Yuqiong Liu and Zeyu Cui and Zhenru Zhang and Zhihao Fan},
journal={arXiv preprint arXiv:2407.10671},
year={2024}
}
基础模型的评估主要关注模型在自然语言理解、通用问答、编码、数学、科学知识、推理、多语言能力等方面的性能。
评估数据集包括:
英文任务:MMLU (5-shot)、MMLU-Pro (5-shot)、GPQA (5-shot)、Theorem QA (5-shot)、BBH (3-shot)、HellaSwag (10-shot)、Winogrande (5-shot)、TruthfulQA (0-shot)、ARC-C (25-shot)
编码任务:EvalPlus (0-shot) (HumanEval、MBPP、HumanEval+、MBPP+)、MultiPL-E (0-shot) (Python、C++、JAVA、PHP、TypeScript、C#、Bash、JavaScript)
数学任务:GSM8K (4-shot)、MATH (4-shot)
中文任务:C-Eval (5-shot)、CMMLU (5-shot)
多语言任务:Multi-Exam (M3Exam 5-shot、IndoMMLU 3-shot、ruMMLU 5-shot、mMMLU 5-shot)、Multi-Understanding (BELEBELE 5-shot、XCOPA 5-shot、XWinograd 5-shot、XStoryCloze 0-shot、PAWS-X 5-shot)、Multi-Mathematics (MGSM 8-shot)、Multi-Translation (Flores-101 5-shot)
我们在多个跨语言开放基准上将 Qwen2 指令调优模型与其他最近的 LLM 进行了比较,并进行了人工评估。对于基准,我们展示了 2 个评估数据集上的结果:
M-MMLU(来自 Okapi):多语言常识评估(我们评估了 ar、de、es、fr、it、nl、ru、uk、vi、zh 上的子集)
MGSM:包含 de、en、es、fr、ja、ru、th、zh 和 bn 语言的数学评估
每个基准的结果在语言上平均,如下所示:
对于人工评估,我们使用包含 10 种语言 ar、es、fr、ko、th、vi、pt、id、ja 和 ru 的内部评估集比较了 Qwen2-72B-Instruct 与 GPT3.5、GPT4 和 Claude-3-Opus(评分范围为 1~5):
按任务类型分组,结果如下所示:
这些结果证明了 Qwen2 指令调优模型的强大多语言能力。
2024-07-16 更新:指令调优模型的结果可能与技术报告中的结果不同;如有任何差异,应以技术报告中的结果为准。↩︎ ↩︎ ↩︎
2024-07-16 更新:指令调优模型的结果可能与技术报告中的结果不同;如有任何差异,应以技术报告中的结果为准。↩︎ ↩︎ ↩︎