生成式 AI (GAI,Generative artificial intelligence)描述 AI 中用于创建原创内容的一类功能。通常与聊天应用程序中内置的生成式 AI 交互。 生成式 AI 应用程序接受自然语言输入,并以自然语言、图像、代码和音频等各种格式返回适当的回复(参见:自然语言处理)。
GAI 由三部分构成:
- 变压器架构(Transformer architecture):大型语言模型是 GAI 的基础。
- 目前大多数生成式语言模型都是基于 Transformer 架构。虽然 Transformer 最初包含两个模块(编码器和解码器),但生成式大语言模型(LLMs)通常使用的是仅解码器的变体。该架构将嵌入为向量表示的 Token 序列(即单词或子词)作为输入,并通过两个重复操作进行转换:
- 掩码自注意力:关注序列中其他 Token(即前面的 Token)。
- 前馈转换:分别转换每个 Token 的表示。
- 这两个操作各自承担着重要的角色。将多个掩码自注意力和前馈转换层堆叠在一起,就形成了如今大多数生成式大语言模型使用的神经网络架构。
- 目前大多数生成式语言模型都是基于 Transformer 架构。虽然 Transformer 最初包含两个模块(编码器和解码器),但生成式大语言模型(LLMs)通常使用的是仅解码器的变体。该架构将嵌入为向量表示的 Token 序列(即单词或子词)作为输入,并通过两个重复操作进行转换:
- 预培训(Pretraining):大型语言模型使用的(初始)训练过程。
- 自监督学习是指利用原始数据中已有的信号来训练机器学习模型。对于生成式大型语言模型(LLMs)而言,最常用的自监督学习目标是下一个 Token 预测,即标准语言建模目标。虽然这个目标很简单,但它是所有生成式语言模型的核心。要预训练一个生成式语言模型,我们首先收集一个大型的原始文本语料库(比如来自书籍、互联网和科学出版物等)用作数据集。然后,从随机初始化的模型开始,通过反复执行以下步骤进行预训练:
- 从数据集中抽取一个原始文本序列。
- 将这个文本序列传递给仅解码器的 Transformer。
- 训练模型在序列中每个位置准确预测下一个 Token。
- 自监督学习是指利用原始数据中已有的信号来训练机器学习模型。对于生成式大型语言模型(LLMs)而言,最常用的自监督学习目标是下一个 Token 预测,即标准语言建模目标。虽然这个目标很简单,但它是所有生成式语言模型的核心。要预训练一个生成式语言模型,我们首先收集一个大型的原始文本语料库(比如来自书籍、互联网和科学出版物等)用作数据集。然后,从随机初始化的模型开始,通过反复执行以下步骤进行预训练:
- 对齐(Alignment):这是一个调整过程,我们如何教大型语言模型按照我们的喜好行事。
- 预训练后,生成式大型语言模型(LLMs)虽然能够准确预测下一个词,但其输出通常较为重复且缺乏新意。对齐过程旨在教会语言模型生成符合用户需求的文本。为此,我们首先定义一组对齐标准(如有用且无害)。为了让模型遵循这些标准,我们使用监督微调(SFT)和来自人类反馈的强化学习(RLHF)进行微调。这两者结合构成了 InstructGPT 提出的三步对齐技术。
常见的 GAI 有 OpenAI 推出的 GPT 模型,Anthropic 推出的 Claude 模型,Google 推出的 Gemini 模型,Meta 推出的 LLaMA 模型,等。
虽然目前生成式 AI 已经被广泛应用,但在使用时仍然要警惕其存在的幻觉。