01|洞察本质:从工程学角度看 ChatGPT 为什么会崛起

你好,我是悦创。
2022 年 11 月底,OpenAI 发布了 ChatGPT,2023 年 1 月注册用户超过一亿,成为历史上增长最快的应用,上一个纪录保持者是 TikTok,注册用户超过一亿用时 9 个月。2023 年 3 月开始,ChatGPT 燃爆中国互联网界。
实际上国内外同一时期搞大模型的团队很多,为什么 ChatGPT 会突然火起来?还有在 ChatGPT 发布后,为什么各个大厂在短时间内相继发布大模型产品?比如 3 月百度发布文心一言,4 月阿里云发布通义千问,5 月科大讯飞发布星火认知大模型等等。

我们最容易想到的原因是,OpenAI 在自然语言处理(NLP)方面取得了突破性的进展,这是技术层面看到的。实际上,ChatGPT 背后包含了一系列的资源整合,包括技术、资金、大厂背书等等,以及多个国际巨头的通力合作,比如 OpenAI、微软、NVIDIA、GitHub 等。所以说,ChatGPT 不仅仅是技术上的突破,更是工程和产品的伟大胜利!
那么 ChatGPT 具体是如何赢得这场胜利的呢?我们一一来看。
1. NLP 技术突破:强势整合技术资源
基于 Transformer 架构的语言模型大体上分为两类,一类是以 BERT 为代表的掩码语言模型(Masked Language Model,MLM),一类以 GPT 为代表的自回归语言模型(Autoregressive Language Model,ALM)。OpenAI 的创建宗旨是:创建造福全人类的安全通用人工智能(AGI),所以创立之初就摒弃了传统 AI 模型标注式的训练方式,因为可用来标注的数据总是有限的,很难做得非常通用。那么为了实现 AGI,OpenAI 在技术上到底做对了什么呢?
1.1 基于自回归的无监督训练
GPT 系列的模型一直走的是和 BERT 不一样的线路,早些年压力巨大,毕竟 BERT 是 Google 发布的,非常权威。但是 OpenAI 一直认为自回归模型训练潜力更大,尤其在 GPT-2 引入 zero-shot 后,更加有信心了。
按照人类语言的习惯,语言本身就有先后顺序,而且我们日常说话也是下文依赖上文。所以有人猜测,自回归语言模型代表了标准的语言模型,利用上文信息预测下文,这比传统 AI 预测更加复杂,但是上限更高,更有望通向 AGI,这正是 OpenAI 的愿景。尽管在 GPT-1 和 GPT-2 的探索中没有取得压倒性的效果,但确实验证了标准语言模型在 zero-shot 等方面的潜在能力。
无监督自回归的训练方式,使 GPT 模型可以接受大量文本数据,所以后面有了 GPT-3,1750 亿的参数规模,使 GPT-3 直接问鼎当时最大的模型,GPT-3 使用了大约 45TB 的文本数据,一次训练费用近 460 万美元,在当时,相比上一代模型 GPT-2,效果已经非常好了,这也是人们所讲的大力出奇迹。
但是,我们现在来看这个问题,GPT-3 发布时间大概是 2020 年 3 月,当时的 GPT-3 还不具备直接和人类对话的能力。而 ChatGPT 所使用的模型是 GPT-3.5,爆火时间在 2022 年年底到 2023 年 3 月,期间将近 2 年的时间,OpenAI 在做什么呢?答案是他们在想办法让 GPT 模型可以优雅地和人类进行对话。
1.2 与人类意识对齐(Alignment)
我们知道,人类是有感情的,很多事物是有极限的,比如人再怎么能吃也不可能一顿饭吃 100 个馒头,万一大模型输出的内容有这类意识,那么肯定是不合理的,所以要进行微调对齐。
GPT-3 和 GPT-3.5 其实是两个不同的系列,使用过 OpenAI API 的人应该知道,还有几个细化的模型,比如 code-davinci、text-davince 系列。顾名思义,code-davince 就是 OpenAI 另一个产品 codex 使用的模型,在 text-davince-001 的基础上使用源代码进行训练,产生了 code-davinci-002 模型(codex)。再后来在 code-davinci-002 模型基础上,基于有监督的指令微调,产生了 text-davinci-002,最后在 text-davinci-002 模型基础上,使用 RLHF,产生了 text-davinci-003 和 ChatGPT 模型。演进过程如图所示:

