1.1 大语言模型概述
1.1.1 基本情况
自然语言处理是研究如何利用机器来处理和理解人类语言的理论及技术领域。作为人工智能的一个重要分支和计算语言学的子领域,自然语言处理的目标是使机器真正理解人类语言,解决在计算机处理过程中出现的各种语言相关问题,实现人机交互,并以人类可以理解的方式进行反馈。自然语言处理涉及多个研究方向,包括语音识别、自然语言理解、对话系统、机器翻译等。近年来,随着深度学习在自然语言处理领域的广泛应用,该领域取得了巨大的进展。
大语言模型是自然语言处理的一种技术方向。与传统的专用“小”模型不同,大语言模型凭借“大”语料、“大”算力和“大”参数取得优势。当规模达到一定程度时,模型会展现出涌现能力(Emergent Ability),即从原始训练数据中自动学习并发现新的、更高层次的特征和模式的能力。简而言之,大语言模型具有触类旁通的能力,其知识不仅来源于原始语料,还能够创造性地生成,这是小模型难以达到的。
大语言模型在自然语言处理领域具有广泛的应用,涵盖了许多子领域。以下是大语言模型的一些应用场景。
①自然语言生成:模型的自然语言生成能力使其成为生成文章、源程序、故事、新闻报道、营销文案等文本内容的理想工具。这些生成的文本通常都是合理、流畅并且符合语法规则的。
②自动问答系统:回答用户提出的问题,如智能客服、知识库增强检索等。这类系统可以暂存用户的问答历史记录,进行多轮关联问答对话。
③对话系统:以Chat方式与用户进行交流,如智能助手、聊天机器人等。这类系统可以根据用户的提问或指令生成语义正确、语气自然、逻辑合理的回答或响应。
④文本摘要:提取文本中的关键信息,生成摘要或总结,如论文的摘要书写、医疗文书的结构化信息生成等。
⑤机器翻译:利用大语言模型的上下文理解能力、长距离依赖建模和多语言支持等特性,改进语言翻译效果。
⑥代码生成:生成代码片段或程序代码,如自动化编程、代码补全等。
1.1.2 发展历史
大语言模型的起源可以追溯到早期的自然语言处理研究,包括基于规则的方法和基于统计的方法。基于规则的方法由于灵活性不足,发展缓慢;而基于统计的方法从20世纪90年代至今,取得了长足的发展。通过学习大量来自互联网的语料取得“经验”、提升能力,大语言模型在翻译领域的应用非常成功,其主流的技术是卷积神经网络(CNN)、循环神经网络(RNN)以及Word2Vec词嵌入技术等。
大语言模型的突破性发展出现在2017年,随着Google机器翻译团队那篇著名的论文“Attention is All You Need”[2]的发表,采用注意力(Attention)机制的Transformer架构开始大行其道。2018年OpenAI推出了GPT系列模型,包括GPT-1和GPT-2,这些模型都使用了Transformer架构,并收集了大量的语料库进行训练,从而实现了对长序列文本的处理和生成。
OpenAI的GPT-2可称得上是一个划时代的模型。以现在的技术来看,GPT-2参数量较少,基本上用于推理和文本补全场合,其知名度与GPT-4相去甚远。但实际上它已基本上具备了大语言模型在训练、语义理解、推理生成等方面的大部分特性,这几年在文本生成和分析场景中的应用非常广泛。
随着模型开发技术的进步、算力的提升,大语言模型的参数规模也在不断地扩大。2020年,OpenAI推出了GPT-3,该模型拥有1750亿个参数。基于GPT-3的现象级应用是OpenAI和GitHub联合推出的Copilt辅助代码补全工具。同期,Google推出了BERT模型,它使用双向Transformer架构,在多个NLP任务中取得了显著成果。
在基于GPT-3.5的ChatGPT面世之前,大语言模型虽然发展迅速,但依然是应用在比较专业的领域,如机器翻译、代码书写、文本推理生成等。直到2022年11月OpenAI发布了ChatGPT,大语言模型从推理、预测这些相对专业的技术应用转变为人性化的聊天应用,进入大众的日常生活。之后,同类大模型层出不穷,国产模型也不断涌现,形成“百模大战”的态势。
大语言模型的技术方向和发展历程由Mooler0410整理,在https://github.com/Mooler0410/LLMsPracticalGuide上可以查阅,进化树见图1-1。
(1)从发布年份来看(下面对年份进行了夸张描述,实际上只有短短6年的时间),主要的大语言模型如下。
❍ “史前”:Word2Vec。
❍ “远古”:BERT、GPT-1。
❍ “近古”:GPT-2、XLNet。
❍ “近代”:GPT-3、T5、GLM。
❍ “现代”:GPT-4、LLaMA2、Gemma、Claude3。
(2)从厂商来看,主要的大语言模型如下。
❍ Google:BERT、T5、Gemma。
❍ OpenAI:GPT-2、GPT-3、GPT-4。
❍ Claude:Claude2、Claude3。
❍ Meta(Facebook):LLaMA2。
❍ 国产:GLM
图1-1 大语言模型进化树
(3)从架构来看(Encoder和Decoder是Transformer的组成部分),主要的大语言模型如下。
❍ Encoder-only(仅编码器):BERT。
❍ Encoder-Decoder(编码器-解码器):GLM、T5。
❍ Decoder-only(仅解码器):GPT、LLaMA、Claude、Gemma。
1.1.3 发展现状
大语言模型处于高速发展阶段,但依然处于OpenAI的GPT系列一骑绝尘、其他公司努力追赶的态势。Anthropic推出了Claude3,可能对GPT的地位构成一定威胁。Meta的LLaMA出现在ChatGPT之后,但其开源生态对业界的推动非常大,涌现出一批基于LLaMA架构的国内外开源模型,满足了使用者在文本方面的大部分需求。Google的Gemma推出时间不长,但起点比较高。国内的模型除商业化运转的文心一言、讯飞星火外,还有一些开源的模型,如ChatGLM、阿里通义千问等,为用户提供了更多选择。整体而言,大语言模型领域的竞争日益激烈,各家厂商都在不断努力创新,为用户带来更优质的文本处理体验。
除了模型厂家推出的Chat类应用外,对开源大语言模型进行微调并将其应用于垂直专业领域也是大语言模型应用的重要发展方向。金融、医疗、编程等领域的专用大模型正在迅速发展。类似的定制化模型在不同行业中发挥着越来越重要的作用,为专业领域的用户提供了更加精准、高效的文本处理和分析工具。随着这些应用的不断完善和普及,开源大语言模型在专业垂直领域的应用前景将会更加广阔,为各行各业带来更多创新和便利。
从技术方面看,基于Transformer的Decoder-only架构是大语言模型的主流,各种模型表现出一定的技术趋同性。大部分开源的大模型都托管到huggingface.co网站,用户可以使用Hugging Face的Transformers库[3](Package[4])进行装载、推理、微调等。
1.1.4 发展趋势
首先,大语言模型在文本方面的能力已相当成熟,即使是具有2B(20亿)参数规模的较小模型,在大部分日常与文本相关的生产生活场景中,也表现得比较出色。其次,在多模态领域,大语言模型在理解图像、生成图像方面也逐渐走向成熟,文本生成图像(文生图)和图像生成图像(图生图)的应用越来越完善。另外,近期OpenAI发布的人工智能文生视频大模型Sora代表着一个全新的方向,开辟了多模态智能应用的新的可能性。
模型的小型化是另一个重要的应用发展趋势。大语言模型是将自然语言问题转化为数字计算的应用,因此GPU算力是大模型的主要运行资源。在实践中,对数值的计算可以容忍一定的精度下降而对结果无显著影响,基于这一前提,发展出了大语言模型的量化应用,即将模型中的权重(Weight)从高精度格式转换成低精度格式,如将32位浮点数转换成8位整数INT8的格式,期望量化后的模型在准确率上与量化前相近。经过量化处理的模型,可以脱离GPU而被移植到CPU上运行,甚至可以部署在Android手机上运行。这样的端侧部署方案在一些安全性要求高的环境、垂直专业领域、离线应用场景有一定的发展潜力。