大型语言模型基础:预训练、生成式模型、提示与对齐技术详解
本文系统介绍了大型语言模型的基础知识,涵盖预训练范式、生成式模型架构、提示工程方法及模型对齐技术。内容从自然语言处理的发展脉络出发,解析了 Transformer 等核心组件的作用,详细阐述了掩码语言建模与因果语言建模的区别,探讨了上下文学习与思维链推理等高级提示策略,并深入讲解了基于人类反馈的指令微调与强化学习对齐流程。旨在帮助读者建立对 LLM 技术的系统性认知,理解从预训练到应用落地的关键技术环节。

本文系统介绍了大型语言模型的基础知识,涵盖预训练范式、生成式模型架构、提示工程方法及模型对齐技术。内容从自然语言处理的发展脉络出发,解析了 Transformer 等核心组件的作用,详细阐述了掩码语言建模与因果语言建模的区别,探讨了上下文学习与思维链推理等高级提示策略,并深入讲解了基于人类反馈的指令微调与强化学习对齐流程。旨在帮助读者建立对 LLM 技术的系统性认知,理解从预训练到应用落地的关键技术环节。

大型语言模型(Large Language Models, LLMs)的起源可以追溯到自然语言处理领域,但近年来,它们无疑已成为人工智能领域最具革命性的技术进步之一。大型语言模型带来的重要洞见在于,通过大规模的语言建模任务,可以获得对世界知识和语言的理解,从而构建一个能够处理多种问题的通用模型。这一发现深刻地影响了自然语言处理及众多相关学科的研究方法。研究范式已从利用大量标注数据从零开始训练专门系统,转向通过大规模预训练获取基础模型,然后对其进行微调、对齐和提示的新模式。
本书旨在概述大型语言模型的基本概念并介绍相关技术。全书内容涵盖预训练基础、生成式模型架构、提示方法及对齐技术四个核心部分,旨在帮助读者建立对 LLM 技术的系统性认知。
神经序列模型(如 Transformer [Vaswani et al., 2017])的开发以及大规模自监督学习的改进,开启了通用语言理解与生成的新篇章。这一成就主要得益于预训练的推动:我们将许多基于神经网络的系统中的通用组件分离出来,并利用自监督方法在海量无标注数据上进行训练。这些预训练模型成为了基础模型,可以通过微调或提示轻松适应不同任务。因此,自然语言处理(NLP)的研究范式发生了巨大的变化。
Transformer 模型彻底改变了序列建模的方式。其核心是自注意力机制(Self-Attention),允许模型在处理序列时直接关注任意两个位置之间的关系,而不受距离限制。通过计算 Query(查询)、Key(键)和 Value(值)之间的交互,模型能够捕捉长距离依赖关系。多头注意力机制进一步增强了模型从不同子空间表示信息的能力。
尽管预训练在近年来的 NLP 研究中备受关注,这一概念实际上可以追溯到深度学习的早期阶段。在现代深度学习时代,预训练经历了复兴,这部分归因于各种词嵌入模型的大规模无监督学习。在 NLP 领域,基于自监督学习的语言模型的开发标志着大规模预训练研究的开始。这类模型包括多个广为人知的实例,如 BERT [Devlin et al., 2019] 和 GPT [Brown et al., 2020]。
预训练任务的通用性使得这些系统在各种 NLP 问题上表现出强大的性能,甚至超越了许多先前开发的监督系统。近年来,预训练的大型语言模型取得了更大的成功,展示了通用人工智能的广阔前景。
近年来,自然语言处理(NLP)领域的一个最重要的进步可能就是大型语言模型(LLMs)的发展。这一进步催生了能够像人类一样理解和生成自然语言的系统。这些系统甚至展现出一定的推理能力,而推理被认为是人工智能领域的一个极具挑战性的问题。
语言建模或概率语言建模的概念可以追溯到香农 [Shannon, 1951] 的早期实验。在他的研究中,设计了一种语言模型来估计英语的可预测性。在相当长的一段时间里,特别是在 2010 年之前,语言建模的主流方法是 n-gram 方法。虽然这种方法简单直接,但在 NLP 中得到了广泛应用。例如,现代统计语音识别和机器翻译系统的成功在很大程度上依赖于 n-gram 语言模型。
将神经网络应用于语言建模长期以来一直吸引研究者关注,但真正的突破出现在深度学习技术取得进展之后。Bengio 等人 [2003] 的研究被广泛引用,他们通过一个前馈神经网络对 n-gram 概率进行建模。这种神经语言模型的副产品是单词的分布式表示,也称为词嵌入(word embeddings)。与将单词表示为离散变量不同,词嵌入将单词映射到低维实值向量,使得可以在连续表示空间中计算单词及其 n-gram 的语义。
随着 Transformer 的提出,序列表示的研究和兴趣迅速爆发。随着 Transformer 的兴起,语言建模的概念被泛化,以涵盖通过多种方式学习预测单词的模型。许多强大的基于 Transformer 的模型通过这些单词预测任务进行预训练,并成功应用于多种下游任务。
本章探讨生成式大型语言模型(LLMs)的基本概念。我们首先概述大型语言模型,包括构建这些模型的关键步骤。随后讨论大型语言模型的两个扩展问题:如何进行大规模训练,以及如何改进模型以处理超长文本。
事实上,在大规模数据上训练语言模型使得 NLP 研究进入了激动人心的时代。虽然语言建模长期以来被视为一种基础技术,但它让我们看到了通过在文本中反复预测单词,智能系统可以学习到一定程度的通用知识的可能性。
在大型语言模型(LLMs)的应用中,提示(Prompting)是指通过提供特定的输入或线索,让模型生成所需输出或完成某项任务的方法。例如,如果我们希望模型将一句话从英文翻译成中文,可以设计如下提示:
将以下文本从英文翻译成中文。 文本:The early bird catches the worm.
翻译:
提示对于 LLMs 来说至关重要,因为提示的设计直接影响到模型理解用户查询并作出响应的效果。精心设计的提示可以引导模型生成更准确、相关和上下文适宜的回应。此外,这一过程是可以迭代优化的。鉴于提示在 LLMs 应用中的重要性,提示设计(Prompt Design)已成为用户和开发者操作 LLMs 时的一项关键技能。
与提示密切相关的一个重要概念是上下文学习。当向 LLM 提供提示时,我们可以在上下文中添加新的信息,例如问题解决的演示示例。这使得模型可以从这些上下文中学习如何解决问题。以下是一个通过几个情感分类示例向模型提示的案例:
以下是一些文本分类的示例。
示例 1:We had a delightful dinner together. → 标签:Positive
示例 2:I'm frustrated with the delays. → 标签:Negative
请问句子"That comment was quite hurtful."的标签是什么?
标签:
上下文学习通常被视为 LLMs 在预训练后表现出来的一种涌现能力。尽管 LLMs 可以通过训练或微调来完成新任务,上下文学习提供了一种无需额外训练或微调就能高效适配模型的新方法。这或许是 LLMs 最显著的特性之一:它们在预训练期间确实学会了关于世界和语言的通用知识,我们可以将这些知识轻松应用于新挑战。
除了基础的 Few-shot Prompting,还有更高级的策略:
本章重点讨论 LLMs 的提示技术。我们首先介绍提示工程中常见的一些有趣的提示设计,然后讨论一系列提示方法的改进。最后,我们探讨自动化提示设计的方法。
在自然语言处理(NLP)领域,对齐(Alignment)并不是一个新概念,但其含义在不同的领域和时间段内有所不同。在传统的 NLP 中,"对齐"通常指的是将两个集合中的相应元素进行匹配的任务。随着大型语言模型(LLMs)在 NLP 研究中的日益重要,"对齐"这一术语的使用范围已经扩大,指的是将模型输出与人类期望对齐。
单纯地进行 LLM 预训练可能会导致各种对齐问题。我们的终极目标是解决或减轻这些问题,以确保 LLMs 既准确又安全。这里有一个有趣的问题:由于大型语言模型是在海量数据上训练的,我们有理由相信,如果我们能够收集足够多涵盖各种任务并与人类偏好一致的数据,预训练可能使 LLMs 足够准确和安全。然而,现实情况是,几乎不可能收集到涵盖所有任务或充分代表人类偏好的数据。这使得仅通过预训练来实现模型对齐变得困难,至少在当前阶段,对齐仍然是 LLM 开发中一个非常必要且关键的步骤。
本章将重点讨论 LLM 的对齐方法。我们将首先讨论一般的对齐任务。接着,我们将考虑两种广泛使用的方法,分别是指令对齐(Instruction Alignment)和人类偏好对齐(Human Preference Alignment)。
尽管这两种方法的动机不同,但它们通常是结合使用的,以开发出对齐良好的 LLMs。这确保了模型不仅功能强大,而且在伦理上合理、无歧视性,能够安全地服务于人类社会。
大型语言模型正在重塑技术格局。从预训练的基础理论到实际应用的提示工程,再到确保安全的对齐技术,每一个环节都至关重要。希望本文能为读者提供一个清晰的学习路径,无论是希望深入探索某一具体领域,还是想全面了解大型语言模型,都能从中获得启发。随着技术的不断演进,LLM 将在更多垂直领域发挥关键作用,推动人工智能向通用智能迈进。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online