GPT-3 经过充分训练,但是依然不是一个适合与人类进行对话的模型,所以从 GPT-3 到 GPT-3.5 再到 InstructGPT 和 ChatGPT,参数规模并没有太大变化,主要是经过了各种技术的微调,说白了就是去适配人类情景。其中,最突出的就是 RLHF。RLHF 就是 Reinforcement Learning From Human Feedback(人类反馈强化学习)的简称。关于 RLHF 的详细介绍,我们会放在后面的章节中。
1.3 突现能力(Emergent Ability)
突现能力是指大语言模型展现出来的特有的强大能力,比如复杂推理、思维链等。这些是 NLP 领域一直追求的能力,在大模型出现后,这些能力也随之浮现出来。我们举一个简单的例子。
问题:小明每天早饭吃2个馒头,他一个月会吃掉多少包馒头?
一个月按30天说,共吃掉60个馒头,每包5个馒头的话,总共12包。
答案:12
这个推理看着简单,实际上对于 AI 来说有一定的难度,因为语言和数学混在一起了。在早期 GPT-3 模型上进行类似的推理,准确率并不高,低于 40%,后来在 code-davinci-002 上进行推理,准确率能达到 80% 以上。为什么性能会有这么大的提升?
很明显原因不是模型规模,因为 code-davinci-002 在规模上并没有扩大,唯一能解释的就是 code-davinci-002 是基于代码进行训练的,这些突现能力是大模型经过大量代码训练后展现出来的能力。也有人说,面向过程的编程跟人类逐步解决任务的过程很类似,面向对象编程跟人类将复杂任务分解为多个简单任务的过程很类似。所以有人认为,代码训练和思维链及复杂推理有很强的相关性,不过到目前为止没有非常确定的证据可以证明这一点。
我们可以总结一下。
- 模型不是越大越好。论参数,GPT-3 的 1750 亿不是参数最大的模型,比如,微软和英伟达联合开发的 Megatron-Turing 模型拥有超过 5000 亿个参数,但是在性能方面并不是最好的,因为模型未经充分地训练。
- RLHF 也不是最早用在 GPT 上的,却在恰当的时机用到了 ChatGPT 身上。
- 在语言模型上使用大量代码进行训练,只有 codex 这么做了。
所以,ChatGPT 在技术上的突破可以理解为:
放眼望去,全球仅此一家!那这么多技术叠加在一起,怎么才能“大力出奇迹”呢?答案就是进行超大规模预训练。
2. 超大规模数据集:超过 40T 的文本数据
大模型训练首先需要搞定高质量数据集,我们分两个点去考虑。
首先,我向你介绍下基础模型 GPT-3 的训练数据集。GPT-3 模型具有 1750 亿个参数,训练数据集大约 500B 个 token(1B=1 billion,也就是 10 亿)。下面是训练数据大概的组成结构:

原始大约 45T 的纯文本数据,经历过滤后,大概是 750G 的高质量文本数据。
我们再来看下 ChatGPT 的训练数据。ChatGPT 属于 GPT-3.5 系列,官方并没有明确说明这个模型的参数规模,所以网上看到的大部分的数据都是猜测,有人说 15 亿,也有人说 20 亿甚至 1500 亿。但是大概率,ChatGPT 的参数规模是小于 GPT-3 的,其训练数据基于大量对话型数据进行指令微调,典型训练数据如下:
- Persona-Chat 的数据集:专门用于训练 ChatGPT 等会话式 AI 模型。由两个人类参与者之间的超过 160,000 条对话组成,每个参与者都被分配了一个独特的角色来描述他们的背景、兴趣和个性。这使得 ChatGPT 能够学习如何生成个性化且与对话的特定上下文相关的响应。
- 康奈尔电影对话语料库:包含电影脚本中角色之间对话的数据集。包括 10,000 多个电影角色对之间的 200,000 多次对话,涵盖各种主题和类型。
- Ubuntu 对话语料库:寻求技术支持的用户与 Ubuntu 社区支持团队之间多轮对话的集合。它包含超过 100 万个对话,使其成为用于对话系统研究的最大的公开数据集之一。
- DailyDialog:各种主题的人与人对话的集合,从日常生活对话到有关社会问题的讨论。数据集中的每个对话都由几个回合组成,并标有一组情感、情绪和主题信息。
除了这些数据集之外,ChatGPT 还接受了互联网上大量非结构化数据的训练,包括网站、书籍和其他文本源。这使得 ChatGPT 能够从更一般的意义上了解语言的结构和模式,然后可以针对对话管理或情感分析等特定应用进行微调。
有这么多数据了,接着就要进行预训练了。下面这一步卡住了大部分大模型厂商,那就是计算资源。对于 OpenAI 这种创业公司而言,无疑是很大的困难,那他们是怎么解决的呢?没错,找金主爸爸。
3. 找对了金主爸爸
OpenAI 做对了一件非常重要的事儿,那就是找钱,而且还是找大钱,动辄几亿美元的投入。GPT-3 的单次训练成本高达 460 万美元。在前景未知的情况下,这么大的投入是非常难的。找钱成了 OpenAI 非常重要的事情,为了找钱,OpenAI 从开源转为闭源。
实际上,早期 OpenAI 是开源的,创办宗旨就是创建通用人工智能,造福人类,但是大模型训练需要大量的计算资源和数据,这是实打实需要资金投入的,所以 OpenAI 由开源转为闭源,设计了一种商业模式来吸引投资人,并吸引大量资金,其中最主要的就是微软。下面我向你介绍下这种商业模式。
OpenAI 母公司是 OpenAI Inc,属于非营利性质组织,这种情况下资本无法进入,所以后来成立了一家子公司,叫 OpenAI LP,现在我们常说的 OpenAI,其实就是 OpenAI LP,这是一家纯粹的商业化公司,这家公司设置了最高 100 倍的回报上限,以此来权衡盈利和非盈利属性,也可以叫做“有限盈利”,既迎合资本家利益,也看似符合母公司非盈利组织的创建初衷。

