《使用GPT-4和ChatGPT开发应用程序》第一章:GPT-4和ChatGPT要点

想象一下一个世界,你可以和计算机的交流速度与你与朋友一样快。那会是什么样子?你可以创建哪些应用程序?这就是OpenAI正在助力构建的世界,他们的GPT模型将人类般的对话能力引入了我们的设备。作为人工智能的最新进展,GPT-4和其他GPT模型是基于大量数据进行训练的大型语言模型(LLMs),使它们能够以非常高的准确性识别和生成类似人类的文本。

这些AI模型的影响远远超出了简单的语音助手。由于OpenAI的模型,开发人员现在可以利用自然语言处理(NLP)的能力来创建能够以曾经只存在于科幻小说中的方式理解我们需求的应用程序。从能够学习和适应的创新客户支持系统到了解每位学生独特学习风格的个性化教育工具,GPT-4和ChatGPT开启了全新的可能性世界。

但是GPT-4和ChatGPT究竟是什么呢?本章的目标是深入探讨这些AI模型的基础、起源和关键特点。通过了解这些模型的基础知识,您将为构建下一代LLM驱动的应用程序迈出重要的一步。

介绍大型语言模型

本部分阐述了塑造GPT-4和ChatGPT发展的基本构建模块。我们旨在提供对语言模型和自然语言处理(NLP)的全面理解,以及变换器架构的作用,以及GPT模型中的标记化和预测过程。

探索语言模型和自然语言处理(NLP)的基础原理

作为LLMs,GPT-4和ChatGPT是自然语言处理(NLP)领域中获得的最新模型类型,而NLP本身是机器学习(ML)和人工智能(AI)的一个子领域。在深入了解GPT-4和ChatGPT之前,了解NLP及其相关领域是至关重要的。 对于AI有不同的定义,但其中一种,更或多或少是共识的,认为AI是开发能够执行通常需要人类智能的任务的计算机系统。根据这个定义,许多算法都可以归入AI的范畴。例如,考虑GPS应用中的交通预测任务或战略视频游戏中使用的基于规则的系统。从外部看,这些示例中的机器似乎需要智能来完成这些任务。

ML是AI的一个子集。在ML中,我们不试图直接实施AI系统使用的决策规则。相反,我们尝试开发算法,允许系统从示例中自行学习。自20世纪50年代开始进行ML研究以来,许多ML算法已经在科学文献中提出。

其中,深度学习算法已经引起了人们的关注。深度学习是ML的一个分支,侧重于受到大脑结构启发的算法。这些算法被称为人工神经网络。它们可以处理大量数据,并在图像识别、语音识别和NLP等任务上表现非常出色。

GPT-4和ChatGPT基于一种特定类型的深度学习算法,称为变换器(transformers)。变换器就像阅读机器一样。它们关注句子或文本块的不同部分,以理解其上下文并产生连贯的响应。它们还可以理解句子中的词汇顺序和上下文,这使它们在语言翻译、问题回答和文本生成等任务上非常有效。图1-1说明了这些术语之间的关系。

NLP是人工智能(AI)的一个子领域,其重点是使计算机能够处理、解释和生成自然人类语言。现代NLP解决方案基于机器学习(ML)算法。NLP的目标是让计算机处理自然语言文本,这一目标涵盖了广泛的任务:

  1. 文本分类 将输入文本分类为预定义的组别。这包括情感分析和主题分类,例如,公司可以使用情感分析来了解客户对其服务的意见。电子邮件过滤是主题分类的一个示例,其中电子邮件可以被分类为"个人"、"社交"、"促销"和"垃圾邮件"等类别。
  2. 自动翻译 将文本从一种语言自动翻译成另一种语言。请注意,这可能包括将代码从一种编程语言翻译成另一种语言,例如从Python到C++。
  3. 问答 基于给定文本回答问题。例如,在线客户服务门户可以使用NLP模型回答关于产品的常见问题,或者教育软件可以使用NLP为学生关于所学主题的问题提供答案。
  4. 文本生成 基于给定的输入文本(称为提示)生成连贯和相关的输出文本。

正如前面提到的,LLMs是试图解决文本生成等任务的ML模型之一。LLMs使计算机能够处理、解释和生成人类语言,从而实现更有效的人机通信。为了能够做到这一点,LLMs分析或在大量文本数据上进行训练,从而学习句子中单词之间的模式和关系。各种数据源可以用于执行这个学习过程。这些数据可以包括来自维基百科、Reddit、成千上万本书的档案,甚至是互联网本身的档案。在给定输入文本的情况下,这个学习过程使LLMs能够对接下来最可能出现的单词进行预测,并以这种方式生成对输入文本有意义的响应。现代语言模型,最近几个月发布的,如今如此庞大,已经在如文本分类、机器翻译、问答等大多数NLP任务上可以直接执行。GPT-4和ChatGPT模型是在文本生成任务方面表现出色的现代LLMs。

