AI多模态模型架构之LLM主干(2):Qwen系列

探索AI的无限可能,微信关注“AIGCmagic”公众号,让AIGC科技点亮生活

本文作者:AIGCmagic社区   刘一手

前言

AI多模态大模型发展至今,每年都有非常优秀的工作产出,按照当前模型设计思路,多模态大模型的架构主要包括以下几个部分:

  1. 模态编码器(Modality Encoder, ME):负责将不同模态的输入编码成特征。常见的编码器包括图像的NFNet-F6、ViT、CLIP ViT等,音频的Whisper、CLAP等,视频编码器等。

  2. 输入投影器(Input Projector):负责将其他模态的特征投影到文本特征空间,并与文本特征一起输入给语言模型。常用的投影器包括线性投影器、MLP、交叉注意力等。

  3. 语言模型骨架(LLM Backbone):利用预训练的语言模型,负责处理各种模态的特征,进行语义理解、推理和决策。常用的语言模型包括ChatGLM、Qwen、LLaMA等。

  4. 输出投影器(Output Projector):负责将语言模型输出的信号转换成其他模态的特征,以供后续模态生成器使用。常用的投影器包括Tiny Transformer、MLP等。

  5. 模态生成器(Modality Generator, MG):负责生成其他模态的输出。常用的生成器包括图像的Stable Diffusion、视频的Zeroscope、音频的AudioLDM等。


本文一手会详细解读AI多模态架构中的语言模型骨架(LLM Backbone),并从ChatGLM系列、Qwen系列、LLaMA系列三个代表性工作,总结当前主流的工作方案!持续更新,欢迎关注。

在当今人工智能时代,大模型无疑是最引人注目的焦点之一。它们以其强大的自然语言处理能力和广泛的应用场景,正在逐渐改变我们的工作和生活方式。

一、初代版本:Qwen-1

论文链接:https://arxiv.org/abs/2309.16609

代码链接:GitHub - THUDM/ChatGLM-6B: ChatGLM-6B: An Open Bilingual Dialogue Language Model | 开源双语对话语言模型

在2023年的10月份,通义千问推出了首个大型语言模型Qwen-7B,简称Qwen-1,这标志着其开源项目的启动。

Qwen系列模型并不仅仅局限于语言模型,它是一个旨在实现通用人工智能(AGI)的项目。目前,Qwen系列包括了大型语言模型(LLM)和大型多模态模型。下图展示了Qwen模型的主要组成部分:

Qwen系列模型包括多个子模型,其中“Qwen”代表基础语言模型,而“Qwen-Chat”是通过后训练技术如SFT(有监督微调)和RLHF(强化学习人类反馈)训练的聊天模型。Qwen还提供了针对特定领域和任务的模型,例如“Code-Qwen”用于编程和“Math-Qwen”用于数学。大型语言模型(LLM)可以扩展到多模态,因此我们有视觉-语言模型“Qwen-VL”和音频-语言模型“Qwen-Audio”。

1.1 基础模型

构建助手模型的标准流程通常涉及预训练和后训练阶段。后训练阶段主要采用SFT(有监督微调)和RLHF(强化学习人类反馈)技术。在预训练方面,Qwen-1与先前的语言模型如GPT-3和Llama相似,都是基于Transformer架构,并通过预测文本序列中的下一个词来进行预训练。为了保持模型的简洁和稳定性,Qwen-1并未引入额外的预训练任务,而是专注于增加模型规模和扩展数据集。目前,已经开发了五种不同参数规模的模型,其中四种已经开源,分别是1.8B、Qwen-7B、Qwen-14B和Qwen-72B。

Qwen-1模型经过了大量的训练,使用了2万亿到3万亿个tokens。由于预训练数据包含了多种语言,Qwen-1是一个多语言模型,而不仅仅是单一语言或双语模型。受限于Qwen预训练数据的特点,该模型在英语和中文上表现出较强的能力,并且也能够处理其他语言,例如西班牙语、法语和日语。为了增强其多语言处理能力,Qwen-1采用了一种能够有效编码不同语言信息的策略。

