一、什么是大语言模型
大语言模型是指在海量无标注文本数据上进行预训练得到的大型预训练语言模型,例如GPT-3,PaLM和LLaMA。大语言模型(Large Language Model,LLM)是一种基于深度学习的自然语言处理模型,能够理解和生成人类语言。它通过大量文本数据进行训练,学习语言的统计规律和语义关系,从而完成各种语言任务,如文本生成、翻译、问答、摘要等。
二、大语言模型的特点
- 具有较为丰富的世界知识。与传统机器学习模型相比,大语言模型经过超大规模文本数据的预训练后能够学习到较为丰富的世界知识。
- 具有较强的通用任务解决能力。大语言模型主要通过预测下一个词元的预训练任务进行学习,虽然并没有针对特定的下游任务进行优化,却能够建立远强于传统模型的通用任务求解能力。
- 具有较好的复杂任务推理能力。大语言模型在大规模文本数据预训练后,能够展现出比传统模型更强的综合推理能力。
- 具有较强的人类指令遵循能力。大语言模型建立了自然语言形式的统一任务解决模式:任务输入与执行结果均通过自然语言进行表达。通过预训练与微调两个阶段的学习,大语言模型具备了较好的人类指令遵循能力,能够直接通过自然语言描述下达任务指令(又称为“提示学习”)。
- 具有较好的人类对齐能力。目前广泛采用的对齐方式是基于人类反馈的强化学习技术,通过强化学习使得模型进行正确行为的加强以及错误行为的规避,进而建立较好的人类对齐能力。目前很多线上部署的大语言模型应用,都能够有效阻止典型的模型功能滥用行为,一定程度上规避了常见的使用风险。
- 具有可拓展的工具使用能力。大语言模型具有较为通用的任务求解形式,可以通过微调、上下文学习等方式掌握外部工具的使用,如搜索引擎与计算器,通过具有特殊功能的工具来加强大语言模型的能力。目前最先进的大语言模型如GPT-4等能够支持多种工具的使用,从而极大地提升了模型的任务解决能力。
三、大语言模型关键技术概览
- 规模扩展。早期的研究主要关注模型参数规模所带来的性能优势,最近的工作则是加大对于高质量数据的规模扩展。针对十亿级别(如2B或7B)参数的模型使用超大规模的数据(如2T或3T词元)进行训练,仍然可能无法达到这些模型的最大数据容量。实现规模扩展的关键在于模型架构的可扩展性。Transformer模型的可扩展性非常强,对于硬件并行优化的支持也比较友好,特别适合大语言模型的研发,很多工作也在进一步针对其进行优化与改进。
- 数据工程。OpenAI于2019年就在GPT-2的论文中给出了当前大语言模型的技术路线图:通过在海量文本上进行下一个词预测的优化,使得模型能够学习到丰富的语义知识信息,进而通过文本补全的方式解决各种下游任务。这种方式最大的好处是,极大地简化了模型的设计与优化过程,使得模型训练与使用都是基于自然语言生成的模式进行的。在这种通用的预训练范式下,模型能力本质上是来源于所见过的训练数据,因此数据工程就变得极为重要。目前来说,数据工程主要包括三个方面。首先,需要对于数据进行全面的采集,拓宽高质量的数据来源;其次,需要对于收集到的数据进行精细的清洗,尽量提升用于大模型训练的数据质量;第三,需要设计有效的数据配比与数据课程,加强模型对于数据语义信息的利用效率。这三个方面的数据工程技术直接决定了最后大语言模型的性能水平。目前来说,针对英文的开源高质量数据集合比较丰富,相关的数据工程技术讨论也相对较多,但是对于其他语言的研究关注度还有待进一步加强。
- 高效预训练。由于参数规模巨大,需要使用大规模分布式训练算法优化大语言模型的神经网络参数。由于大语言模型的训练需要耗费大量的算力资源,通常需要开展基于小模型的沙盒测试实验,进而确定面向大模型的最终训练策略。为此,GPT-4构建了一整套面向大模型的基础训练架构,可以使用较少的算力开销来可靠地预测大模型的最终性能。
- 能力激发。现有的研究认为指令微调无法向大模型注入新的知识,而是训练大模型学会利用自身所掌握的知识与信息进行任务的求解。在提示学习方面,需要设计合适的提示策略去诱导大语言模型生成正确的问题答案。为此,研究人员提出了多种高级提示策略,包括上下文学习、思维链提示等,通过构建特殊的提示模板或者表述形式来提升大语言模型对于复杂任务的求解能力。提示工程已经成为利用大语言模型能力的一个重要技术途径。进一步,大语言模型还具有较好的规划能力,能够针对复杂任务生成逐步求解的解决方案,从而简化通过单一步骤直接求解任务的难度,进一步提升模型在复杂任务上的表现。
- 人类对齐。在实践应用中,需要保证大语言模型能够较好地符合人类的价值观。将人类偏好引入到大模型的对齐过程:首先训练能够区分模型输出质量好坏的奖励模型,进而使用强化学习算法来指导语言模型输出行为的调整,让大语言模型能够生成符合人类预期的输出。
- 工具使用。通过让大语言模型学会使用各种工具的调用方式,进而利用合适的工具去实现特定的功能需求。为了能够有效地使用外部工具,GPT系列模型通过插件机制来形成系统性的工具调用方式,这些插件可以类比为大语言模型的“眼睛和耳朵”,能够有效扩展大语言模型的能力范围。在技术路径上,工具调用能力主要是通过指令微调以及提示学习两种途径实现,而未经历过特殊训练或者缺乏有效提示的大语言模型则很难有效利用候选工具。