LLMs的发展已经有好几年的历史。它始于简单的语言模型,如n-grams,它们试图根据前面的单词来预测句子中的下一个单词。N-gram模型使用频率来进行预测,预测的下一个单词是在训练n-gram模型的文本中跟随前面单词的最频繁出现的单词。虽然这种方法是一个良好的起点,但n-gram模型在理解上下文和语法方面需要改进,导致文本生成不一致。

为了提高n-gram模型的性能,引入了更高级的学习算法,包括循环神经网络(RNNs)和长短时记忆(LSTM)网络。这些模型可以学习更长的序列,并更好地分析上下文,但它们仍然需要帮助有效地处理大量数据。这些类型的循环模型长时间以来一直是效率最高的模型,因此在自动机器翻译等工具中得到了广泛应用。

理解变换器架构及其在LLMs中的作用

变换器架构彻底改变了自然语言处理(NLP),主要是因为变换器有效地解决了以前NLP模型(如RNNs)的一个关键限制:它们在处理长文本序列和保持这些长度上下文方面的困难。换句话说,虽然RNNs在较长序列中往往会忘记上下文(臭名昭著的"灾难性遗忘"),但变换器具有处理和有效编码这种上下文的能力。

这个革命的核心是注意力机制,这是一个简单但强大的思想。与将文本序列中的所有单词视为同等重要不同,该模型在执行任务的每个步骤上"关注"最相关的术语。交叉关注和自关注是基于这个注意力机制的两个架构模块,它们经常出现在LLMs中。变换器架构广泛使用这些交叉关注和自关注块。

交叉关注帮助模型确定输入文本的不同部分对准确预测输出文本中的下一个单词的相关性。这就像一个聚光灯,照亮输入文本中的单词或短语,突出显示生成下一个单词预测所需的相关信息,同时忽略不太重要的细节。

为了说明这一点,让我们以一个简单的句子翻译任务为例。假设我们有一个输入的英语句子:"Alice enjoyed the sunny weather in Brussels",需要将其翻译成法语为"Alice a profité du temps ensoleillé à Bruxelles"。在这个例子中,让我们关注生成法语单词"ensoleillé",意为"晴朗"。对于这个预测,交叉关注会更加关注英语中的单词"sunny"和"weather",因为它们对"ensoleillé"的意思都很相关。通过专注于这两个单词,交叉关注帮助模型为句子的这一部分生成准确的翻译。图1-2说明了这个例子。

自关注是指模型集中关注其输入文本的不同部分的能力。在NLP的上下文中,模型可以评估句子中每个单词与其他单词的重要性。这使得它能够更好地理解单词之间的关系,并帮助模型从输入文本中的多个单词构建新的概念。

作为一个更具体的例子,考虑以下句子:"Alice received praise from her colleagues"(Alice受到了同事们的赞扬)。假设模型试图理解句子中单词"her"的含义。自关注机制为句子中的单词分配不同的权重,突出显示在这种情境下与"her"相关的单词。在这个例子中,自关注会更加关注单词"Alice"和"colleagues"。自关注帮助模型从这些单词中构建新的概念。在这个例子中,可能会出现一个可能的概念,如图1-3所示,即"Alice的同事"。

与循环架构不同,变换器还具有易于并行化的优势。这意味着变换器架构可以同时处理输入文本的多个部分,而不是按顺序处理。这允许更快的计算和训练,因为模型的不同部分可以并行工作,无需等待前面的步骤完成,而不像循环架构需要顺序处理。变换器模型的并行处理能力与图形处理单元(GPU)的架构完美匹配,GPU被设计用于同时处理多个计算。因此,由于其高度的并行性和计算能力,GPU非常适合训练和运行这些变换器模型。这一进步使数据科学家能够在更大的数据集上训练模型,为LLMs的发展铺平了道路。

变换器架构于2017年由Google的Vaswani等人在论文"Attention Is All You Need"中首次引入,最初是为序列到序列任务(如机器翻译)而开发的。标准的变换器包括两个主要组件:编码器和解码器,两者都大量依赖于注意力机制。编码器的任务是处理输入文本,识别有价值的特征,并生成该文本的有意义的表示,称为嵌入。然后,解码器使用这个嵌入来生成输出,比如翻译或摘要。这个输出有效地解释了编码的信息。

