1 生成式 AI 是一场技术范式变革
2022年末ChatGPT的横空出世及其之后的持续迭代,以一种人人可亲身感知的方式,把人工智能在自然语 言领域里的重大进展在一夜之间展示在世人面前。而在企业应用场景方面,之前的AI技术都集中在相对专业的 应用场景内,如机器视觉、语音识别、或推荐系统、风控管理等。但是语言,作为人类重要的思维工具以及知 识组织和传播的最主要手段,其“能力泛化”的可能性远远超出了其他领域。因此,当ChatGPT能够与人类进 行深入、富有深度的对话时,人们开始想象一个真正能够理解业务或专业、思考解答专业问题、甚至进行业务 的组织、管理和创新的机器的可能性。对企业的数字化转型进程而言,生成式AI技术带来的潜在影响很容易让 人将之类比于交通史上铁路系统的发明、亦或动力系统中对交流电的引入。
在生成式 AI技术出现之前的十多年间,数字化转型一直是企业采取的一项重要战略,来促进企业在新的商 业环境中保持竞争优势、创造新的商业机会。根据 2011年,数字化转型最早的提出者之一 —— Gartner 的定义, 数字化转型包括从 IT现代化升级(比如全面云化升级),到通过数字技术进行业务优化(比如精准营销)或业务模 式创新(比如创新的引流和盈利模式)的一系列战略举措。近几年来,数字化转型的重点聚焦领域,已经越来越 转向企业数据资产的建立,神州数码集团的创始人和 CEO郭为在《数字化的力量》一书中,对此提出了全面和系 统的论述。
而生成式 AI出现之前,数据一般只有经过结构化处理之后,才能够在企业应用环境中发挥作用;而在企业 的经营活动中,产生的大量的数据无法被结构化处理,比如内部海量的会议纪要、周报、季报,其中包含大量 关于企业具体业务事项的分析和讨论;企业的大量的合同文本、项目验收材料,其中包含有大量的交易细节;而 在销售和客服人员与顾客的线上互动文本,其中也有一手的客户对产品和服务的反馈;再有,就是企业产品的大 量的用户手册、故障分析文档、产品服务和支持技术资料等等,其中有丰富的技术支持所需的知识。 所有这些包含的非常有价值的信息和知识,以往只能限于少数专家或管理者的随机及离散地利用。传统的 数据处理和分析方法对这种非结构化的文本数据无所适从。高价值的信息无法被有效提取,意味着企业可能错 失了重要的决策依据、市场洞察和创新机会。
以大语言模型为代表的先进的自然语言处理技术的出现,预示着这种情况开始发生变化。企业有可能利用 这些创新技术来自动分析、归类和抽取这些非结构化数据中的关键知识,进而为决策者提供有力的支持。例如, 通过自动分析销售和客服的交互文本,企业可以更准确地了解客户的需求和不满,进一步优化产品和服务。更进一步,企业还可以利用这些技术结合知识图谱技术,将分散在不同文档和系统中的信息连接起来,形成一个 跨组织结构、跨业务领域、跨时间维度的企业大脑;为企业提供一个一体化的知识查询甚至咨询平台。这样的平 台将会成为企业的超级销售助理、超级客服助理或者是超级管理助理。生成式 AI技术的出现,为企业数字化转型, 注入了强大且更为直接的新动能。
不过,以上对生成式AI技术对数字化转型的推动的“推演”,可能还存在很大局限。如同早期的英国铁路, 斯托克顿-达灵顿专线其实是在铁轨上跑马车。早期的蒸汽机的一个主要应用场景是在枯水期将水引向高处蓄水 池以帮助驱动水车。
目前我们设想的生成式 AI的应用场景,也处于早期状态。生成式 AI技术为企业数字化转型带来的会是更 为根本的变革,即技术范式的改变(Paradigm Shift)。我们借用《技术的本质》一书中对“技术域”的定义来解 读“技术范式的改变” :作者在这本书的第 8章指出,(它)不是单独一个技术体的出现,而是新技术体引发的“重 新域定”。新技术域对经济的影响也比单个技术对经济的影响要更深刻。作者认为,经济并不是采用(Adopt) 了一个新的技术体,而是遭遇(Encounters)了一个新的技术体。经济对新的技术体的出现会作出反应,它会 改变活动方式、产业构成以及制度安排,也就是说,经济会因新的技术体而改变自身的结构。如果改变的结果 足够重要,我们就会宣称发生了一场颠覆性改变。
生成式 AI 技术正在形成新的技术域定,它首先对应用软件开发产生了显著影响。得益于计算机程序设计语 言的严格语法、清晰逻辑性和罕见的二义性,生成式 AI技术在代码生成和辅助编程方面的效果日益突出。展望 未来,软件开发的重心将更多地倾向于需求分析和软件架构设计,而编码和代码质量审核的流程,将在先进的 辅助编程工具的助力下,实现效率的飞跃性提升。在 2017年,曾经是 OpenAI创始成员和研究科学家,担任特 斯拉技术总监的 Andrej Karpathy就预见到了引入 AI之后的新软件开发范式,他在一篇技术博客中提出了软件 2.0的概念。在软件 1.0的模式下,由程序员设计软件解决问题的方法和细节逻辑,并通过编写显示指令来实现 这些逻辑。而软件 2.0是利用神经网络自动完成软件的设计。
未来大部分程序员无需编写复杂的程序,维护复 杂的软件库、或者分析它们的性能。他们只负责收集、清理、操作、打标签、分析和可视化为神经网络提供信 息的数据即可。随着生成式 AI技术的快速迭代,业界内正在宣称“软件工程 3.0”时代的开启:AI重新定义了开 发人员构建、维护和改进应用软件的方式,研发团队的主要任务而是以含有私域专业知识的语料(或图像、视频) 来训练或精调模型、围绕业务主题设计提示模板(Prompt Template)、探索最有效的智能体(Agent)机制等。
综上所述,不论是“1.0”“2.0”还是“3.0”模式的软件,生成式 AI技术都将为其注入革命性的创新力量。 应用会在价值和体验、安全和运营、架构和交付等方面发生深刻变革,从而催生出企业应用的大升级和大迭代。 而更快和更广泛的业务数字化转型,则会产生更多的数据资产和应用场景,数字化转型的飞轮效也将应运而生。
2 生成式 AI 的六层技术生态
GPT的成功,促成整个 AI行业的技术生态正发生着巨大变革,并形成了激烈的竞争:从众多 AI芯片厂商奋 力追赶英伟达当前的技术优势,到模型厂商间的“百模大战”迅速升级为“千模混战”, 生态中的厂商都在力图找 准自己的定位,形成自己的技术优势。激烈竞争的同时也带来了技术的快速发展,相关的论文和报告以惊人的 速度发布着,新的应用以及产品更是层出不穷。
随着不断地创新、试错以及优化,生态架构中许多关键的概念逐步清晰,一些关键的技术沉淀下来,积极 影响着企业场景的落地。我们可以明显观察到生成式 AI相关技术的发展已经形成了六层技术生态体系,包含 AI 算力基础设施、基础大模型与相关技术、大模型与训练及评测数据、生成式 AI应用开发技术、生成式 AI安全与 监控以及生成式 AI应用设计。本章概述了架构中每层的核心技术,并结合自身在实际应用场景中的经验与思考, 为大家带来生成式 AI技术生态的总结。
2.1 AI 算力基础设施
大模型的基础算力设施是AI生态中不可或缺的核心组成部分,为大模型在企业场景中的实际应用提供了关 键的驱动力。其中AI芯片是算力的核心来源,其选型会直接影响到后续大模型的开发效率和性能。与此同时, AI服务器,作为AI芯片的主要承载平台,其架构设计和性能优化也显得尤为关键。基于AI服务器,各大厂商会 根据所持有的算力资源,发展出不同的经营模式。一些厂商选择采用“基础设施即服务(IaaS)”模式,主要提供硬件设施的使用权限;而一些厂商则采用“平台即服务(PaaS)”模式,不仅提供算力,还为用户提供了 一系列与模型开发相关的服务。为了更高效地管理这些AI服务器和算力资源,许多企业和政府机构会选择构建 智算中心,这是一种集中管理和优化算力资源的方式,同时也反映了其对AI技术的重视和支持。
我们将深入探讨大模型基础设施的各个方面,包括AI芯片、AI服务器、AI IaaS、AI PaaS以及AI智算中 心,阐述大模型对基础设施的特定需求,旨在为读者提供一个更全面的视角。
2.1.1 AI 芯片
2.1.1.1 AI 芯片概述与分类
AI芯片也称为AI加速器,专门用于处理人工智能应用中需要的大量计算任务的模块,为AI任务提供基础算 力。 AI芯片前身是GPU(Graphics Processing Unit,图形处理单元),专门为游戏或者图像软件提供高效图 形渲染的处理器,之后在人工智能技术逐步发展的过程中发现GPU的独特高效并行计算架构同样适用于人工智 能计算加速过程。在人工智能理论知识逐渐丰富的过程中,芯片厂家也对AI芯片处理器的计算单元和架构组成 有了更多的探索。
根据芯片的处理单元和可编程灵活性分类,AI芯片可以分为GPGPU、FPGA和ASIC以及类脑芯片。其 中GPGPU(General Purpose Graphics Processing Unit,通用图形处理器)是GPU的衍生概念,保留了 GPU的并行计算能力,去除了图像渲染显示部分。目前学术界和工业界普遍使用英伟达的AI芯片进行人工智 能模型和应用开发,考虑到模型应用的普适性人们也都以GPGPU作为首选。FPGA(Field Programmable Gate Array,现场可编程门阵列)可以通过配置文件重新定义门电路和存储器之间的连线从而改变计算方式, 与GPU相比具有高性能低功耗和可硬件编程的特点。
ASIC(Application Specific Integrated Circuit,专用 集成电路),是一种专用芯片,是为了某种特定的需求而专门定制的芯片的统称。在其所针对的特定的应用领 域,ASIC芯片的能效表现要远超GPU等通用型芯片以及半定制的FPGA。近几年,颠覆传统冯·诺依曼架构模拟 人脑神经元结构的类脑芯片成为学界和工业界探索的新思路。
根据 AI应用场景分类芯片有云端、终端和边缘端三种类型。云端芯片一般部署在公有云或私有云侧,支持 模型的训练和推理任务。其优点是高性能、高计算密度,缺点是单价高、产品硬件形态单一。终端芯片通常部 署在手机等移动设备中,支持模型推理任务,其优点是低功耗、高效能、成本低、产品最终硬件形态众多。边 缘端芯片部署在边缘设备上如路边监控控制通讯设备,其对功耗、性能、尺寸的要求介于终端和云端之间,同样以推理任务为主,产品的硬件形态相对较少。
根据芯片在 AI任务中的功能分为训练芯片和推理芯片。训练芯片支持大型模型的训练过程,通过大量数 据的输入训练构建复杂的深度神经网络模型。在模型训练的过程中涉及大量的训练参数和复杂的模型网络结构, 需要巨大的运算量,对处理器的计算能力、可处理数据精度和可拓展性的要求都很高。推理芯片支持使用训练 好的模型进行推理运算,对单位能耗算力、时延和成本有一定的要求。
2.1.1.2 AI 芯片的性能指标和大模型的算力消耗
在模型推训的过程中,主要关注 AI芯片硬件的以下几个指标:算力、功耗、面积、带宽和显存。 算力是衡量 AI芯片的重要指标,常用的单位是 TOPS和 TFLOPS,分别代表芯片每秒能处理多少万亿次的 INT8的整型运算或 FP32单精度浮点运算。AI芯片的算力越高代表它的运算速度越快,性能越强。 功耗是芯片运行的电力消耗,由于模型推训耗时漫长,大量的电力消耗进而需要更大的资金投入,对使用 者而言,AI芯片的功耗不容忽视。摩尔定律预言了芯片面积和利润的关系,通常来讲相同工艺制程之下,芯片 面积越小、良率越高,则芯片成本越低。
考虑到大数据并行访问的需求,AI和大数据处理需要高带宽和大存储容量的内存。因此,大模型对于 AI芯 片有以下两项性能要求:其一,带宽 ,位数越大说明时钟周期内所能传输的数据量越大;其二,显存,大显存能 减少读取数据的次数,降低延迟。 大模型的算力消耗受以下几个因素影响,每参数每 Token算力需求、模型参数规模、训练数据规模和算力 使用效率。
以GPT-3(175B)为例,其模型的参数量是175B,假设训练数据为300B tokens,每参数每token对算力的消 耗是6 Flops,以NVIDIA 80GB A100 GPU为例, 理论算力是312TFLOPS,Megatron利用张量并行和流水线并 行技术能达到 51.4% 的利用率,即每秒能完成 0.16PFLOPS,根据上述条件,结合模型算力消耗约等于(每参 数每token的训练需求*训练数据规模*参数规模)/算力使用效率,推测单张A100完成一次迭代计算所需耗时约 为65年,若采用1000张A100,训练时间大约可缩短为1个月左右。
2.1.2 AI 服务器
区别于传统服务器,AI服务器搭载了各类 AI加速卡,通过异构的方式组成不同的AI服务器。 其常见的组合形式是 CPU+GPU、CPU+FPGA、CPU+TPU、CPU+ASIC或 CPU+多种加速卡等。近期甚至提出了“GPU+DPU的超异构”设计,加入 DPU的强大数据处理调度能力的 AI服务器将更加适合大模型时代 超大数据量并行计算的场景。 AI服务器根据应用场景、芯片类型和 GPU数量有不同的分类。根据深度学习应用场景分为训练型服务器和 推理型服务器,训练型服务器对算力要求较高,推理型服务器对算力要求较低。根据 AI服务器搭载的芯片不同, 分为“CPU+GPU”的异构类型和“CPU+XPU”超异构类型。最后,根据搭载 GPU的数量分为多路 AI服务器, 常见的有四路、八路和十六路 AI服务器。
大模型的训练和推理任务对算力和网络都有了新的需求,超大参量的模型需要超高的算力,然而训练时间 的延长,对模型训练期间的网络稳定性也有要求。近来,芯片领头企业将目光转向了“超异构”计算架构,集成 CPU、GPU和 DPU多种芯片的 AI服务器可以高效解决 AI大模型计算中遇到的多种计算加速、可拓展性、数据 带宽延迟、训练速度、网络稳定性等问题。
2.1.3 AI IaaS
IaaS(Infrastructure as a Service,基础设施既服务),运营商通过软件定义算力资源的方式将硬件资源 池化提供给客户。客户通过即用即付的方式获取计算、存储和网络等 IT基础设施资源的调度使用权限,并在此 基础上部署、维护和支持应用程序。运营商负责运营维护基础物理设施,采用依赖虚拟化、容器和自动化技术 的云计算架构高效控制 IT资源。 AI Iaas服务平台通过软件定义 AI算力组成具备池化能力、池化调度和运维管理能力的功能架构。其中,池 化能力支持算力切分、远程资源调用、资源聚合、算力超分和随需应变的功能。池化调度包括本地或跨机房调度、 指定节点、指定型号、任务队列调度和多资源池管理。资源池的运维管理功能包括运行时自动注入、组件高度可用、 集群运维管理、平台运维管理以及全局资源监控。
AI IaaS的关键技术点是算力池化。算力池化基于传统云计算技术(如 Kubernetes、OpenStack)用软件 定义的方式,对 GPU等 AI算力资源进行分时调度管理 ,并且采用 GPU/AI芯片的 Runtime提供的 API劫持、应 用程序监控等技术实现计算资源跨界点远程调用。 AI IaaS通过高速无损网络互连互通的 CPU、GPU、ASIC芯片等算力资源进行池化整合,实现资源的集中 调度、按需分配,使资源充分利用,降低碎片概率,提高总体有效算力、降低智算中心购置成本,能够做到化 整为零。革新传统的整卡分配、“一虚多”的虚拟化分配等粗放式分配方式,使能精细化分配能力,根据 AI 任 务的资源需求进行按需分配,使资源可被充分利用,降低碎片概率,提高总体有效算力,降低基础硬件设施购 置成本。
2.1.4 AI PaaS
PaaS(Platform as a Service,平台即服务)为软件研发提供了一种服务化的平台,采用软件即服务(SaaS) 的模式交付。对于 AI大模型的开发者,PaaS提供了一个便捷的环境,支持大模型应用的快速部署、开发和测试。
PaaS 平台架构 AI 大模型的 PaaS 平台主要提供以下五大功能 : 1、加速生产和部署:提供工具和指南,优化并加速模型的推理,满足生产部署的需求。比如平台会使用如 Docker或 Kubernetes的容器技术,确保模型在不同的环境中都能一致、稳定地运行,并通过 CI/CD流程,确 保模型的更新和部署能够自动且连续地进行。 2、模型库与接口:提供统一的接口,支持多种预训练的 NLP模型,如 BERT、GPT、RoBERTa等。 Transformer库的 API支持各种 NLP任务,如文本分类、命名实体识别、文本生成等。通过 API调用,开发者 可以轻松地加载和使用模型,并可以通过接口提供丰富的参数和选项,使开发者可以根据自己的需求进行定制。
3、数据管理与处理:Datasets库可以提供 NLP数据集的访问、管理和处理工具,Tokenizers库可以支持 文本数据的标记化,为模型准备输入数据。比如开发者可以直接在平台上加载和使用库中包含的多种 NLP数据集, 平台会允许开发者上传自己的数据集,并为数据集提供版本管理功能,从而确保数据的一致性。 4、模型训练与微调:允许用户下载预训练模型,进行微调,适应特定任务,包括模型训练、微调、封装、验证、 部署和监控。使用预训练模型并对其进行微调已经成为了 AI领域的标准做法,尤其是在 NLP中。这种方法结合 了预训练模型的通用知识和特定任务的数据,从而获得了更好的性能。 5、模型共享:ModelHub和 Space为用户提供模型共享、代码分享和协作环境。鼓励开发者之间的开放合 作,促进 NLP技术的快速发展。
传统的 PaaS平台主要关注用户软件应用开发周期的加速,通过开发工具的集成、硬件基础设施的自动管理、 多租户应用共享基础资源和开发者多平台灵活访问的方案为企业和开发者提供便捷服务。大模型的高算力和高 开发门槛要求 PaaS平台更加关注大模型的开发部署流程的优化。参考目前市场中成功的厂家案例,如 Google AI Platform、AWS SageMaker和 HuggingFace等,这些厂家平台在部署大量基础设施资源的情况下为用户 提供大模型快捷开发环境、大模型的全生命周期的监控调优,同时也会提供一些预训练模型和数据集。大模型 PaaS平台的上述功能优势也将为个人开发者和一些微小企业的 AI应用开发提供便利,大大降低大模型硬件基础 设施的购买运维成本和搭建复杂的基础开发环境的时间精力消耗。
2.1.5 智算中心
智算中心是基于最新人工智能理论,采用领先的人工智能计算架构,提供人工智能应用所需算力服务、 数 据服务和算法服务的公共算力新型基础设施,通过算力的生产、聚合、调度和释放,高效支撑数据开放共享、 智能生态建设、产业创新聚集,有力促进 AI产业化、产业 AI化及政府治理智能化。 智算中心作业环节是智算中心的支撑部分,智算中心通过作业环节实现了算力的生产、聚合、调度和释放, 是区别于其它数据中心的具体体现。功能部分是四大平台和三大服务,四大平台分别是算力生产供应平台、数据开放共享平台、智能生态建设平台和产业创新聚集平台;三大服务分别是数据服务、算力服务和算法服务,目 标是促进 AI产业化、产业 AI化及政府治理智能化。
智算中心通常采用三方主体协作的投资建设运营模式: 1、投资主体:智算中心建设通常采用政府主导模式,政府作为投资主体加快推进智算中心落地,以智算中 心为牵引打造智能产业生态圈,带动城市产业结构优化升级,增强城市创新服务力。 2、承建方主体:智算中心建设通常选择政府主导下的政企合作模式,由企业具体承建智能计算中心。 3、运营主体:运营主体为具体负责智算中心投入使用后的运营服务机构。 AI 智算中心不仅是一个高效的计算中心,更是一个综合性的创新平台,它结合“平台+应用+人才”的三合 一策略,为新型AI产业的繁荣提供强大的算力支持、实际应用开发的鼓励,以及顶尖AI专家的培养和吸引。此 外,中心还强调“算力+生态”的双轮驱动,通过持续的硬件投资和开放的AI生态合作,旨在吸引更多的企业和 研究机构,从而推动AI全产业链的形成和快速发展。
2.2 基础大模型与相关技术
2.2.1 大模型研究发展迅速
2017年 Transformer模型提出并在机器翻译领域取得巨大成功后,自然语言处理大模型进入了爆发式的 发展阶段。自 2018年以来,大型预训练语言模型的发展经历了几个重要阶段和突破:2018年,Google发布了 BERT模型,引领了自然语言处理领域预训练范式的兴起;2020年,OpenAI发布了 GPT-3模型,展示了强大的 文本生成能力和在少量标注任务上的优秀表现,然而基于提示词学习的方法并未在大多数任务上超越预训练微 调模型;2022 年 11月,ChatGPT 的问世展示了大语言模型的潜能,能够完成复杂任务并在许多任务上超越有 监督模型。这一突破表明大型语言模型在复杂任务上的潜力。
大语言模型的实现细节和训练过程仍存在许多复杂性,对研究人员提出了挑战。同时,大语言模型的发展 也带来了一些挑战和争议,关于数据隐私、模型偏见和滥用等问题引发了广泛讨论。为了解决这些问题,研究 人员和机构开始探索模型透明化、可解释性和模型治理方法。 更多的具备多模态功能的大模型也将很快推出,例如 Google的 Gemini, OpenAI的 Gobi,开源的 NExTGPT等。多模态大模型的视觉功能会带来潜在的法律安全风险,这些潜在的风险会延缓多模态大模型的推出进度。
2.2.2 大模型与小模型将持续并存
大模型与中小模型在未来几年会并存。尽管大模型当前表现优异,但对于各行业使用者来说,实际应用于 业务场景仍然存在较高的技术和成本门槛。从业务层面分析,一定会出现资源配置更加高效的小模型,例如细 分领域的专用小模型。 不仅仅存在大模型和小模型的融合使用,大模型的小型化,以大模型为底座的小型化微调, 也是一种趋势,这种方式能够以低廉的成本解决大量的业务问题。 “大和小是一个相对的变化。”。当前大模型的参数标准并不统一,相对于参数量级,模型的效果且是否能够 支持快速迭代对于用户实际应用来说更为重要。用户能够在一个白盒大模型基础上快速地、低成本地微调和迭 代出定制化的小模型,才能高效地实现丰富场景的大模型应用。模型需要持续迭代,表明了 AI基础软件工具链 的重要性。
2.2.3 大模型的基础理论与设计
2.2.3.1 大模型网络架构的发展
当前主流大模型是基于 Transformer架构进行设计的。传统的 Transformer架构通常具有二次计算复杂性, 在上下文长度较长时,训练和推理效率已成为一个重要问题。为了提高效率,一些新的语言建模架构被提出来, 例如 RWKV,RetNet等。 Transformer,由于其架构的出色并行性和容量,使得将语言模型扩展到数百亿或数千亿个参数成为可能, Transformer 架构已成为开发各种大模型的事实标准骨干。一般来说,主流大模型架构可以分为4种类型,即 Decoder-Only、 Encoder-Only、Encoder-Decoder和MoE。Decoder-Only,典型代表是 GPT 和 LLaMA 等 模型,Encoder-Only的典型代表是 BERT 和 ALBERT 等模型,Encoder-Decoder的典型代表是 T5 和 BART 等 模型;值得特别注意的是,即使GPT-4的技术细节未公开,业界的广泛认知是其使用了MoE架构。
RWKV,结合 Transformer 和 RNN 的优势,训练时能够像 Transformer 那样并行计算,推理时又能像 RNN 那样高效。高效推理,对于降低模型成本,尤其是在端侧部署有重要意义。RWKV 的计算量与上下文长 度无关,对于更长的上下文有更好的扩展性。和 RNN 一样,历史信息是靠隐状态(WKV)来记忆的,对于长距 离历史信息的记忆不如 Transformer,如何设计提示对模型的性能会有很大影响。 RetNet,作为全新的神经网络架构,同时实现了良好的扩展性、并行训练、低成本部署和高效推理。在语 言建模任务上 RetNet 可以达到与 Transformer 相当的困惑度(perplexity),推理速度提升 8.4倍,内存占用减少 70%,具有良好的扩展性,并且当模型大小大于一定规模时,RetNet 的性能表现会优于 Transformer。
2.2.3.2 大模型的训练目标多样化
基础大模型是对世界知识的压缩,从基础模型到通用模型,模型的性能的构建主要来源于包含四个阶段: 预训练、指令微调、奖励建模和对齐微调。这四个阶段分别需要不同规模的数据集,采用不同的训练目标,从 而训练得到不同尺寸的模型,因此所需要的计算资源也有非常大的差别。 预训练,在将大规模语料库中的通用知识编码到庞大的模型参数中起着关键作用。对于训练大模型,有两 种常用的预训练任务,即语言建模和去噪自编码。 指令微调,目标是增强(或解锁)大语言模型的能力,是一种提高大语言模型能力和可控性的有效技术。 使用格式化的实例以有监督的方式微调大语言模型(例如,使用序列到序列的损失进行训练)。指令微调后, 大语言模型展现出泛化到未见过任务的卓越能力 ,即使在多语言场景下也能有不错表现。
奖励建模,目标是构建一个模型,用于进行文本质量评价。在使用场景中,指令微调模型会根据一个提示 词,生成多个不同结果,然后由奖励模型进行质量排序。 对齐微调,目标是将大语言模型的行为与人类的价值观或偏好对齐。与初始的预训练和指令微调不同, 语言模型的对齐需要考虑不同的标准(例如有用性, 诚实性和无害性)。 已有研究表明对齐微调可能会在某种程度 上损害大语言模型的通用能力,这在相关研究中被称为对齐税。对齐微调是一项具有挑战的工作。现有的很多 开源大模型只做到指令微调,都没有做到对齐微调。
2.2.3.3 Scaling Law 的指导意义
OpenAI于2020年最先引入了语言模型缩放法则,他们认为,增加模型大小比增加数据大小更重要。 DeepMind于2022年提出几乎完全相反的观点:以前的模型明显训练不足,增加训练数据集的大小实际上会带来 更好的性能提升。 影响模型性能最大的三个因素:计算量、数据集大小、模型参数量。当其他因素不成为瓶颈时,这三个因 素中的单个因素指数增加时,Loss会线性地下降。 OpenAI观点:最佳计算效率训练是在相对适中的数据量上训练非常大的模型并在收敛之前Early Stopping。影响模型性能的三个要素之间存在幂指数的关系,每个参数并受另外两个参数影响。当没有其他两 个瓶颈时,性能会急剧上升,影响程度为计算量 > 参数 >>数据集大小。训练要同时增大参数规模和数据集大 小。大模型比小模型的样本效率更高,能以更少的优化步骤和使用更少的数据量达到相同的性能水平。
DeepMind观点:模型太小时,在较少数据上训练的较大模型将是一种改进;模型太大时,在更多数据上 训练的较小模型将是一种改进。 可以通过 Scaling Law进行模型性能的预测。随着模型规模和复杂性的大幅增加,很难预测模型性能的变 化。通过开发更好的模型性能预测方法,或提出一些新架构,使资源的利用更加高效,训练周期加速缩短。一 些可能的方法包括:训练一个较小的“种子”模型并推断其增长,模拟 Increased Scale 或 Model Tweaks 的 效果,在不同规模上对模型进行基准测试以建立 Scaling Laws。使用这些方法可以在模型构建之前就洞察到模 型的性能。
2.2.3.4 模型可解释性具有重要意义
模型的可解释性是指以人类可理解的方式解释或呈现模型行为的能力。随着大模型的不断进步,可解释性 将变得极其重要,以确保这些模型具有透明性、公平性和益处。大语言模型内部机制仍然不明确,这种透明度 的缺乏给下游应用带来了不必要的风险。因此,理解和解释这些模型对于阐明其行为、消除局限性和降低社会 不利影响至关重要。 模型的可解释性从技术角度分为传统微调范式的可解释和提示范式的可解释。传统微调范式的解释,用于解释个体组件所学习的知识或语言属性,解释大语言模型如何为特定输入做出预测。提示范式的解释,目标是 用于理解大语言模型如何能够迅速从有限示例中掌握新任务,阐明对齐微调的作用,分析幻觉产生的原因。
为提高模型预测的理解度,帮助用户建立适当的信任,同时也有助于研究人员和开发者发现模型的潜在问 题并改进性能,需要制定评估生成解释的度量标准,研究如何利用解释来调试模型和提高性能。
2.2.3.5 模型幻觉是一个高价值的研究方向
当模型生成的内容不遵循原文(与给定的输入或源内容不一致)或者和事实不符,就认为模型出现了幻觉的 问题。数据质量、数据重复、数据不一致及模型对自身能力的高估是导致幻觉产生的重要原因。在文本生成等 大模型应用中,减少幻觉是一个亟待解决的重要问题。 为减少幻觉,可从预训练、微调、强化学习等多个阶段对模型训练进行干预。预训练阶段可关注语料质量 ; 微调阶段可人工检查数据 ;强化学习阶段可惩罚过度自信的回复。此外推理阶段,也可通过解码策略优化、知识 检索、不确定度测量等方式缓解幻觉。尽管减少幻觉取得一定进展,但可靠评估、多语言场景、模型安全性等 方面仍存在诸多挑战。总体来说,大模型幻觉的评估与缓解仍有待深入研究,以促进大模型的实际应用。
2.2.3.6 超级对齐
一些研究表明大语言模型能与人类判断高度对齐,在某些任务上甚至优于人类判断,让我们看到了超级智 能实现的曙光。超级智能是一把双刃剑,有助于解决许多重要问题,同时也可能削弱人类的权力并威胁我们的 安全。为了治理这些风险,急需建立新的治理机构并解决AI模型的对齐问题。 OpenAI于23年7月首次提出超级对齐的概念,认为人类目前无法可靠地监督那些比人类还聪明的人工智能 系统。其将投入20%的计算资源,花费4年的时间全力打造一个超级对齐系统,意在解决超级智能的对齐问题。 构建超级对齐系统,由一系列的关键性工作构成:1. 开发一种可扩展的训练方法;2. 构建超级对齐系统, 进行系统验证工作;3. 在构建超级对齐系统的过程中,对整个对齐流程进行压力测试。
虽然当前的技术进展与这个理想仍有差距,但我们有理由相信研究者们能开发出具有超级对齐能力的AI系 统。
2.2.3.7 多模态大语言模型
多模态大语言模型(MLLM)是近年来兴起的一个新的研究热点,它利用强大的大语言模型作为大脑来执 行多模态任务。其中,OpenAI宣布 ChatGPT新增了图片识别和语音能力,使得 ChatGPT不仅可以进行文字 交流,还可以给它展示图片并进行互动,这是 ChatGPT向多模态进化的一次重大升级。OpenAI联合创始人, ChatGPT架构师 John Schulman认为,添加多模态功能会给大模型带来极大的性能提升,“如果扩展出现边际 收益递减,那么添加多模态就能让模型获得文本中无法获得的知识,并有可能掌握纯语言模型无法完成的任务。 例如,通过观看与物理世界甚至是与电脑屏幕互动的视频,模型能获得巨大收益。”
从发展通用人工智能的角度来看,MLLM可能比 LLM向前更近了一步。MLLM更符合人类感知世界的方 式,人类能够自然地接受多感官输入,这些输入往往是互补和合作的。因此,多模态信息有望使 MLLM更加智能。 得益于多模态输入的支持,用户可以用更灵活的方式与智能助手进行交互;MLLM是一个更全面的任务解决者。 虽然 LLM通常可以执行 NLP任务,但 MLLM通常可以支持更大范围的任务。 目前的 MLLM在感知能力方面仍然有限,导致视觉信息获取不完整或错误,这可能是由于信息容量和计算 负担之间的折衷产生的。MLLM的推理链很脆弱,改进多模态推理的主题值得研究。MLLM的指令跟随能力需 要升级,指令调整可能需要涵盖更多的任务来提高泛化能力。幻觉问题很普遍,这在很大程度上影响了 MLLM 的可靠性,需要通过更高效的参数训练优化。
2.2.4 大模型的计算与推理
2.2.4.1 分词算法与分词器
分词算法与分词器作作为大语言模型的基础组件,是将字符序列转化为数字序列,起到文本与模型间桥梁 的作用。分词器决定了大语言模型的词表大小、文档压缩率,并直接影响模型的训练和推理效率。 分词算法大致经历了从 Word/Char到 Subword的进化,当前的主流分词算法是 BPE、WordPiece、 Sentencepiece和 Unigram等算法。 理想的分词器具有如下特性:无损重构,分词结果应该可以无损还原为输入;高压缩率,词表大小相同时, 同一批数据的 tokens数应该尽可能少;语言无关,基于统计、训练和分词过程都不应引入语言特性;数据驱动, 可以直接基于原始语料进行无监督训练;训练友好,能够在合理的时间和配置上完成训练过程。
2.2.4.2 注意力机制及计算
注意力机制是Transformer的关键组成部分。它允许序列中的标记相互交互,并计算输入和输出序列的表 示。自注意力机制的时间和存储复杂度与序列的长度呈平方的关系,占用了大量的计算设备内存并消耗大量计 算资源。因此,如何优化自注意力机制的时空复杂度、增强计算效率是大语言模型需要面临的重要问题。 全注意力。在传统的Transformer 中,注意力机制以成对的方式进行,考虑序列中所有标记对之间的关 系。同时,Transformer使用多头注意力而不是单一注意力,将查询、键和值分别投影到不同头部的不同投影 上。每个头部输出的连接被视为最终输出。
稀疏注意力。全注意力的一个重要挑战是二次计算复杂度,在处理长序列时会带来负担。因此,提出了各 种高效的稀疏注意力来减少注意力机制的计算复杂度,每个查询只能根据位置关系关注标记的子集,而不是整 个序列。 多查询/分组查询注意力。多查询注意力是指不同头部在键和值上共享相同的线性变换矩阵的注意力变体。 它可以显著减少计算成本,只牺牲少量模型质量。具有多查询注意力的代表性模型包括PaLM 和StarCoder 。 分组查询注意力在多查询注意力和多头注意力之间进行权衡,头部被分配到不同的组中,属于同一组的头部将 共享相同的变换矩阵。特别地,分组查询注意力在LLaMA 2模型中得到了采用和经验验证。
FlashAttention。与大多数现有的近似注意力方法不同,这些方法在提高计算效率的同时牺牲了模型质 量,FlashAttention从IO感知的角度优化了GPU上注意力模块的速度和内存消耗。FlashAttention作为CUDA 中的融合核心实现,已经集成到PyTorch、DeepSpeed和Megatron-LM 中。更新的FlashAttention-2 进一步 优化了GPU线程块和warp的工作划分,相比原始FlashAttention,速度提高了约2倍。
PagedAttention。将每个序列划分为子序列,并将这些子序列的相应KV缓存分配到非连续的物理块中。 分页技术提高了GPU利用率,并实现了并行采样中的高效内存共享。PagedAttention解决了因输入长度经常变 化,导致碎片化和过度预留问题。 扩张注意力。设计原则是随着token之间距离的增长,注意力分配呈指数级下降。因此具有线性的计算复杂 性和对token之间的对数依赖性,可以解决有限的注意力资源和token可访问性之间的矛盾。
2.2.4.3 大模型预训练
预训练在大语言模型编码一般知识方面起关键作用,是大模型获取能力的基础。通过在大规模语料库上进 行预训练,大语言模型可以获得基本的语言理解和生成能力。在这个过程中,预训练语料库的规模和质量对于大语言模型获得强大的能力至关重要。 从一些数据上可以看出,模型预训练是一项高成本的工作,需要不断进行优化。例如:GPT-3 175B单次训 练花费460万美元;训练PaLM两个月左右耗费约3.4Gwh;GPT-3 175B 训练了4990亿个Token;OpenAI训练 集群包括285k CPU和10k High-End GPU。
随着语言模型参数量和所需训练数据量的急速增长,单个机器上有限的资源已无法满足大语言模型训练的 要求。需要设计分布式训练系统来解决海量的计算和内存资源要求问题。在分布式训练系统环境下需要将一个 模型训练任务拆分成多个子任务,并将子任务分发给多个计算设备,从而解决资源瓶颈。但是如何才能利用包 括数万计算加速芯片的集群,训练参数量千亿甚至是万亿的大规模语言模型?这其中涉及到集群架构、并行策 略、模型架构、内存优化、计算优化等一系列的技术。
训练数十亿参数的大语言模型通常是一个高度实验性的过程,需要进行大量的试错。随着模型和数据的规模 增加,有限的计算资源下高效地训练大语言模型变得具有挑战性。有两个主要的技术问题需要解决,即提高训 练吞吐量和加载更大模型到显存中。当前的优化方案包括3D并行,ZeRO 和混合精度训练。
2.2.4.4 大模型的推理优化
大语言模型推理面临计算资源的巨大需求和计算效率的挑战。大语言模型的推理速度每提高 1% ,都将比 拟谷歌搜索引擎推理速度提高 1% 的经济价值(-- 英伟达 Jim Fan)。优化推理性能不仅可以减少硬件成本, 还可以提高模型的实时响应速度。 大模型推理主要是考虑延迟和吞吐量。模型推理一般是自回归型的任务,往往是显存密集型的任务,除了 模型占用显存外,KV cache本身也会占用大量的显存;大模型太大的时候,单机无法存放,这时候需要分布式 推理。
主流推理框架有vLLM、Text Generation Inference、FasterTransformer。 推理的计算优化有算子融 合,高性能算子编写。推理的分布式优化有Tensor并行,Pipeline并行等。低精度优化有FP16、INT8、INT4 量化推理,Weight Only量化等。推理算法优化可以通过去除无效算子,减少不必要的算子执行等方式;批量 推理优化可以使用Continuous Batch,Dynamic Batch等方式;解码方式优化有投机解码,多解码头解码 (美杜莎)等。
2.2.4.5 上下文窗口扩展
上下文长度是大模型的关键限制之一。大型上下文窗口可让模型更加准确、流畅,提升模型创造力。大部分模型的长度为 2k,Claude扩展到了 10k,LongNet更是将上下文长度扩展到了 10亿。 增加上下文长度,可以从不同角度进行实现:更好外推能力的位置编码,注意力计算优化,模型参数的条 件计算,增加 GPU显存等。
通过位置插值扩展大语言模型上下文窗口相对容易。位置插值通过小代价的微调来显著扩展大模型的上下 文窗口,在保持原有扩展模型任务能力的基础上,显著增加模型对于长文本的建模能力。另一个优势是,通过 位置插值扩展的模型可以充分重用现有的预训练大语言模型和优化方法,这在实际应用中具有很大吸引力。使 用原模型预训练数据规模大约 0.1%的代表性样本进行微调,就能实现当前最佳的上下文窗口扩展性能。
2.2.4.6 模型压缩
以 GPT-175B模型为例,它拥有 1750亿参数,至少需要 320GB(以 1024的倍数计算)的半精度(FP16)格 式存储空间。此外,为了有效管理操作,部署该模型进行推理至少需要五个 A100 GPU,每个 GPU配备 80GB内存。 巨大的存储与计算代价让有效的模型压缩成为一个亟待解决的难题。 大模型压缩技术的最新进展,主要分布在模型剪枝、知识蒸馏、低秩因式分解、模型量化等领域。在进行 大模型压缩时,会采用其中一种或多种组合方案。其中,将低秩因式分解应用于压缩大模型方面可能会取得进展, 但似乎仍需要进行持续的探索和实验,以充分利用其对大模型的潜力;并非所有的量化技术都适用于大语言模型。 因此,在我们选择量化方法时需要谨慎考虑。
大模型压缩评估的主要衡量标准,是对比未压缩大模型的压缩有效性、推理效率和准确性。模型压缩的核 心指标包括模型的型号尺寸、压缩率、推理时间、浮点运算等,分别从模型的磁盘或内存空间占用,性能不变 时的有效压缩占比,推理时处理和生成输入数据的响应时间,处理输入数据时浮点数的运算量这些方面进行指 标衡量。
2.3 大模型与训练、评测数据
大模型与数据的相互作用确保了模型的初始性能,并且可以通过数据对大模型进行微调以使其适应新的任 务,这同时驱动了整个 AI生态系统,包括硬件、优化技术和数据处理等领域的不断进步。大模型和训练数据共 同塑造了 AI的性能、适应性和实际应用价值。
其实,我们完全不必去纠结于 生成式大语言模型是否具有“真正的意义的理解能力和推理能力”,乃至 于它是否是走向“通用人工智能 (或人类水平的智能)”的正确路径这样的“大问题”。我们现在从具体的 实践中就可以清晰地预见到,生成式AI技术,在知识处理和应用领域具有巨大的潜力,而这一潜力,无论是和行业知识、企业私域知识,乃至个人的知识体系(包括经历)进行深度融合,就将会爆发出巨大的场景。 例如,我们大胆预测,很快,每一个人都会拥有自己的数字分身,企业的每一个岗位,都会出现一个岗位数字 助理的角色。
本节虽然是白皮书的收尾,但生成式 AI所引发的技术变革和应用场景的爆发才刚刚开始,参照过去几次大 的技术范式变革对社会生活和经济活动的影响方式和程度,目前最常见的“+大模型”的应用模式有可能还远不 是生成式 AI技术真正的“杀手级”应用场景。而生成式 AI Native的应用,不仅仅在应用本身,还有人们的使用 模式,或者是基于该技术的应用开发方式,都应该是“原生”形态的。
纸质形式编撰的白皮书的内容,显然是远远无法跟上生成式技术和应用的高速发展的,但正如开篇所说, 我们希望这个白皮书对我们的企业客户朋友们快速构建新技术知识框架,能有少许帮助;对生成式AI技术应用 领域里的技术生态伙伴朋友们,能有一个交流的“话题平台”,共同研究、总结、积淀生成式AI技术对企业 数字化转型的推动的方法论和最佳实践。文中的疏漏和谬误在所难免,我们会根据朋友们的反馈,持续迭代更 新,后续以电子版、印刷版结合的方式保持和各位的交流。
(本文仅供参考,不代表我们的任何投资建议。如需使用相关信息,请参阅报告原文。)
相关报告
生成式AI企业应用落地技术白皮书:致广大而尽精微.pdf
Astera Labs公司研究:数据中心连接方案独角兽,产品受益于AI服务器强劲需求.pdf
业务视角的中国企业AI+学习发展报告,燃动智火.pdf
2024年生成式AI行业调查报告.pdf
传媒行业专题报告:AI+IP,AI多模态下的卖水人.pdf
华勤技术研究报告:智能硬件ODM全球龙头,AI赋能多品类共生成长.pdf