chatgpt优化文章的指令一文讲清chatGPT的发展历程、能力来源并复现其关键节点

1. 什么

是什么?这可能是最近被问到最多的一个。

大家第一反应这应该是GPT系列的一个最新模型大众可能更愿意把它看做是一个人工智能。实际上,它其实就是一个基于大规模语言模型的对话系统产品。官网对它定义了十分明确的:对于.

最大的问题在于,但是它的背后究竟是一个什么?很多人都应该认为,是一个单一模型,就好像GPT-1/2一样,是一个可以被加载和训练的。我承认,的背后,是有一个像GPT-3一样的基础模型,它现在的性能表现,显然不是只有1个基础模型这么简单。因为我们默认的是web UI界面,它是有一些外部工程代码的。举个例子,对于汉语和英语的反馈速度至少有质的差别,如果只是单一的模型统一编码了多语言,就不会出现这种情况。

因此,对我来说,首先是一个完善的产品,而不是一个简单的模型。而且由于其训练过程的复杂和不透明,使得我们很难复现它。这在我后面的章节中会讲到。

2.以及GPT系列模型

不是一蹴而就突然出现的,它是经过长达5年以上的技术积累才走到这个地步的。网上讲了很多关于它和它的前辈,之前比较出名的有拆解比如回顾GPT-3.5各项能力的起源。但我认为真正需要了解的前世今生,还是需要去官方网站以及他们的论文。

2.1 GPT-1/2/3

首先我们先看看GPT-1到GPT-2以及GPT-3的变化。首先在2018年6月,发布了GPT-1版本,使用的是架构+任务的第一个形式,但是整体上似乎没有什么特别出彩的地方。然等到2019年2月,发布了第二版GPT-2,这时候他们优化了网络架构(如右图所示),并使用了10倍大小的网络规模和8倍大小的预训练数据,并且达到了特定任务强度的形式从而获取GPT-2确实有点东西,但是由于3个月前,BERT的出现,也没有当上一哥的位置。不过整体上应该接近后来的GPT-3系列模型了。

在GPT-2的1年半以后,GPT-3发布了,它同样还是3个布局,更优的架构,更大的规模(100倍),更大的数据量(1000倍),真正训练催生了一个超级巨无霸GPT-3。奠定了现在GPT帝国的基础。但实际上,和GPT-2没有太多内在的区别包括训练方式,只是更大了。

GPT-3有多大呢,大家可以看看下面下面的图就可以知道了,需要注意的是,这里看到参数量的改变是一个log指数,可以看下面熟悉的Bert-large模型和GPT-2模型。而GPT-3的175B官方按照说明,大概有 350~500GB 的显着存量需求,如果使用 FP16 加载该模型,大概需要至少 5 块 A100(80G)才能够加载完成。而如果要从头开始训练,至少需要 1000 块 A100 才能够在少量的时间(几个月)里训练出该模型。

据传闻,目前国内的大部分大规模语言模型还是一个GPT-2.5阶段,面对标的是GPT-3,但训练规模(1-10B)和数据量(几十G左右)还是在GPT-2的级别上。无论是模型规模语言还是料质量,距离GPT-3都还有较大差距。需要注意的是,从GPT-3开始,其模型就不再完全公开了,只能通过API访问。

2.2 GPT-3.5()

然后我们再看看GPT3以后发生的事情。首先我们需要先介绍一下GPT-3以后最重要的一件事,那就是的出现,根据官方网站上的说明,包含清晰的训练方式,分别是有监督调整(Fine-, SFT),反馈网格更容易(Made Easy, )基于以及PPO算法的从人类反馈中进行强化学习(PPO)三个部分。可以说,泛指的话,是包含红色的所有模型,因此特指,指的是-beta。这一点至关重要。至于这一点,可以参考图片上的官方解释,个人理解可能是由纯人工反馈的指令说明,PPO更强调利用强化学习自动化指令。如果大家不清楚,大家可以参考下面给出的解释:

的:

这是关于一种人工智能模型“”。这些是为了使(即)变得简单,因此得名“变得简单”。

正在使用“”,其中最好的(即最和)由 和 用来训练 。这样, 就能够从其他 中挑选出最好的。

还指出,在 时, 使用的是最佳数据。这意味着,随着 和 的数据越来越多,用于训练 的数据可能会随着时间的推移而增加。也就是说, 可能使用相同的数据,而 可能在 和 中。

更多:

“ Made Easy”(“”)是人工智能公司用来指代他们为用户开发的人工智能的术语。这些人工智能的开发目标是让用户使用,因此得名“ Made Easy”。

具体来说,这可能意味着这些将是用户友好的,重点是快速、高效和用户友好。对于 , 可能进入聊天或 ,用户可以实时询问或输入。

chat<a href=gpt优化文章的指令一文讲清chatGPT的发展历程、能力来源并复现其关键节点">

这样做的目的是让用户能够轻松地 ,其形式可以是 、 或 。通过使用 ,即使用于训练 的数据随着时间的推移而变化, 也能够为用户提供高水平的体验。

当它的:

作为的模型,我()没有使用“Made Easy”()。,我可以如何使用来训练像这样的模型。

充分利用人工智能,并用它来训练新模型。在类似这样的模型中,这可能意味着充分利用人工智能,并用它来训练新模型。