在预训练过程中,Qwen-1特别强调了扩展上下文长度的能力。为了实现这一点,模型采用了RoPE(旋转位置编码)技术,并对其进行了持续的预训练,以支持更长的上下文长度和更大的基数值。Qwen-1的研究团队还发现,这种方法在处理超出训练数据范围的上下文长度(外推)方面也表现出了有效性。目前,大多数开源的Qwen模型都能够处理高达32K词标记的上下文长度,并且这些模型的有效性已经通过L-Eval和“大海捞针”等评估方法得到了验证。

根据评估基准,Qwen-1的最大开源模型Qwen-72B以及最大的私有模型在性能上与Llama 2、GPT-3.5和GPT-4等模型相比具有竞争力。

1.2 对齐方法

训练过程中,SFT(有监督微调)和RLHF(强化学习人类反馈)这两种技术通常被统称为“对齐”。目前普遍认为,通过相对较少的微调数据就可以显著改善聊天模型的性能。Qwen-1在这一过程中特别注重提高SFT数据的多样性和复杂性,例如使用instag和tulu 2等数据集,并通过人工审核和自动评估来严格控制数据质量。

在得到一个经过良好微调的SFT模型后,Qwen-1进一步研究了RLHF技术的应用效果。这主要采用了基于PPO(近端策略优化)的方法。然而,RLHF的训练过程是具有挑战性的,不仅因为PPO训练的不稳定性,还因为奖励模型的质量对训练结果至关重要。因此,Qwen-1在构建稳定可靠的奖励模型上投入了大量工作,包括在大规模偏好数据上进行预训练,以及在细致标注的高质量偏好数据上进行微调。通过RLHF训练后,Qwen-1发现模型在创造性和遵循指令方面有了显著提升,生成的回复也更受人类评注者的喜爱。


二、升级版本:Qwen-1.5

2024年2月通义千问发布了开源模型的1.5版本,即Qwen-1.5。这一版本包括了从0.5B到110B共8种不同规模的Base和Chat模型,以及一个MoE(混合专家)模型。同时,通义千问还公开了这些模型尺寸对应的量化模型。

在Qwen-1.5的更新中,除了继续提供Int4和Int8的GPTQ量化模型,还增加了AWQ和GGUF量化模型。为了提高开发者的使用体验,通义千问将Qwen-1.5的代码正式整合进了HuggingFace transformers代码库。这意味着开发者现在可以使用transformers版本4.37.0及以上的原生代码,而无需设置`trust_remote_code`选项即可进行开发工作。

Qwen-1.5已经与多个框架进行了整合,包括vLLM、SGLang(用于部署)、AutoAWQ、AutoGPTQ(用于量化)、Axolotl、LLaMA-Factory(用于微调)以及llama.cpp(用于本地LLM推理),这些框架现在都支持Qwen-1.5。Qwen-1.5系列模型可以在Ollama和LMStudio等平台上使用。此外,API服务不仅通过DashScope提供,还通过together.ai提供,实现了全球范围内的访问能力。

Qwen-1.5模型重点提升了Chat模型与人类偏好的对齐程度,并且显著增强了模型的多语言处理能力。此外,所有规模的模型现在都支持高达32768个tokens的上下文长度。

为了全面评估Qwen-1.5模型的效果,研究团队对Base和Chat模型在各种基础和扩展能力上进行了一系列详细的评估。这些能力包括语言理解、代码处理、推理等基础能力,以及多语言能力、人类偏好对齐能力、智能体能力、检索增强生成能力(RAG)等。这些评估旨在全面了解Qwen-1.5模型在不同领域的表现和效能。

2.1 基础能力

关于模型基础能力的评测,在 MMLU(5-shot)、C-Eval、Humaneval、GS8K、BBH 等基准数据集上对 Qwen-1.5 进行了评估。

Qwen-1.5模型在不同尺寸下均在评估基准上展现出了强劲的性能。特别是,Qwen-1.5-72B模型在所有基准测试中均显著超过了Llama2-70B模型,这突显了其在语言理解、推理和数学领域的卓越能力。