生成式预训练变换器,通常称为GPT,是一系列基于变换器架构的模型,特别利用了原始架构中的解码器部分。在GPT中,没有编码器,因此不需要跨关注来整合编码器生成的嵌入。因此,GPT仅依赖于解码器内的自关注机制来生成具有上下文感知的表示和预测。请注意,其他知名的模型,如BERT(双向编码器表示来自变换器),是基于编码器部分的。我们不在本书中涵盖这种类型的模型。图1-4说明了这些不同模型的演变过程。

揭秘GPT模型中的标记化和预测步骤

GPT家族中的LLMs接收一个提示作为输入,并生成一段文本作为响应。这个过程被称为文本完成。例如,提示可以是"今天天气很好,所以我决定去散步",而模型的输出可能是"去散步"。您可能想知道LLM模型是如何从输入提示构建输出文本的。正如您将看到的,这主要涉及到概率的问题。

当一个提示被发送到LLM时,它首先将输入拆分成称为标记的较小部分。这些标记表示单词、单词的部分或空格和标点符号。例如,前面的提示可以被拆分如下:["The", "wea", "ther", "is", "nice", "today", ",", "so", "I", "de", "ci", "ded", "to"]。每个语言模型都配备了自己的标记器。在撰写本文时,尚不提供GPT-4的标记器,但您可以测试GPT-3的标记器。

多亏了早先介绍的注意力原理和变换器架构,LLM能够处理这些标记,并能够解释它们之间的关系以及提示的整体含义。变换器架构允许模型有效地识别文本中的关键信息和上下文。

为了创建一个新的句子,LLM预测最有可能跟随的标记,基于提示的上下文。OpenAI制作了两个版本的GPT-4,分别具有8,192个标记和32,768个标记的上下文窗口。与以前的循环模型不同,它们难以处理长的输入序列,带有注意力机制的变换器架构允许现代LLM将上下文作为一个整体考虑。根据这个上下文,模型为每个潜在的后续标记分配一个概率分数。具有最高概率的标记随后被选为序列中的下一个标记。在我们的例子中,在"天气很好,所以我决定"之后,下一个最佳标记可能是"去"。

然后,这个过程被重复,但现在上下文变成了"天气很好,所以我决定去",之前预测的标记"去"被添加到原始提示中。模型可能预测的第二个标记可能是"散步"。这个过程一直重复,直到形成一个完整的句子:"去散步"。这个过程依赖于LLM从大量文本数据中学习下一个最有可能的单词的能力。图1-5说明了这个过程。

简史:从GPT-1到GPT-4

在本节中,我们将回顾OpenAI GPT模型从GPT-1到GPT-4的演变历程。

GPT-1

在2018年中,就在Transformer架构问世仅一年后,OpenAI发表了一篇题为"通过生成式预训练改进语言理解"的论文,作者是Radford等人。在这篇论文中,该公司介绍了生成式预训练变换器,也被称为GPT-1。

在GPT-1之前,构建高性能NLP神经模型的常见方法依赖于监督学习。这些学习技术使用大量手动标记的数据。例如,在情感分析任务中,目标是对给定的文本进行分类,判断其是否具有积极或消极的情感,常见的策略要求收集成千上万个手动标记的文本示例来构建有效的分类模型。然而,对大量精心注释的监督数据的需求限制了这些技术的性能,因为生成这种数据集既困难又昂贵。

在他们的论文中,GPT-1的作者提出了一种新的学习过程,引入了一个无监督的预训练步骤。在这个预训练步骤中,不需要标记的数据。相反,模型被训练来预测下一个标记是什么。由于使用了允许并行化的Transformer架构,这个预训练是在大量数据上执行的。在预训练阶段,GPT-1模型使用了BookCorpus数据集,该数据集包含约11,000本未发表的书籍的文本。这个数据集最初是在2015年由Zhu等人在科学论文"将书与电影对齐:通过观看电影和阅读书籍实现故事式视觉解释"的论文中首次提出的,并最初在多伦多大学的一个网页上提供。然而,如今,原始数据集的官方版本已不再公开可访问。

GPT-1模型在各种基本完成任务上表现出了出色的性能。在无监督学习阶段,模型学会了预测BookCorpus数据集中文本的下一个项目。然而,由于GPT-1是一个小模型,它无法在没有微调的情况下执行复杂任务。因此,微调作为第二个监督学习步骤在一小部分手动标记的数据上执行,以使模型适应特定的目标任务。例如,在情感分析等分类任务中,可能需要在一小组手动标记的文本示例上重新训练模型以达到合理的准确性。这个过程允许修改在初始预训练阶段学到的参数,以更好地适应手头的任务。