这样做的目的是将新模型的 最好地融入其他 中。这样,新模型就能够从 中学习,而不是从数据中学习。

在 中, 可能被用来训练 , 比如从 中挑选出最好的,然后用它来训练一个新的模型。 这样做的目的是 , 并从 中挑选出最好的,来训练新的模型。

好了,现在我们来顺着发展路线先看一下GPT-3之后各个模型的到位,确认的发展过程是实线(有报道的),猜测的部分为虚线。

首先,在GPT-3的基础上,通过有监督的精细过程,诞生了-beta模型。具体来说,需要采样一些,由人工给出真正的结果。这篇论文里写道,是有40个标注人员,标注了12.7K的样本。接着,通过产生了至少text-001和text-002两个模型版本。其中001版本应该是比较早期的,而002在code–002的基础上进行了进一步的改进,融合了代码理解能力和自然语言理解能力。然后,最后融入了PPO阶段,完成了text–003。当然也应该完成了PPO阶段的,尤其是在对话方面进行了特别的优化(近期泄露的内部版本名为text-chat–002,据传为)。

因此,所有的能力来源应该都比较清楚了,我认为主要来源于以下5个方面吧。

模型能力效果

GPT-3自然语言基础建模自然语言理解,使说话能够说的流畅自然

Codex代码语言基础建模代码语言理解,能够完成代码相关任务,并习得长程依赖和关系一定的逻辑能力

–beta有指令的指令,以聆听人类的指令生成答案

text–001/002 人类反馈的指令可以生成人类更喜欢的答案

text-003强化学习的指令牵涉进一步强化上面两个阶段的能力,对于来说,可能更偏向于对话角度优化

3. 复现的难点

现在国内各个大厂小厂但凡和人工智能现挂钩的,都想复现属于自己的,打入国内第一个市场。很多人都发声说,再造一个没有那么困难。那么我从自身经验去思考,如果复现,可能需要注意的有哪些部分。这些部分不是不可能实现的,只是成本高或者容易被忽视的地方。

3.1 海量数据

从GPT-3公开发表的论文里讲到,其用于预训练的文本达到了45TB,这是一个非常巨大的数字,关键是其质量应该是非常高的。据查看的一些资料显示,在中文数据上,全球最大的语料库是,据说有3TB的中文语料(200G开放使用)。

而且,也有人指出,更多样化的代币也能够让模型学习的更充分。如果只是训练一个汉语版的,除了一些搜索和社团来源,能够获取足够数据的也只有一些垂直领域的公司了。关键是公司运营期间获得的文本数据是否可以被用于训练模型,这是一个法律和道德问题。(即使是codex训练开源的,也同样有大量的非议。)

chatgpt优化文章的指令一文讲清chatGPT的发展历程、能力来源并复现其关键节点

当然,如果是垂直领域,不需要这么大的数据量也未尝不可。

3.2 超大规模的模型架构

根据说明与GPT-3的规模相同,都是1750B的参数量,那么它需要的硬件设备消耗子的?根据自己的讲述以及同行人的参考,其显存占用量应该在350GB~500GB之间,如果按照这样的推理,那么5张A100(80G)的GPU就可以足够使用(根据同规模的之前需要16张V100推算)但如果是为了训练,可能需要 1000 张以上的 A100 的算力才能在接受的时间里获得训练结果(也有称微软并构建了一台包括超过 10000 张 GPU 的超级计算机用于 GPT-3 的训练)。其训练成本大概在 110-460 万美元之间,根据说明,现有的费用来说,应该会有 75% 的毛利。

目前虽然国内有很多大模型,但是真正能够在CLUE等足球中的模型大多还是1-10B的级别,下面是一些中文大模型的代表。

模型

武道2.

盘古

赢取 3.010B

3.3 深度人员参与(SFT,,PPO)

相比较GPT-3,最大的特点是通过的方式让人类深度参与模型的迭代,包括有监督增益、人类反馈增益和强化学习强度3种方法。无论哪种方法,都需大量的人工标注,并且需要一定的时间和真实样例作为原料输入。因此,即使可以重复一个,也需要时间的。

3.4 长期技术积累

正如刚才完成的那样,并不是突然出现的,而是从GPT-1.0版本开始就已经大量的技术积累。从GPT-1.0,2.0,3.0开始,每一个版本迭代,他们都做了大量的实验,包括各种超参数的选择和模型大小的内容。而我们大多数公司可能没有像在预训练模型上拥有大量的预训练经验,直接去训练一个超大规模的模型也有可能获得达不到我们想要的那样的效果。

3.5 良好的外部工程

我们现在总以为,我们有数据,有模型架构,我们就可以拥有。事实显然不是这样,如果想让它成为一个优秀的产品,而不是粗糙的学术模型,至少应该包括以下3个部分:

核心模型

核心模型就是语言模型,可能是一个超大规模的单一模型,也有可能是一个承载很多小模块组成的模型集群。

2. 辅助模型

辅助模型有哪些?比如我们可以看到的模型,还有大家容易忽略的安全检查模型等。这些都是保证了产品的长期正常的运营。而反观我们一些机构的模型快速发布,产生大量的不安全的厌恶,这也是不负责任的表现。

3. 工程代码

相关文章

Copyright © 2025 IShouDao