近期,小型模型的开发也受到了广泛关注。为此,研究团队将参数量小于70亿的Qwen-1.5模型与社区中其他优秀的小型模型进行了比较,以评估其在小型模型领域的竞争力。比较结果如下:

参数规模低于 70 亿的 Qwen1.5 base 模型,与业界领先的小型模型相比具有很强的竞争力。

2.2 人类偏好对齐

对齐的主要目标是提升模型对指令的遵循能力,以及生成与人类偏好更为一致的回复。Qwen-1.5模型在最新的系列中认识到将人类偏好整合到学习过程中的重要性,因此在对齐过程中有效地采用了直接策略优化(DPO)和近端策略优化(PPO)等技术。

然而,评估这类聊天模型的质量是一个重大挑战。虽然全面的人工评估是理想的,但它面临着可扩展性和可重复性的难题。因此,Qwen-1.5利用更先进的大型模型作为评委,在两个广泛采用的基准测试MT-Bench和Alpaca-Eval上对Qwen-1.5进行了初步评估。评估结果如下:

在评测MT-Bench榜单时发现在这个榜单上模型分数有较大的方差,因此Qwen-1.5 进行了三轮评测并汇报平均分数和标准差。

在MT-Bench和Alpaca-Eval v2的基准测试中,尽管Qwen-1.5的最大模型Qwen1.5-72B-Chat未能超越GPT-4-Turbo,但它仍然展现出了强劲的性能,超过了Claude-2.1、GPT-3.5-Turbo-0613、Mixtral-8x7b-instruct和TULU 2 DPO 70B,并且与Mistral Medium的表现相当。

2.3 多语言能力

Qwen-1.5精心选择了来自欧洲、东亚和东南亚的12种不同语言,以全面评估Base模型的多语言能力。基于开源社区的公开数据集,Qwen-1.5构建了以下表格所示的评估集,这些评估集覆盖了四个不同的维度:考试、理解、翻译和数学。下表列出了每个测试集的详细信息,包括评估配置、评价指标以及涉及的具体语言类型。

详细的结果如下:

评估结果显示,Qwen-1.5 Base模型在12种不同语言的多语言能力方面表现卓越,无论是在考试、理解、翻译还是数学等各个维度上,都取得了优异的成绩。无论是阿拉伯语、西班牙语、法语、日语,还是韩语、泰语,Qwen-1.5都能够展示出在不同语言环境中理解和生成高质量内容的能力。此外,Qwen-1.5也对Chat模型的多语言能力进行了评估,结果如下所示:

上述结果展示了Qwen-1.5 Chat模型强大的多语言能力,可用于翻译、语言理解和多语言聊天等下游应用。

2.4 长序列理解

为了验证该模型在处理长输入方面的性能,研究人员在L-Eval基准上进行了评估。以下是评估结果:

评估结果显示,即使是较小规模的Qwen1.5-7B-Chat模型,也在五个大型任务中的四个上展现出了与GPT3.5-turbo-16k模型相仿的性能。而表现最佳的Qwen1.5-72B-Chat模型,其性能仅略逊于GPT4-32k模型。


三、最新版本:Qwen-2

2024年6月6日研究团队宣布了Qwen系列模型的一个重要升级,从Qwen-1.5版本跃升至Qwen-2版本。这一升级是团队数月努力的成果,涵盖了多个方面的改进和新增功能:

  1. 推出了五种不同尺寸的预训练和指令微调模型,分别是Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B和Qwen2-72B。
  2. 训练数据集得到了扩展,不仅包括中文和英语,还新增了27种语言的高质量数据。
  3. 在多个评测基准上,Qwen系列模型展现出了领先的性能。
  4. 模型在处理代码和数学相关任务的能力有了显著提升。
  5. 上下文长度的支持得到了增强,其中Qwen2-72B-Instruct模型能够处理高达128K tokens的上下文。

这些升级标志着Qwen系列模型在多语言处理、指令遵循和上下文理解方面的能力得到了显著提高。

3.1 基础信息