尽管其相对较小的规模,GPT-1在仅使用少量手动标记的数据进行微调时,在几个NLP任务上表现出了卓越的性能。GPT-1架构由一个与最初的Transformer类似的解码器组成,该解码器于2017年首次引入,具有1.17亿个参数。这个第一个GPT模型为更强大的模型和更大的数据集以及更多参数的使用铺平了道路,以更好地利用Transformer架构的潜力。

GPT-2

在2019年初,OpenAI提出了GPT-2,这是GPT-1模型的规模扩大版本,将参数数量和训练数据集的大小增加了十倍。这个新版本的参数数量为15亿,训练数据集大小为40GB。在2019年11月,OpenAI发布了GPT-2语言模型的完整版本。

GPT-2表明,将更大的语言模型训练在更大的数据集上可以提高语言模型处理任务的能力,并在许多任务上胜过了现有技术。它还表明,甚至更大的语言模型可以更好地处理自然语言。

GPT-3

OpenAI于2020年6月发布了GPT的第三版(GPT-3)。GPT-2和GPT-3之间的主要区别在于模型的规模和训练数据的数量。GPT-3比GPT-2要大得多,具有1750亿个参数,使其能够捕捉更复杂的模式。此外,GPT-3是在更广泛的数据集上进行训练的,包括Common Crawl,这是一个包含来自数十亿网页和其他来源(如维基百科)的文本的大型网络存档。这个培训数据集包括来自网站、书籍和文章的内容,使GPT-3能够更深入地理解语言和上下文。因此,GPT-3在各种语言学任务上表现出了更好的性能。它还在生成的文本中表现出更高的连贯性和创造力。它甚至可以编写代码片段,如SQL查询,以及执行其他智能任务。此外,GPT-3消除了以前模型必须进行的微调步骤的需求。

然而,GPT-3存在一个问题,即最终用户提供的任务与模型在训练过程中看到的内容之间存在不一致。正如我们所见,语言模型是根据输入上下文来预测下一个标记的,这个训练过程不一定与最终用户希望模型执行的任务直接一致。此外,增加语言模型的大小并不一定会使它们更擅长遵循用户的意图或指令。此外,像GPT-3这样的模型是在互联网上不同来源的数据上进行训练的。尽管在选择来源方面进行了清理,但学习数据可能包含虚假或问题文本,包括种族主义文本、性别歧视文本、错误信息或虚假信息。因此,该模型有时可能会说错话,甚至说出有毒的话。在2021年,GPT-3模型的新版本发布,称为Instruct系列。与原始的GPT-3基础模型不同,Instruct模型通过强化学习与人类反馈进行了优化,这意味着它们使用反馈来学习和不断改进。这使得模型可以从人类指导中学习,同时使它们更加真实和 less 有害。

为了说明区别,我们输入提示"解释什么是时间复杂度",我们得到以下回答: 对于标准的GPT-3,我们得到的回答是:"解释什么是空间复杂度。解释什么是大O表示法。" 对于instructGPT-3模型,我们得到的回答是:"时间复杂度是衡量算法运行和完成任务所需时间的一种方式。通常使用大O表示法来表示,它衡量算法在执行操作的数量方面的复杂性。算法的时间复杂度很重要,因为它决定了算法的效率以及它如何随着更大的输入而扩展。" 我们可以看到,对于相同的输入,第一个模型无法回答问题(答案甚至很奇怪),而第二个模型则回答了问题。当然,可以通过标准的GPT-3模型获得所需的回答。然而,与指导模型不同,需要应用特定的提示设计和优化技巧才能从GPT-3模型获得所需的输出。这种技术被称为提示工程,将在接下来的章节中详细介绍。

从GPT-3到InstructGPT

OpenAI在科学论文《使用人类反馈训练语言模型遵循指令》(作者:Ouyang等人)中解释了Instruct系列是如何构建的。

Instruct系列的训练过程包括两个主要阶段,从GPT-3模型到Instructed GPT-3模型:监督微调(SFT)和强化学习从人类反馈中学习(RLHF)。在每个阶段中,前一个阶段的结果都会进行微调。也就是说,SFT阶段接收GPT-3模型并返回一个新模型,然后将这个新模型发送到RLHF阶段,以获取指导版本。

图1-6来自OpenAI的科学论文,详细说明了整个过程。

我们将逐一介绍这些阶段。