通过这种股权结构,成功获得微软累计超过 100 亿美金的投资,这里不得不说,微软为 OpenAI 带来的不仅仅是钱,更是强大的影响力,毕竟全世界人民是认微软的,包括我们中国人。
当模型完成大规模训练后,接下来就是面世了,OpenAI 的玩法很直接,直接产品化,让大家随便玩。
4. 产品化开放:让大家随便玩
ChatGPT 成功之处在于,愿意公开免费给普通用户使用,虽然各大厂商都在宣称自己在搞大模型,且有多么厉害,但真正产品化后开放给用户的,还要数 ChatGPT。
4.1 便捷使用
大部分的 AI 厂家只发布模型,感兴趣的技术人员去 Huggingface 下载,自己部署把玩,这样就把模型限制在了非常小的一个范围内。
而 ChatGPT 不一样,发布的是普通大众用户都可以使用的产品。通过邮箱注册就可以使用,全天候不限时,直接通过网页对话,使用门槛非常低。这要放在国内,还不得让你下载个 App,甚至拉几个朋友才可以用。毕竟这背后是实打实的 GPU 算力成本,据说 2022 年 ChatGPT 的算力费用(包含训练和推理)+人力成本接近 5 亿美金,试问一下哪个小厂具备这样的实力?而哪个大厂又会在看不到业务前景的背景下,每年投这么多钱去玩?但 OpenAI 做到了。
从 2024 年 4 月份开始,ChatGPT 开启无需注册即可使用的模式,彻底成为互联网基础设施。
4.2 适用场景多
OpenAI 官方公开的 ChatGPT 使用场景有 30 类(参考官方链接),可以用于代码编写、代码翻译、智能问答、语音识别、模拟面试、情感分析、机器翻译、智能客服等多个领域。这使得更多的人能够感受到 ChatGPT 带来的便利和价值,容易获得大众的支持和信任。
4.3 使用效果好
在 ChatGPT 之前,市面上已经有很多 AI 问答机器人产品,比如微软小冰、小度,用过的人都知道,它们都有很多局限性。小冰是由小模型组成的,只能同时处理特定类型任务,无法相互关联,小度也一样,这类产品无法做通用性的问答,无法像 ChatGPT 一样,像是真人在回答,甚至还有记忆、有感情。
4.4 工程化应用
工程化即系统化、模块化、规范化的一个过程。我们做工程技术的开发人员很清楚,一个优秀的产品背后一定是有着惊人的技术参数,就拿支付宝来说,双十一高峰期,50 万笔 / 秒的支付吞吐量,背后是大量的服务堆出来的,比如数百万台的服务器、大量的分布式技术的应用,如缓存、消息、文件存储等等。
ChatGPT 也一样,OpenAI 不是仅仅提供一个模型,让我们自己部署自己玩,而是直接将以大模型为内核的整套技术完成了产品化。对于两个月注册用户过亿的世界级产品来讲,这里面涉及到的技术可想而知,除了 AI 本身涉及的技术外,常见的工程化技术一样少不了。Web 相关的我们就不讲了,主要分享下和模型训练相关的技术。
为了方便进行大模型训练。2020 年,微软为 OpenAI 在 Azure 上搭建了计算集群,包含 285000 个 AMD infiniBand 连接的 CPU 内核,另外还有 10000 个 NVIDIA V100 Tensor Core GPU,是当时世界上第五大超级计算机,也是有史以来在公共云中(Azure)建立的最大的超级计算机。
我们知道,大模型训练动不动就是几周、几个月的训练,而如果服务器出现故障或者网络连接不稳定,怎么办?肯定不希望从头开始。那么如何实现容错呢?
微软开发了 Project Forge,即 Azure 容器化和全局调度服务,可以保证 AI 计算负载保持高水平的利用率;通过建立透明检查点,定期增量保存模型的状态和代码,出现故障,恢复到最近检查点;同时硬件厂家 NVIDIA 也做了调整,他们的 GPU 实现了 CRIU(用户模式下的检查点恢复),可以恢复 GPU 的内存使用,最终和 CPU 的检查点保持一致。软件和硬件协同工作,提高了效率。
所以光是模型训练这一步,为了实现可靠性,就集微软工程部门、微软研究院、OpenAI 团队、NVIDIA 团队共同努力于一体。同时,还涉及了隐私计算、私密 GPU、TE 空间等等。除此之外,OpenAI 还雇佣了大量工人(约 7.7 万人)进行人工标注,总体硬件成本接近 10 亿美金,单日运营成本高达 70 万美金,真的是很烧钱。
5. 小结
这节课我从宏观方面向你介绍了 ChatGPT 崛起的原因,相信你也对 ChatGPT 有了更深入的理解。下面我们再简单总结一下。所谓工程化主要就是指集技术、数据、产品、资源于一身,是一个系统性、规范性的工程项目,很多人想到 ChatGPT,就想到了大模型本身,其实这是片面的,具体你可以参考下面思维导图再回顾一下细节。
AI 大模型还处于发展非常迅速的阶段,实际上天天都在发生变化,所以很多事情都还没有定论,我们需要保持开放的心态,不断接纳,不断学习。下一节课,我会从如何用好大模型这个角度,给你讲解下提示词工程,这也是刚接触 AI 大模型的用户非常容易忽略的问题,当然这也是能否用好 AI 大模型的核心。
6. 思考题
学完了这节课的内容,请你来思考 2 个问题,ChatGPT 已经这么强大了,那它是否已经具备了人类大脑的思维?还有 AI 到底能否代替我们目前的工作?欢迎你把你的观点分享到评论区,我们一起讨论,如果你觉得这节课的内容对你有帮助的话,也欢迎你分享给其他朋友,我们下节课再见!
我认为从目前的技术来看还不可能代替,人类会根据所经历的事情去就行自我的一个反馈更改,但大模型用的啥数据训练出来就只知道啥,还无法不过的通过对话去就行回归训练
作者回复: 没错,可以看下本课程最后一节,Q*
老师你好,问个问题: 有编程基础,没有深度学习和机器学习的基础,能看懂这门课吗?学完之后能达到什么程度?
作者回复: 能看懂,这门课的优势就在于我本身就是软件开发出身的,所以讲解也自然是以我们开发人员能理解的方式去讲。但是也不能保证100%,毕竟机器学习和软件开发从原理上就不是一回事,需要你能从思路上进行转变,不过你有问题我可以随时解答。学完后你可以把AI大模型的能力引入企业,不论是调用大厂的API还是自己搭建开源模型还是自己从0~1训练大模型,课程中都有实际操作示例,最重要的是遇到不懂的我们可以沟通解决。
看了chatgpt 4o发布会演示,感觉真的具备初步的人脑思维了,场景对话以及语气等等都让人觉得未来将至 在我身边目前感觉还是偏向提效类工具,没有代替到真实工作 老师身边有工作被替代了吗?
作者回复: 写代码目前看还没有,但是像金融、医疗等行业,已经有很多环节把AI放进去了。它不一定会代替人类工作,有些方面是让现有产品效果更好,说白了就是加强产品竞争力。像4o这种产品,真有可能颠覆像外教这类工作。
第1讲打卡~ AI已经可以代替很多人类的日常工作了,我自己比较常用的包括代码生成、代码翻译、文章摘要、搜索等。并且未来的应用场景应该会越来越广泛!
作者回复: 是的,还有像表格整理,文本格式化等等,其实像GPT-4o出来后,场景更多了,可以和ChatGPT对话,练习英语
1、虽然不太想承认。但是AI现在确实已经具备了一定的人类思维,不过还不多。随着训练数据规模的不断加大,技术的持续迭代,我觉着AI会越来越具备人类的思维,像人类一样思考问题。
2、简单重复的场景,已经能替代人类了。复杂的场景,AI还需要学习,但只是时间问题。这给平时只会CRUD的同学已经敲响了警钟
作者回复: 确实,现在行业大家日子都不好过,大部分企业的老板都想着如何减少人力成本,所以一旦AI能代替部分人工操作,一定会被引入进来。不过软件开发有一定的壁垒,目前我们能看到的AI写代码什么的,都还比较简单,局限在一些简单的逻辑和工具类,而真正企业业务产品里的代码,通过AI去写目前看还不大可能。所以,也不用着急,就像我文中提到的,保持关注,跟进方向,不要掉队,机会来了就上车。
这要放在国内,还不得让你下载个 App,甚至拉几个朋友才可以用. deepseek豹:人内心的成见,是一座难以逾越的大山😄
作者回复: deepseek牛,写文章的时候ds还没火,现在看来确实牛逼,格局,模式都很先进,也赶上时势
老师,请问代码训练是什么意思
作者回复: 就是说通过大量的代码去训练。训练语料有很多种,比如文本,像wiki、百科、电子书、新闻等等,也可以像代码,比如从GitHub上下载几百G的代码去训练,也可以是数学公式
个人理解目前大模型的确很强大了,而且还在多模态方向上发力提升学习能力,但我认为还不具备人类思维。个人理解人类思维很大的一个特点是具备自我反思能力,人类知道在有输出的每个节点自我完成了什么,知道下一步需要做什么,下一步可以做什么,还能根据自身的能力评估自我在可以做的里面能做什么,在发现不对时,还具备回退能力,总之具备在广泛意义上的大型网络上反馈(不仅仅是前馈)和各个节点列举、选择和评估路径的能力,更为重要的是在列举、选择和评估能力下,在顶层全局维度下,对当前局势、关系和情感的观察和评判,受情绪左右程度的把握。
作者回复: 你说的很对,后面有一节课专门讲这个,就是大模型的泛化能力超出训练语料,也就是说大模型具备自我更新的能力,这块OpenAI已经在研究中了,成果还没有公布。
chatgpt= (自回归语言模型+充分无监督训练+大量代码训练+有监督指令微调+RLHF)+工程化+烧钱
作者回复: 没错,现在我们也可以研究下deepseek了,deepseek的崛起是因为什么?
Ai不是代替人,而是赋能人更高效的完成任务。
作者回复: 是的
Emergent,在复杂科学领域,好像一般会翻译为“涌现”,而不是“突现”。个人感觉涌现这个词更能体现Emergent的精髓。
作者回复: 这两种叫法都可以,就是指到达一定程度后,突然出现的能力
- 我觉得已经具备了简单基本的思维。 一方面:人说话时是根据前面的信息想下一个字词要说什么,这跟大模型大量的训练让机器学习语言的规律,上文预测下个token的概率是一致的。 另一方面:我感觉婴儿学习也是类似的过程,他接收一般的语言规律(通过大量的观察并模仿,类似于无监督训练),在使用时经常犯错,这时候大人会纠正他(类似于有监督训练)。
- 我觉得AI可以替代某些一成不变的工作,这些是标准化的,有规律的(这些正是大模型通过训练容易学习到的);有些创新性的倒是不容易被替代,也就是想象力不够(目前我们觉得大模型很强是因为我们人的记忆学习能力有限,但是机器是无限的,它学习了人类知识的大部分内容) 以上纯属个人见解,还请老师和前辈们批评指正。
- 另外有个疑问:大模型的有监督微调会不会就是让大模型记住了微调的内容?
作者回复: 不是记住内容而是规律
我觉得chatgpt还是没有具备真正的人类大脑思维,他本质上还是对于已知资源的整合,直至信息准确率更高,记忆更长,在一个绘画中,如果有很多的聊天,他还是会忘掉一些记忆。
作者回复: 没错,最后面有一节课讲关于Q*的,里面提到关于大模型能否生成它训练语料范围外的知识,未来可能实现,目前还不行
现在做的项目,甲方想用大模型去做一些科学研究,创新性的东西,我觉得不现实,可能用大模型发现规律,汇总信息是可行的,但是它从来没见过的,新的理论怎么可能直接被发现呢?我该怎么说服甲方呢?🤣
作者回复: 你说的没错,不过可以让大模型提供一些思路
公众号:AI悦创【二维码】

AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Web、Linux」,招收学员面向国内外,国外占 80%。全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh

更新日志
1c35a
-于aed17
-于63338
-于