在人工智能领域,GPT架构(Generative Pre-trained Transformer,生成式预训练转换器)已经成为一个耳熟能详的名字。得益于ChatGPT等模型的卓越表现,自然语言处理技术达到了前所未有的高度。但是,ChatGPT能够流利地回答问题、生成文本、甚至进行创作,其背后的技术原理究竟是什么?本文将深入剖析GPT架构的内部构造,从自注意力机制到规模化法则,逐步揭示驱动这些强大模型的技术奥秘。我们将以通俗易懂的方式,结合实际案例与数据,为读者呈现一幅清晰而深入的技术图景。
1. Transformer架构:GPT的基石
要理解GPT架构,首先必须了解其基础——Transformer架构。Transformer是由Google的研究人员在2017年发表的论文《Attention is All You Need》中提出的,它是一种革命性的神经网络架构。 Transformer的核心在于自注意力机制,它摒弃了以往在自然语言处理领域占据主导地位的RNN(循环神经网络)和LSTM等模型,实现了更高效的并行计算和更强大的长程依赖建模能力。
Transformer架构包含编码器(Encoder)和解码器(Decoder)两个主要部分。最初的Transformer论文中,编码器和解码器都由多个层堆叠而成(例如,6个编码器层 + 6个解码器层)。编码器负责将输入的文本转换为内部表征,而解码器则利用这些表征来生成输出语句。然而,GPT架构与此略有不同——GPT仅使用解码器堆栈。也就是说,GPT实际上是一个Transformer解码器模型,专注于直接生成输出,而不需要编码器。(BERT等模型则只使用编码器侧。)
编码器和解码器层在结构上相似:每个层基本上都包含一个自注意力机制和一个前馈网络。这些层依次排列,形成一个深度网络。使用多层的目的在于获取更复杂和抽象的表征——底层学习更简单的关系,并将输出传递给上层,从而使上层能够捕获更高级的关系。
2. 自注意力机制:捕捉语境的关键
自注意力机制是Transformer架构的核心,也是GPT架构成功的关键因素之一。可以将人类大脑作为类比:当我们阅读一个句子时,我们并非平等地关注每个词;我们会更加注意当时重要的词。Transformer中的自注意力机制以类似的方式工作:模型学习序列中的每个词应该对其他词给予多少“关注”。通过这种方式,它可以捕获句子中词语之间的关系。
例如,在句子“猫喝了它的牛奶然后睡着了”中,模型可以通过自注意力机制理解到动词“睡着”的主语是“猫”。每个词都通过自注意力机制从其他词“借用”它需要的信息。因此,即使在长句子中,也可以有效地学习到远距离词语之间的连接。
具体来说,自注意力机制为每个词计算三个不同的向量——查询(Query)向量、键(Key)向量和值(Value)向量。一个词给予另一个词的注意力大致基于查询向量和另一个词的键向量的点积。也就是说,一个词的查询与另一个词的键越相似,注意力得分就越高。在计算出所有词的这些分数后,使用softmax函数对它们进行归一化(分数在0-1之间缩放,总和等于1)。然后,每个词的值向量都根据这些分数进行加权求和。结果是一个“经过精心混合”的向量,代表该词更新后的含义。最后将这个向量传递到前馈神经网络。
简化后的步骤如下:
-
创建Q、K、V向量:查询(Query)、键(Key)和值(Value)向量通过使用学习到的权重投影每个词的嵌入向量来获得。(这些向量的维度可以小于原始嵌入维度——例如,在GPT-3中,虽然嵌入是12288维的,但每个Q/K/V可能是128维的。)
-
分数计算:通过取相关词的查询与其它词的键的点积,来计算每个词的原始注意力分数。
-
缩放分数:将这些计算出的分数除以向量维度的平方根进行缩放。(这可以防止分数中的大值破坏梯度,这是2017年论文中提出的一个技巧。)
-
归一化(Softmax):分数通过softmax函数传递,从而转换为更易理解的概率分布——以百分比形式确定要对哪个词给予多少注意力。
-
加权求和:每个其它词的值向量都乘以这些softmax导出的注意力权重并求和。因此,我们获得了焦点词的新向量;该向量是考虑到其它词的该词的更新表示。
-
输出:结果向量作为自注意力层的输出发送到该词的前向处理(然后将进入前馈网络)。
通过这种机制,模型可以同时处理句子中的所有词,并以数学方式学习哪个词与哪个词相关。尤其是在长上下文中,自注意力可以轻松捕获RNN遗忘的远距离关系,因为所有词之间都建立了直接连接。
此外,多头自注意力(Multi-Head Self-Attention)是一个值得提及的概念:模型不进行单次注意力计算,而是使用多个“头”。每个头都使用不同的权重计算查询-键-值矩阵,并产生自己的注意力输出。然后将这些输出连接起来,并馈送到线性层。其目的是使模型能够并行地学习不同子空间中的不同关系。一个头可能专注于句子中的句法关系,而另一个头可能捕获语义关系,还有一个头可能关注词的位置等。最终,多头机制允许模型从许多不同的角度同时应用注意力。
如下图展示了一个自注意力的案例,连接了句子中的 “it” 和 “the animal”。
[图片:展示一个自注意力连接句子中 “it” 到 “the animal” 的例子]
正如在示例中看到的,由于自注意力,句子中的词 “it” 可以连接到 “the animal”;也就是说,模型理解到这两个词是相关的。这使得Transformer在理解和建立上下文方面非常成功。这同时也是GPT架构的核心:通过注意力机制解决文本中词语之间的关系。
3. GPT的技术结构:Transformer模块与掩码注意力
理解了注意力机制后,我们就可以拼凑出GPT架构的拼图了。正如其名称中的 “Transformer” 所暗示的那样,GPT的基础是我们刚才解释的结构。然而,GPT是一个生成模型,正如 “生成式预训练Transformer” 中的那样,它专注于顺序文本生成。因此,GPT架构使用Transformer的解码器侧,并以掩码方式应用自注意力机制。
什么是掩码自注意力?像GPT这样的语言模型从左到右读取和生成文本。也就是说,在预测一个词时,尚未生成的未来词语是“隐藏”的。掩码注意力确保模型仅查看先前的位置,防止它看到未来的词语。我们通过将三角形(上三角形)掩码应用于输入序列来实现这一点:序列中的每个位置都会掩盖其后的位置,通过仅查看自身之前的位置(以及自身)来计算注意力。通过这种方式,当模型预测文本时,因果一致性不会被打破——它基于过去生成,而不知道未来。
在GPT架构中,输入文本首先被分成tokens(我们将很快谈到tokenization)。每个token以数字的形式提供给模型,并且在第一层中,这些数字被转换为特定维度的向量(在嵌入步骤中)。此外,位置嵌入被添加到这些输入向量以传递位置信息。因为纯粹的注意力机制没有关于顺序的信息;模型可以学习到词语的序列顺序,这要归功于位置添加。
然后,数据依次通过一系列Transformer模块。这些模块中的每一个都包含以下子层: (1) 掩码多头自注意力层, (2) 之后是一个小型前馈网络层。在每个子层之后,应用残差连接(跳跃连接)和层归一化,以加深和稳定学习。也就是说,在每个模块中,输入向量首先通过注意力机制,输出被添加到原始输入(跳跃连接)并归一化,然后馈送到前馈网络,输出再次添加到输入并归一化,并获得模块输出。这个结构重复L次(L是层数)。
下图显示了类似于GPT的Transformer模型的完整架构。在左侧,层从输入到输出排列;在右侧,详细说明了Transformer模块的内部结构(带有多头掩码注意力和两线性层前馈部分)。
[图片:带有Transformer模块内部结构的完整GPT架构图]
所示的结构代表了GPT架构的骨架。例如,在OpenAI的GPT-3模型中,在这个结构中依次排列了96个Transformer模块。每个模块包含一个96头多头注意力层和一个12288维的前馈网络(惊人的数字,对吧?)。通过这种方式,GPT-3达到了总共1750亿个参数。然而,架构的原理与较小的GPT模型相同:只是使用了更深(更多层)和更宽(更大的向量维度)的网络。实际上,GPT-3的成功可以说是来自 “扩展模型” ——使用大约3个数量级(1000倍)比GPT-2更多的参数,使模型的语言能力飞速提高。这种增加是通过简单地扩展来实现的,而没有添加任何激进的新机制(更多层,更多神经元,更多数据)。
4. Tokenization过程:将文本转化为数字
在进入Transformer模块之前,我们需要谈到将文本转换为数字的过程:Tokenization。计算机处理数字,而不是词语。因此,在向GPT提问或要求它生成文本之前,所有文本都会转换为token序列。你可以将token视为模型可以感知的最小单元。这有时可以是字符,有时可以是词,有时可以是 “词片段”。GPT模型通常使用称为字节对编码(Byte Pair Encoding,BPE)的算法在子词级别执行tokenization。通过这种方式,稀有和复合词被分解为部分,以提供更有效的表示。
例如,考虑英语单词 “raining”。通过BPE tokenization,这个词可能会被分成两部分,如 “rain” 和 “ing”。这是一个简单的示例可视化:
"it is raining" -> ["it", "is", "rain", "ing"]
实际上,GPT-3使用的tokenization器遵循一种涵盖所有Unicode字符并保持频繁出现的字节序列在一起的方法(字节级别BPE)。通过这种方式,即使是像表情符号这样的稀有符号也不会让模型感到 “陌生”;它们都被表示为token。因此,像 “Hello world!” 这样的句子也类似地被分解为token(例如,可能会出现像 “Hel”、”lo”、” world”、”!” 这样的部分)。每个token都有一个ID,并且模型的输入向量是这些ID的嵌入等价物。
token的数量受到模型上下文窗口的限制——对于GPT-2,限制约为 ~1024个token;对于GPT-3,限制约为 ~2048个token;在GPT-4中,这个数字上升到8K,甚至在特殊版本中上升到32K。这决定了模型一次可以处理的文本长度。上下文窗口越大,模型在响应时可以记住的输入就越长。
总而言之,tokenization是GPT的第一步,并完成将 “输入句子转换为数字” 的工作。适当的分割很重要,因为模型不应仅限于单个字母或完整词语——分解为子部分可以提高泛化能力。
5. GPT是如何训练的?预训练与微调
GPT,在其名称中带有 “预训练”(Pre-Trained),经历了大规模的预训练。在这个预训练阶段,GPT以无监督的方式读取从互联网上编译的大量文本,而无需人工干预。目标是什么?预测下一个词!这样一个简单的任务,当与足够的数据结合时,使模型能够获得世界知识和语言技能。你将维基百科文章、书籍、论文、网络写作提供给GPT,并且每次都获取一个随机文本片段,并尝试通过查看先前的词语来预测每个词。如果它预测正确,则没有问题;如果它预测不正确,则通过反向传播纠正错误。通过这种方式,经过数百万、数十亿步,模型学习了语言的统计属性。GPT-3接受了大约3000亿个token的训练,而这种训练需要大量的计算能力。根据OpenAI的计算,在单个GPU上训练GPT-3可能需要355年;幸运的是,使用数千个GPU并行,可以在合理的时间内完成此过程。
那么模型学到了什么?实际上,无论教给它什么——由于它在互联网文本上接受训练,几乎所有类型的互联网书写信息都流入模型中。它设法生成具有正确统计模式、逻辑流程甚至在一定程度上存储世界知识的语言。GPT-3的引人注目之处之一是它可以执行它从未见过的任务。例如,即使在训练期间没有明确要求模型进行翻译,但由于它已经看到了足够的示例,因此它可以学会从语言模式进行翻译。这就是为什么GPT-3论文的副标题是 “小样本学习者” ——该模型可以通过查看少量示例来完成一项新任务,有时甚至仅看一个示例就足以理解指令。
在预训练之后,特别是当我们谈论像ChatGPT这样与用户交互的模型时,就会发挥微调阶段的作用。微调意味着为了更具体的目的而对模型进行更多训练。在训练GPT-3之后,OpenAI使用了来自人类反馈的强化学习方法,使其能够以对话形式响应人类的请求。这是一个模型输出由人类评估和指导的过程。简要总结:首先,从GPT-3派生的模型在监督下进行了微调,以生成对各种问题的答案(即,人类准备了示例问题-答案对,模型学习了这些)。然后,在模型生成随机答案的情况下,人类按质量对这些答案进行了排名。使用此排名数据训练了奖励模型。最后,GPT模型使用强化学习算法(如近端策略优化)进行训练,以最大程度地提高来自此奖励模型的反馈。结果?出现了一个名为InstructGPT的模型,该模型在遵循指令方面更加成功,并且注意不产生有害的输出。ChatGPT是使用这种方式训练的模型。也就是说,我们可以将其称为在人类指导下,原始GPT-3的 “驯服” 版本。通过这种方式,ChatGPT不仅生成语言,而且还更倾向于理解用户意图,并在必要时提供合理、一致和礼貌的答案。
总而言之,GPT成功背后是两阶段的训练:在第一阶段中,对大型数据集进行与任务无关的学习(语言模型训练),在第二阶段中,进行特定于任务/目的的微调。这种组合既赋予了模型通用的语言能力,又确保了它在实际使用中的用处。
6. 为什么GPT如此成功?规模与所学
GPT在此水平上的成功有几个根本原因:
- 数据规模:由于模型处理了大量的数据,因此它可以学习语言的统计结构和许多世界知识片段。就像 “面包越多,肉丸越多” 一样,它提供的文本越多且种类越多,它就越有能力。例如,GPT-3接受了从互联网上的百科全书知识到诗歌和论坛讨论的广泛范围的训练。这使它有机会坐在广泛的知识库上。
- 模型规模:增加参数数量使模型能够表示更复杂的函数。研究表明,随着参数和数据大小的增加,语言模型的性能会定期提高(这种关系甚至遵循幂律)。OpenAI的工作观察到,扩大模型大小会导致新能力在某些间隔 “出现”。例如,15亿个参数的GPT-2无法进行的一些逻辑推断,1750亿个GPT-3可以进行,因为它有能力表示复杂的关系。
- Transformer架构的力量:我们上面详细介绍的自注意力机制和并行处理结构使模型能够学习长上下文和复杂的关系。虽然RNN按顺序处理数据,但Transformer可以同时处理数据(同时评估句子中的所有词)。这既提高了训练效率(GPU喜欢这种并行性),又使捕捉长期关系成为可能(因为所有词都可以相互查看)。结果,模型更好地掌握了语言的结构细微差别。
- 微调和人类反馈:仅仅知道很多是不够的;正确地呈现它也很重要。GPT背后的团队采取了额外的步骤来根据人类的期望来塑造模型(例如,阻止有害内容,减少明显的错误信息,适当地响应用户请求等)。这大大改善了用户体验,并有助于模型看起来 “更聪明”。
- 规模化和工程成就:训练像GPT这样的模型需要认真的工程技能。并行运行数百甚至数千个处理器/图形单元,将模型分成几部分(模型并行)并同步训练每个部分,内存管理,数据流等都是难题。OpenAI宣布他们使用Microsoft Azure基础架构上的特殊超级计算机训练了GPT-3。因此,成功也归功于背景中这种庞大的计算基础架构。现在参数数量已达到数十亿,训练这些模型已成为只有大型公司和机构才能承担的负担。
当所有这些因素结合在一起时,GPT在语言模型中产生了一种几乎是飞毯的效果。人们多年来试图通过手动编程完成的任务,如语言理解、翻译和摘要,都只是GPT的副产品。该模型的通用能力非常高,以至于它可以通过小提示(提示工程)适应所需的任务。
但是,应该强调的是:GPT并非完美。由于它的学习完全基于统计相关性,因此有时会给出虚构的信息,称为幻觉,并且可能会在非常罕见或特定的主题上出错。此外,就像一个非常大的 “愚蠢计算器” 一样,它使用所学的内容——通过计算概率来生成最有可能出现的文本,而没有理解,没有意识。然而,在实践中,这种区别通常很难理解,因为结果非常令人满意。
7. 模型的决策过程:当提出问题时会发生什么?
现在我们已经了解了架构和训练,让我们描述一下当你向ChatGPT提出问题时,幕后会发生什么。本节将介绍GPT的推理过程,即经过训练的模型的执行阶段。
假设你问ChatGPT “什么是GPT架构?” 让我们逐步了解模型在后台执行的操作:
-
Tokenization:首先,你写的提问句子会立即分成token。例如,对于这个句子,可能会形成一个像 [“What”, ” is”, ” GPT”, ” architecture”, “?”] 这样的token序列(这种表示是简化的)。每个token都对应于一个进入模型的数字ID。
-
输入准备:通常会给模型提供一个 “系统” 消息,先前的对话(聊天记录)和最新的用户消息。所有这些累积的聊天也被token化并组合成一个长的序列。模型采用此序列以适应其上下文窗口。
-
前向传递:整个输入token序列通过GPT模型的层传递。信号的流动方式为嵌入→位置加法→第一个Transformer模块(掩码多头注意力+前馈)→第二个模块→…→最后一个模块。在此阶段,执行大量的矩阵乘法和向量运算,但由于优化的库,所有操作都在几毫秒内给出结果。最后一层的输出为每个位置生成一个概率分布。
-
输出生成(一个Token):模型查看来自上一步输出的最后一个位置。这包含模型对下一个token的预测。例如,在问题 “什么是GPT架构?” 之后,模型可能会想生成 “GPT” 或类似的东西作为第一个token。在概率分布中,词汇表中的每个可能的token都有一个分数。从这个分布中选择一个token。选择策略取决于超参数:贪婪解码(直接选择最高概率),核采样(从覆盖一定概率质量的token池中随机选择)或诸如top-k之类的方法可以使用。ChatGPT通常会以一定的随机性(温度值> 0)进行抽奖,从而避免每次对同一问题给出完全相同的答案。
-
循环和完成:所选的token(例如,”GPT”)被添加到答案中。然后更新模型的输入序列:现在,将问题+先前生成的token一起反馈回模型(当然,这次“上一步”的计算可以缓存在模型的内存中,从而为新token进行额外的计算,而不是从头开始计算整个序列;用户感觉不到这种优化的技术细节)。模型再次计算下一个token的概率,进行另一次选择。此过程一直持续到模型生成一个<|endoftext|>(文本结尾)token或达到指定的最大长度。在我们的示例中,模型将按顺序生成token,例如 “GPT”、” architecture”、” is”、” a”、” Transformer”、”-based”、… 从而形成句子。
-
响应:最终,出现一个响应句子。例如:以 “GPT architecture is a language model based on the deep learning model called Transformer…” 开头的解释出现在用户的屏幕上。在生成此响应时,模型并没有像人类那样思考并选择每个词;相反,它汇集了最有可能的合理词。但是,由于它在预训练期间看到了所有示例,因此这些词形成了一个非常连贯的序列。
这个过程总结了一个典型语言模型的工作原理。具体来说,在ChatGPT中,模型还会经过过滤和引导,以保持在安全范围内。例如,如果用户发出有害请求,则存在单独的安全层,以防止模型做出响应(这也在训练期间进行了教授,或者后来与基于规则的系统集成)。从技术上讲,这些可能是工作在主模型之外的审核,但是它们会影响我们可以称为整个输出的 “模型的决策”。
8. 影响模型的超参数
除了我们在推理过程中提到的诸如温度之类的参数之外,还有许多影响GPT模型行为和容量的超参数。超参数是指在训练开始之前确定并在整个训练过程中保持不变的设置。GPT架构的一些重要超参数:
- 层数(L):模型中有多少个Transformer模块。更多的层通常意味着更好的性能,但也意味着更多的计算。例如,在GPT-2中最多48个,在GPT-3中使用了96层。
- 隐藏单元维度:每层中向量的大小(嵌入维度、前馈内部单元的数量等)。例如,在GPT-3中,当嵌入和模型大小为12288时,这在前馈层中增加了四倍(约49000)。随着维度的增长,模型可以学习的特征数量增加,但是计算负载也增加。
- 头的数量:多头注意力中并行注意力 “头” 的数量。该数字通常与模型大小成比例增长(例如,GPT-3有96个头)。更多的头允许模型并行地学习多个关系,但也增加了参数数量。
- 上下文窗口长度:模型一次可以看到的最大token数。这由tokenization器和配置决定(GPT-3为2048,GPT-4为8192等)。更长的窗口允许模型在更长的文本中保持一致,但也增加了内存需求。
- 训练超参数:学习率、批次大小、训练中使用的优化算法(例如,Adam)、权重乘数、正则化(如dropout率)等。这些参数决定了模型的优化程度。例如,过高的学习率可能导致模型发散(无法学习),而过低的速率可能使学习非常缓慢。
- 奖励模型和惩罚项:尤其是在诸如ChatGPT之类的模型中,使用了一些额外的机制和 “惩罚 “项来防止有害内容的生成。这也可以看作是一种超参数集——可以对模型进行调节,使其不生成某些词语,或者鼓励其以某些风格做出响应(例如,保持礼貌的语气)。
这些超参数中的每一个都用于微调模型的性能。由于在大型模型的训练过程中玩弄这些参数是一个昂贵的过程,因此通常首先通过在较小的模型上进行实验来找到最佳组合,然后将其应用于大型模型。可以说,像GPT-3这样的模型是由于这些设置的微妙平衡而取得成功的。
9. GPT与类似Google Gemini的模型:竞争与方向
当OpenAI凭借GPT系列取得突破时,Google也没有闲着。Google Brain和DeepMind团队作为Transformer的发明者,开发了诸如PaLM和LaMDA之类的大型语言模型。2023年,在Google DeepMind的保护伞下宣布了一个名为Gemini的新模型系列。Gemini在架构上被设计为与GPT-4竞争的模型,甚至旨在超越它。它最大的不同之一是Gemini从一开始就被构想为多模态——也就是说,它计划能够处理的不仅仅是文本,还可以处理图像和音频等不同的数据类型。GPT-4实际上也可以处理视觉输入(OpenAI将GPT-4描述为一个可以接受 “视觉输入 “的多模态模型),但这最初并未在ChatGPT界面中激活。Google Gemini强烈强调了这种多模态。
据说,Google从AlphaGo等传奇AI项目中的经验也被用于开发Gemini。他们表示旨在将通过深度强化学习方法获得的战略思维能力与大型语言模型的灵活语言相结合。这可能是朝着模型不仅发展为被动文本生成器,而且发展为未来更多 “代理” 风格系统(具有解决问题的重点,多步思维能力)迈出的一步。
另一个重要的一点是,由于竞争,模型正在迅速改进。虽然OpenAI提供了具有GPT-4的非常大的模型,但没有完全披露参数数量,但Meta(Facebook)向研究人员开放了其名为LLaMA的模型,并且出现了衍生产品。Google的Gemini被宣布将以Ultra、Pro、Nano等不同尺寸发布,因此将有适用于各种设备和应用程序的版本。这种竞争环境也鼓励了可扩展性、速度优化(例如,更快的基礎設施、高效的模型)和成本降低方面的进步。在不久的将来,我们可能会看到更高级版本的GPT架构,不同的架构混合体或全新的方法。Google Gemini和OpenAI GPT之间的比较也将在学术论文和基准测试中经常出现。
我们现在可以说的是,GPT架构设定的范例仍然非常强大。这些基于Transformer的模型在语言方面已经非常熟练,以至于它们构成了我们与之交互的许多应用程序的基础(翻译、助手、搜索引擎等)。从集成到Google搜索引擎中的AI响应到即将出现在Office软件中的智能助手,所有这些都归功于类似GPT的模型。像Gemini这样的新模型也可能会通过将类似的架构与创新(更多数据,不同的模态,优化的算法)融合在一起,来继续前进。
10. 结论
在本文中,我们试图以友好的对话氛围检查GPT架构的技术解剖结构。从Transformer的基础开始,我们了解了自注意力机制的秘密,然后看到了GPT如何将这些构建块变成一个巨大的拼图。数十亿个参数,数百个层,令人难以置信的大量训练数据……当所有这些结合在一起时,就会出现一个 “人工作家”,它可以以人类语言生成非常流畅和连贯的文本。在GPT的成功背后,不仅有规模和算法,而且还有巧妙设计的训练策略以及通过人类反馈进行的微调。
在一个简单的用户问题答案的背后,隐藏着一个从tokenization开始,充满矩阵计算的旅程。该模型通过每次根据其学习到的统计模式选择下一个词来构建句子。并且它做得如此巧妙,以至于大多数时候你都会觉得它真的 “理解 “了你的问题。重要的是不要陷入拟人化——GPT是一种人工智能,没有意识,但它将我们所谓的语言的数学投影内在化得如此完美,以至于与之聊天变得自然。
当然,GPT架构也没有停滞不前。每一项新研究都建立在改进此架构或推动其极限的基础上。有许多活跃的研究领域,例如增加内存长度、以更少的计算量实现相似的性能(例如,使注意力机制更有效的FlashAttention算法)、在学习期间更好地指导(例如,提示工程技术)。随着Google的Gemini行动和OpenAI的意外创新,我们将在未来几年看到更加强大,甚至可能更加专业的GPT衍生产品。
最后,值得记住的是,这种技术之旅不仅停留在理论上,而且也在现实世界中产生了影响。GPT和同等模型已使自然语言界面成为一种新标准。从软件工程师到医生,从教师到内容创作者,每个人都已开始将这些模型集成到他们的工作流程中。对于工程专业的学生来说,理解这种架构也是朝着构建未来AI系统迈出的一大步。我希望这种友好而深入的检查使GPT引擎盖下的工程奇迹更易于理解。
对于好奇的人,以下是一些参考资料和进一步的阅读建议。请记住:他们说 “注意力就是你所需要的一切” ——而且确实,当正确调整时,注意力可以改变一切!