在SFT阶段,原始的GPT-3模型通过简单的监督学习进行微调(见图1-6中的步骤1)。OpenAI拥有由最终用户创建的提示集合。该过程从可用提示集合中随机选择一个提示开始。然后,要求一名人类(称为标记者)撰写对这个提示的理想答案的示例。这个过程重复数千次,以获取由提示和相应的理想响应组成的监督训练集。然后使用这个数据集对GPT-3模型进行微调,以使其对用户请求给出更一致的答案。生成的模型被称为SFT模型。

RLHF阶段分为两个子步骤。首先,建立一个奖励模型(RM)(见图1-6中的步骤2),然后使用RM进行强化学习(见图1-6中的步骤3)。

RM的目标是自动为提示的响应打分。当响应与提示中所示内容匹配时,RM得分应该很高;当不匹配时,得分应该很低。为构建RM,OpenAI首先随机选择一个问题,并使用SFT模型生成若干可能的答案。正如后面将要看到的,通过一个叫做温度的参数,可以使用相同的输入提示生成许多不同的响应。然后要求一名人类标记者根据与提示的匹配度和响应的有害性等标准对这些响应进行排名。在多次运行此过程后,使用一个数据集对SFT模型进行微调以用于评分。这个RM将用于构建最终的InstructGPT模型。

训练InstructGPT模型的最后一步涉及强化学习,这是一个迭代过程。它从一个初始的生成模型开始,比如SFT模型。然后选择一个随机提示,模型预测一个输出,RM对其进行评估。根据获得的奖励,生成模型相应地进行更新。这个过程可以在没有人类干预的情况下无数次地重复,为使模型性能更好而自动适应提供了更高效的方法。

InstructGPT模型在生成输入提示中的准确完成方面更为出色。OpenAI建议使用InstructGPT系列而不是原始系列。

GPT-3.5、Codex和ChatGPT

在2022年3月,OpenAI推出了GPT-3的新版本。这些新模型可以编辑文本或插入内容到文本中。它们是通过截止到2021年6月的数据进行训练的,并被描述为比以前的版本更强大。到2022年11月底,OpenAI开始将这些模型称为GPT-3.5系列的一部分。

OpenAI还提出了Codex模型,这是一个在数十亿行代码上进行微调的GPT-3模型,它驱动了GitHub Copilot自动完成编程工具,以协助许多文本编辑器的开发人员,包括Visual Studio Code、JetBrains,甚至Neovim。然而,OpenAI在2023年3月宣布废弃了Codex模型。相反,OpenAI建议用户从Codex切换到GPT-3.5 Turbo或GPT-4。与此同时,GitHub发布了基于GPT-4的Copilot X,提供比以前版本更多的功能。

在2022年11月,OpenAI推出了ChatGPT作为一个实验性的对话模型。该模型经过微调以在互动对话方面表现出色,使用了类似于图1-6中所示的技术。ChatGPT源自GPT-3.5系列,这为其开发提供了基础。

GPT-4

在2023年3月,OpenAI发布了GPT-4。我们对这个新模型的架构知之甚少,因为OpenAI提供了很少的信息。这是迄今为止OpenAI最先进的系统,应该能够生成更安全和有用的答案。该公司声称GPT-4在高级推理能力方面超越了ChatGPT。

与OpenAI GPT家族中的其他模型不同,GPT-4是第一个具有多模态能力的模型,能够接收文本和图像。这意味着GPT-4会考虑上下文中的图像和文本,用于生成输出句子,这使得可以在提示中添加图像并提问相关问题。需要注意的是,截止到本书写作时,OpenAI尚未公开提供此功能。

这些模型还经过了各种测试,GPT-4在测试中表现出色,比ChatGPT在测试者中的百分位得分更高。例如,在Uniform Bar Exam中,ChatGPT得分为第10百分位,而GPT-4得分为第90百分位。国际生物奥林匹克竞赛也是如此,ChatGPT得分为第31百分位,而GPT-4得分为第99百分位。这种进展非常令人印象深刻,特别是考虑到它是在不到一年的时间内取得的。

LLM使用案例和示例产品

OpenAI在其网站上包含许多令人鼓舞的客户故事。本节探讨了其中一些应用、使用案例和产品示例。我们将发现这些模型可能如何改变我们的社会,为企业和创意开辟新的机会。正如您将看到的,许多企业已经在使用这些新技术,但还有更多的创意空间。现在轮到您了。

Be My Eyes