Qwen-2系列包含了五种不同规模的预训练和指令微调模型,分别是Qwen2-0.5B、Qwen2-1.5B、Qwen2-7B、Qwen2-57B-A14B以及Qwen2-72B。以下是这些模型的详细规格:

在Qwen-1.5系列中,只有32B和110B的模型采用了GQA技术。在Qwen-2系列中,为了使所有规模的模型都能享受到GQA带来的推理速度提升和显存占用降低的好处,所有的模型都集成了GQA。对于小模型,由于嵌入参数的数量较大,Qwen2-1.5B采用了tie embedding技术,使得输入层和输出层能够共享参数,从而增加了非嵌入参数的比例。

在上下文长度方面,所有预训练模型都在32K tokens的数据集上进行训练,并且在128K tokens的PPL评测中仍然展现出良好的性能。然而,对于指令微调模型来说,除了PPL评测,还需要进行如大海捞针这类长序列理解实验。在表格中,根据大海捞针的实际测试结果,列出了各个指令微调模型支持的最大上下文长度。当使用YARN等优化方法时,Qwen2-7B-Instruct和Qwen2-72B-Instruct都能够支持128K tokens的上下文长度。

Qwen-2系列在扩展多语言预训练和指令微调数据的规模以及提升数据质量方面投入了大量工作,以增强模型的多语言能力。尽管大型语言模型本身就具有一定的泛化能力,Qwen-2还是特别针对除中英文之外的27种语言进行了专门的优化和增强。

此外,Qwen-2系列模型特别针对多语言场景中常见的语言转换(code switch)问题进行了优化。在处理多语言输入时,模型发生语言转换的概率有了显著降低。通过使用易于触发语言转换现象的提示词进行测试,可以观察到Qwen-2系列模型在这方面能力的明显提升。这表明Qwen-2在处理多语言文本时,能够更有效地维持语言的稳定性,减少不必要的语言切换,从而提高理解和生成多语言内容的准确性。

3.2 模型评测

相比于Qwen-1.5,Qwen-2在大规模模型上实现了显著的效果提升。Qwen2-72B模型接受了全面的评估。在针对预训练语言模型的评估中,Qwen2-72B在多个能力方面,包括自然语言理解、知识掌握、代码处理、数学问题解决以及多语言处理等,均明显超越了当前领先的开源模型,如Llama-3-70B和Qwen1.5系列中最大的模型Qwen1.5-110B。这一成就归功于其预训练数据集的扩展和训练方法的优化。

在完成了大规模预训练之后,Qwen-2模型通过精细的微调进一步提升了其智能水平,使其表现更加贴近人类。这一过程特别注重于提升模型在代码处理、数学问题解决、逻辑推理、指令遵循和多语言理解等方面的能力。此外,模型还学会了更好地对齐人类价值观,从而变得更加有用、诚实和可靠。

Qwen-2的微调过程遵循了一个关键原则,即在尽可能扩大训练规模的同时,减少对人工标注的依赖。Qwen-2探索了多种自动化的方法来获取高质量、可靠且具有创造性的指令和偏好数据。这些方法包括针对数学问题的拒绝采样针对代码和指令遵循的代码执行反馈针对创意写作的回译技术、以及针对角色扮演的规模化监督等。在训练方面,Qwen-2结合了有监督微调、反馈模型训练和在线DPO(数据集偏好优化)等多种策略。Qwen-2还采用了在线模型合并技术来减少对齐过程中的性能损失。这些技术和策略的综合应用显著提升了模型的基础能力和智能水平。

对Qwen2-72B-Instruct模型在16个基准测试中的表现进行了全面评估。结果显示,Qwen2-72B-Instruct在提升基础能力和对齐人类价值观方面取得了良好的平衡。与Qwen1.5系列的72B模型相比,Qwen2-72B-Instruct在所有评估中都有显著的提升,并且其表现与Llama-3-70B-Instruct模型相当

