大语言模型是一种由包含数百亿甚至更多参数的深度神经网络构建的语言模型,通常使用自监督学习方法通过大量无标签文本进行训练,是深度学习之后的又一大人工智能技术革命。
大语言模型的发展主要经历了基础模型阶段(2018 年到2021年)、能力探索阶段(2019年到2022年)和突破发展阶段(以2022年11 月OpenAI 发布ChatGPT 为起点)。其中,在基础发展阶段主要发布了一系列大语言模型(BERT、GPT、PaLM 等),这个时期的特点是模型参数在几十亿到几百亿左右,主要通过微调方式满足业务场景。
在能力探索阶段,大语言模型很难针对特定任务进行微调,出现了指令微调,将各种类型任务统一为生成式自然语言理解框架,使用构造的语料库对模型进行微调。在突破发展阶段,出现具备问题回答、文稿撰写、代码生成等能力的基础模型。这个阶段的另一个主题特色是具备了多模型理解能力,参数达到千万亿。值得一提的是,大语言模型快速发展促生了
新的微调范式,如预训练微调、提示学习方法、模型即服务范式、指令微调等。
到目前为止,全世界已经有数千个大语言模型,在各个行业纵深应用;需要训练的参数已高达数千亿,在云计算或者超级计算中心训练一次通常需要数千颗 GPU/TPU 耗费几个月甚至更长的时间,电费动辄高达几百万美金。高昂的时间、费用让中小企业望而却步,也使大语言模型成为大互联网公司和有实力的政府科研机构的专属地。
然而,随着预训练、微调范式的出现,此局面已经大为改观,中小企业乃至个人都可以在公开的大语言模型基础上进行预训练,形成自己的定制款大语言模型。曾经遥不可及的“奢侈品”已经走入了寻常百姓家,大语言模型一度成为全世界讨论的热门话题,它的出现改变了很多人和事,从某种意义上加速了大语言模型的发展。
要“炼”成大语言模型主要有3个条件。第一是制作标准的数据集,这是最费时间和精力的事情,可能需要数千个标注人员花费几个月甚至更长时间,此外,还需要形成一套标准的数据处理流程或者管道。第二,需要性能、训练准确且鲁棒的大语言模型框架;大语言模型不是某种技术,而是一系列前沿技术的集成,可能涉及深度学习、概率机器学习、强化学习、集成学习和知识图谱等技术。第三,需要强大的硬件资源支撑,有了标准数据集或知识库,也要有强大框架技术,在资源加持下,通过持续数月的调参、优化,才能训练出一个大语言模型。将训练好的模型部署好,向第三方提供API接口,才最终实现了大语言模型的场景应用。
大语言模型训练范式是怎么回事?为什么会出现这些范式?由于大语言模型参数量庞大,针对不同任务都进行微调需要消耗大量的计算资源,因此大语言模型从预训练微调时代,进入提示范式、模型即服务范式、指令微调范式时代。此外并不是每个团队都有资源、技术和时间训练大语言模型。在预训练大语言模型基础上,通过收集自己领域的数据集,借助已经训练好的大语言模型,学习自己领域的知识,形成特定场景的大语言模型。换句话说,大语言模型通过训练数千亿的参数和海量数据集来学习通用知识,预训练则是通过采集专业领域知识,在通用知识的基础上学习专业知识。这样预训练的模型就能更加适应特定场景和问题。
除此之外,通过采集不同的数据格式和使用场景,在大语言模型基础上衍生出多模态、多智能体等技术和场景,可以用文字生成图、音频、视频,图、音频、视频,也可以反过来生成文字。同时可对海量数据和信息实现知识推理,从而解决各种复杂问题。
本书是一本“奢侈品”普及使用指南,主要讨论大语言模型基础,准备数据集,训练与评估大语言模型,部署大语言模型,以及形成MLOps;也是一本大语言模型实践著作,面向计算机科学与工程、软件工程、人工智能专业的高年级本科生,也面向就职于企业且对大语言模型感兴趣的工程师和科学家。