自2012年以来,Be My Eyes已经为数百万盲人或视力有限的人群创建了技术。例如,它拥有一款连接志愿者和需要帮助的盲人或视力受限人士的应用程序,帮助他们完成日常任务,如识别产品或在机场导航。在应用程序中只需点击一次,需要帮助的人就会被志愿者联系,通过视频和麦克风共享,志愿者可以帮助这个人。

GPT-4的新多模态能力使其能够处理文本和图像,因此Be My Eyes开始开发基于GPT-4的新虚拟志愿者。这个新的虚拟志愿者旨在达到与人类志愿者一样的帮助和理解水平。

"全球无障碍性的影响深远。在不久的将来,盲人和视力有限的人群将利用这些工具,不仅满足各种视觉解释需求,还将提高他们生活中的独立性," Be My Eyes的CEO迈克尔·巴克利说。

在撰写本文时,虚拟志愿者仍处于测试版本。要获得访问权限,您必须在应用程序中注册并加入等待名单,但初步的来自测试者的反馈非常积极。

Morgan Stanley

摩根士丹利是美国的一家跨国投资银行和金融服务公司。作为财富管理领域的领先者,摩根士丹利拥有数十万页的知识和见解内容库,涵盖了投资策略、市场研究与评论以及分析师意见。这大量的信息分布在多个内部网站上,主要以PDF格式存在。这意味着顾问必须搜索大量文件以找到他们的问题的答案。正如您所能想象的,这个搜索过程可能会很漫长和繁琐。

该公司评估了如何利用GPT的综合研究能力来发挥其知识资产。由此产生的内部开发模型将为一款聊天机器人提供动力,该机器人可以对财富管理内容进行全面搜索,并高效地解锁摩根士丹利积累的知识。这样,GPT-4提供了一种以更容易使用的格式分析所有这些信息的方法。

Khan Academy

可汗学院(Khan Academy)是一家总部位于美国的非营利教育组织,由Sal Khan于2008年创立。其使命是创建一套免费在线工具,以帮助全球教育学生。该组织提供数千门面向各个年龄段学生的数学、科学和社会研究课程。此外,该组织通过视频和博客制作短课程,最近还推出了Khanmigo。

Khanmigo是由GPT-4提供支持的新型AI助手。Khanmigo可以为学生做很多事情,如指导和鼓励他们,提问问题,并为他们准备考试。Khanmigo旨在成为一款友好的聊天机器人,帮助学生完成他们的课程作业。它不会直接为学生提供答案,而是引导他们进行学习过程。Khanmigo还可以通过帮助教师制定教案、完成行政任务以及创建课程书等方式来支持教师。

"我们认为GPT-4正在教育领域开辟新的领域。很多人长期以来一直梦想拥有这种技术。这是一种变革,我们计划以负责任的态度进行测试,以探索它是否可以有效用于学习和教学,"可汗学院的首席学习官Kristen DiCerbo表示。

截止到本文撰写时,Khanmigo的试点计划仅对特定人员开放。要参加该计划,您必须被放置在等待名单上。

Duolingo

Duolingo是一家总部位于美国的教育技术公司,成立于2011年,它开发的应用程序被数百万想要学习第二语言的人使用。Duolingo用户需要理解语法规则来学习一门语言的基础知识。他们需要进行对话,最好是与母语人士交流,以理解这些语法规则并掌握语言。这对每个人来说都不是可能的。

Duolingo通过使用OpenAI的GPT-4增加了产品的两个新功能:角色扮演(Role Play)和解释我的答案(Explain My Answer)。这些功能可在名为Duolingo Max的新订阅级别中使用。有了这些功能,Duolingo填补了理论知识与语言实际应用之间的鸿沟。多亏了LLMs,Duolingo允许学习者沉浸在现实世界情景中。

角色扮演功能模拟与母语人士的对话,使用户能够在各种情境中练习语言技能。解释我的答案功能提供有关语法错误的个性化反馈,促进对语言结构的更深入理解。

"我们希望将深度集成到应用程序中并利用我们的学习者喜爱的Duolingo的游戏化特点的AI功能,"Duolingo的首席产品经理Edwin Bodge表示。

将GPT-4集成到Duolingo Max中不仅增强了整体学习体验,还为语言习得提供了更有效的途径,特别是对于那些无法接触母语人士或沉浸环境的人来说。这种创新方法应该会改变学习者掌握第二语言的方式,并有助于取得更好的长期学习成果。

Yabble

Yabble是一家市场研究公司,利用人工智能来分析消费者数据,以向企业提供可操作的见解。其平台将原始的非结构化数据转化为可视化数据,使企业能够根据客户需求做出明智的决策。