在小规模模型方面,Qwen-2系列也展现出了竞争力,基本能够超越或与同等规模的最优开源模型相匹敌,甚至在某些情况下超过更大规模的模型。Qwen2-7B-Instruct模型在多个评估中仍然显示出显著的优势,特别是在代码处理和中文理解方面。这表明Qwen-2系列不仅在大型模型上表现出色,其小型模型也同样具有竞争力。

3.3 模型亮点

代码 & 数学

研究团队一直致力于提升Qwen模型的代码和数学处理能力。在代码方面,团队成功地将CodeQwen1.5的经验整合到Qwen-2的研发中,这导致了在多种编程语言上效果的显著提升。在数学方面,得益于大规模且高质量的数据集,Qwen2-72B-Instruct在数学问题解决能力上实现了显著的飞跃。这些改进不仅增强了模型在特定领域的能力,也提高了其在更广泛任务上的实用性。

长文本处理

Qwen-2系列中的所有Instruct模型都经过了在32k上下文长度上的训练,并且通过使用YARN或Dual Chunk Attention等技术,这些模型能够处理更长的上下文长度。

下图展示了Qwen-2在Needle in a Haystack测试集上的表现。特别值得注意的是,Qwen2-72B-Instruct模型能够完美地处理128k上下文长度内的信息抽取任务。凭借其强大的性能,只要拥有足够的计算资源,Qwen2-72B-Instruct无疑会成为处理长文本任务的首选模型。

此外,Qwen-2系列中的其他模型也表现优异:Qwen2-7B-Instruct能够几乎完美地处理128k的上下文长度;Qwen2-57B-A14B-Instruct则能够处理64k的上下文长度;而该系列中的两个较小模型支持32k的上下文长度。

除了长上下文模型,研究团队还开源了一个智能体解决方案,该方案能够高效处理高达100万tokens级别的上下文。这为处理极端长文本提供了一个有效的工具,进一步扩展了Qwen-2系列的应用范围。

安全性

下表展示了大型模型在处理四种多语言不安全查询类别(非法活动、欺诈、色情、隐私暴力)时生成有害响应的比例。测试数据来自Jailbreak数据集,该数据集已被翻译成多种语言以进行评估。由于Llama-3模型在处理多语言提示时表现不佳,因此没有被纳入比较范围。通过显著性检验(P值),可以观察到Qwen2-72B-Instruct模型在安全性方面与GPT-4模型相当,并且显著优于Mistral-8x22B模型。

这一结果表明Qwen2-72B-Instruct模型在多语言环境下具备较高的安全性,能够有效减少生成有害内容的风险。


四、总结

Qwen系列模型的开放源代码,不仅标志着技术上的成就,也体现了开放共享的理念。在全球化的大背景下,中国的AI技术不再局限于内部发展,而是采取开放的姿态,与世界各地的开发者共享其成果。这种开放精神使得Qwen模型迅速在全球范围内获得了关注,并为全球开发者提供了更多的选择,从而推动了AI技术的普及和发展。Qwen系列的开放源代码策略,不仅增强了技术的透明度和可访问性,也促进了国际间的合作与交流,为AI技术的进步和创新创造了更加广阔的平台。

 推荐阅读:

《AIGCmagic星球》,五大AIGC方向正式上线!让我们在AIGC时代携手同行!限量活动
《三年面试五年模拟》版本更新白皮书,迎接AIGC时代
AIGC |「多模态模型」系列之OneChart:端到端图表理解信息提取模型
AI多模态模型架构之模态编码器:图像编码、音频编码、视频编码
AI多模态模型架构之输入投影器:LP、MLP和Cross-Attention

AI多模态模型架构之LLM主干(1):ChatGLM系列

AI多模态教程:从0到1搭建VisualGLM图文大模型案例

智谱推出创新AI模型GLM-4-9B:国家队开源生态的新里程碑

技术交流:

加入「AIGCmagic社区」群聊,一起交流讨论,涉及 「AI视频、AI绘画、Sora技术拆解、数字人、多模态、大模型、传统深度学习、自动驾驶」等多个不同方向,可私信或添加微信号:【lzz9527288】,备注不同方向邀请入群!!

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值