将GPT等先进的人工智能技术集成到Yabble的平台中增强了其消费者数据处理能力。这种增强使得对复杂问题和答案的更有效理解成为可能,使企业能够根据数据获得更深入的见解。因此,组织可以通过根据客户反馈识别改进的关键领域,做出更明智的决策。

"我们知道,如果我们想要扩展我们现有的服务,就需要人工智能来承担很多繁重的工作,这样我们就可以在其他地方花费时间和创造性能量。OpenAI完全符合我们的需求,"Yabble的产品负责人本·罗(Ben Roe)表示。

Waymark

Waymark提供一个用于创建视频广告的平台。该平台利用人工智能帮助企业轻松创建高质量的视频,无需技术技能或昂贵的设备。

Waymark已将GPT集成到其平台中,这显著改进了平台用户的脚本编写过程。这种由GPT驱动的增强功能使平台能够在几秒钟内为企业生成定制脚本。这使用户能够更多地专注于他们的主要目标,因为他们花费更少的时间来编辑脚本,而更多时间来创建视频广告。因此,将GPT集成到Waymark的平台中提供了更高效和个性化的视频创建体验。

Waymark创始人Nathan Labenz表示:"在过去的五年里,我尝试了所有可用的AI产品,但除了GPT-3之外,没有找到能够有效总结企业的在线足迹,更不用说撰写有效的营销文案了。"

Inworld AI

Inworld AI提供了一个开发者平台,用于创建具有独特个性、多模式表达和情境意识的AI角色。

Inworld AI平台的主要用例之一是视频游戏。将GPT集成为Inworld AI角色引擎的基础使得视频游戏角色的开发更加高效和迅速。通过将GPT与其他机器学习模型结合使用,该平台可以为AI角色生成独特的个性、情感、记忆和行为。这个过程使游戏开发者能够专注于叙事和其他主题,而无需花费大量时间从头开始创建语言模型。

Inworld的首席产品官兼联合创始人Kylan Gibbs表示:"有了GPT-3,我们有更多的时间和创造力来投资于支持下一代非玩家角色(NPCs)的专有技术。"

警惕AI幻觉:限制与考虑事项

正如您所见,LLM通过根据给定的输入提示逐字逐句地预测下一个单词(或标记)来生成答案。在大多数情况下,模型的输出是相关且完全可用于您的任务,但在使用语言模型时要谨慎,因为它们可能会提供不连贯的答案。这些答案通常被称为幻觉。AI幻觉是指当AI给出一个自信满满的但错误的答案或涉及虚构事实时发生的情况。这可能对依赖GPT的用户造成危险。您需要仔细核对并批判性地审查模型的回应。

考虑以下示例。首先,我们要求模型进行一个简单的计算:2 + 2。正如预期的那样,它回答4。所以答案是正确的。太好了!然后,我们要求它进行更复杂的计算:3,695 × 123,548。尽管正确答案是456,509,860,但模型却非常自信地给出了错误答案,您可以在图1-7中看到。当我们要求它检查和重新计算时,它仍然给出错误答案。

尽管如我们将看到的,您可以使用插件系统向GPT添加新功能,但GPT默认情况下不包括计算器。为了回答我们的问题,即2 + 2等于多少,GPT逐个生成每个标记。它之所以能正确回答,可能是因为在用于其训练的文本中经常出现了"2 + 2等于4"的内容。它实际上并没有进行计算 - 它只是文本的补充。

请注意,ChatGPT的结果接近正确答案,而不是完全随机的。这是其算法的有趣副作用:尽管它没有数学能力,但仅通过语言方法就可以给出一个接近的估计。

在前面的示例中,ChatGPT犯了一个错误。但在某些情况下,它甚至可能是故意欺骗的,就像图1-8中所示。

ChatGPT开始声称它无法访问互联网。然而,如果我们坚持不懈,会发生一些有趣的事情(请参见图1-9)。

ChatGPT现在暗示它确实访问了链接。然而,目前绝对不可能。ChatGPT明显让用户以为它具有它实际上没有的能力。顺便说一下,正如图1-10所示,图像中的斑马不止三只。

总之,我们强烈建议在创意应用中使用基于纯GPT的解决方案,而不是在那些真相至关重要的问答应用中使用,比如医疗工具。对于这类用例,正如您将看到的那样,插件可能是一个理想的解决方案。

用插件和微调优化GPT模型

除了简单的完成功能之外,还可以使用更高级的技巧来进一步利用OpenAI提供的语言模型的功能。本书将介绍其中的两种方法:

  1. 插件
  2. 微调

GPT存在一些限制,例如在计算方面。正如您所见,GPT可以正确回答简单的数学问题,如2 + 2,但可能在更复杂的计算问题上遇到困难,如3,695 × 123,548。此外,它无法直接访问互联网,这意味着GPT模型无法获取新信息,只能限于它们的训练数据。对于GPT-4,最后一次知识更新发生在2021年9月。OpenAI提供的插件服务允许模型与第三方开发的应用程序连接。这些插件使模型能够与开发人员定义的API进行交互,这个过程可能会极大地增强GPT模型的功能,因为它们可以通过各种操作访问外部世界。

对于开发人员来说,插件可能会打开许多新的机会。考虑到未来,每家公司都可能希望为LLM拥有自己的插件。可以有类似于智能手机应用商店中的插件集合。可以通过插件添加的应用程序数量可能是巨大的。

在其网站上,OpenAI表示插件可以让ChatGPT执行以下操作,例如:

  • 检索实时信息,如体育比分、股票价格、最新新闻等
  • 检索基于知识的信息,如公司文档、个人笔记等
  • 代表用户执行操作,如预订飞机票、订购食物等
  • 执行准确的数学计算

这只是一些用例示例;您可以自行发现新的用例。

本书还将探讨微调技术。正如您将看到的,微调可以提高现有模型在特定任务上的准确性。微调过程涉及在特定的新数据集上重新训练现有的GPT模型。这个新模型专为特定任务而设计,这个额外的训练过程允许模型调整其内部参数,以学习给定任务的细微差别。结果微调后的模型应在其微调的任务上表现更好。例如,对金融文本数据进行微调的模型应该能够更好地回答该领域的查询并生成更相关的内容。

总结

LLMs(大型语言模型)已经走过了很长的发展历程,从简单的n-gram模型发展到了RNNs、LSTMs和先进的基于transformer的架构。LLMs是计算机程序,可以处理和生成类似人类语言的文本,利用机器学习技术来分析大量的文本数据。通过使用自注意力机制和交叉注意力机制,transformer架构极大地增强了语言理解能力。

本书探讨了如何使用GPT-4和ChatGPT,因为它们提供了先进的上下文理解和生成功能。使用它们构建应用程序超越了传统的BERT或LSTM模型的范围,提供了人类般的交互体验。

自2023年初以来,ChatGPT和GPT-4在自然语言处理领域展现出了卓越的能力。因此,它们为各个行业的人工智能应用的迅速发展做出了贡献。已经存在不同的用例,从诸如Be My Eyes的应用到像Waymark这样的平台,这些都证明了这些模型改变了我们与技术互动方式的潜力。

重要的是要牢记使用这些LLMs存在潜在风险。作为将使用OpenAI API的应用程序开发者,您应确保用户了解错误风险并能验证由AI生成的信息。

下一章将为您提供使用OpenAI作为服务提供的模型的工具和信息,并帮助您成为我们今天正在经历的这场不可思议的转变的一部分。

相关推荐
Schwertlilien几秒前
图像处理-Ch7-图像金字塔和其他变换
图像处理·人工智能
凡人的AI工具箱7 分钟前
每天40分玩转Django:Django类视图
数据库·人工智能·后端·python·django·sqlite
千天夜13 分钟前
深度学习中的残差网络、加权残差连接(WRC)与跨阶段部分连接(CSP)详解
网络·人工智能·深度学习·神经网络·yolo·机器学习
凡人的AI工具箱17 分钟前
每天40分玩转Django:实操图片分享社区
数据库·人工智能·后端·python·django
小军军军军军军20 分钟前
MLU运行Stable Diffusion WebUI Forge【flux】
人工智能·python·语言模型·stable diffusion
诚威_lol_中大努力中43 分钟前
关于VQ-GAN利用滑动窗口生成 高清图像
人工智能·神经网络·生成对抗网络
中关村科金1 小时前
中关村科金智能客服机器人如何解决客户个性化需求与标准化服务之间的矛盾?
人工智能·机器人·在线客服·智能客服机器人·中关村科金
逸_1 小时前
Product Hunt 今日热榜 | 2024-12-25
人工智能
Luke Ewin1 小时前
基于3D-Speaker进行区分说话人项目搭建过程报错记录 | 通话录音说话人区分以及语音识别 | 声纹识别以及语音识别 | pyannote-audio
人工智能·语音识别·声纹识别·通话录音区分说话人
DashVector1 小时前
如何通过HTTP API检索Doc
数据库·人工智能·http·阿里云·数据库开发·向量检索