一直以来,OpenAI对于涉及ChatGPT的架构、设计等底层信息一直都讳莫如深,在世界的眼中ChatGPT-4也一直是强大且神秘的存在。但媒体semianalysis的两位作者Dylan Patel和Gerald Wong昨日新发布的一篇文章揭开了ChatGPT-4 的神秘面纱。
从这篇文章的标题《GPT-4 Architecture, Infrastructure, Training Dataset, Costs, Vision, MoE(GPT-4的架构、基建、训练数据集、成本、愿景、及混合专家系统)》就能看出,这是一篇包含了高度细节信息的文章,可以说把GPT4扒了个干净。
值得一提的是,Dylan Patel在上个月以一篇名为《谷歌:我们没有护城河,OpenAI也没有》的文章爆料了谷歌的内部文件,而这份文件的真实性近日也得到了谷歌DeepMind CEO Hassabis的确认。无疑,这使此次GPT爆料的真实性又多了几分。
这两位作者一开头就指出,OpenAI让GPT-4的架构保持封闭,不是因为对人类存在一些风险,而是因为他们建造的东西是可复制的。他们认为,中美各大科技巨头在不久的未来都将拥有与GPT-4一样强大,甚至超越GPT-4的大模型。
不过他们也表示,这并不意味着OpenAI有多狭隘。相反,OpenAI所拥有的最多的实际应用,领先的工程人才,惊人的工程技术,以及在大语言模型上的先发优势为其构建了真正持久的护城河。
以下是这则爆料的主要内容。
惊人的规模和简便的算法
爆料称,GPT4的训练参数高达1.8万亿个,分布在120层中,是其前一代GPT3 1750亿参数的十倍以上。为了达到成本和性能之间的平衡,GPT4采用了混合专家系统模型(MOE),通过16个分别由大约1110亿个多层感知参数构成的专家来有效优化资源分配。
GPT4采用的算法相对简单,但很有效。其每次向前传递的过程中,只会涉及两个专家,在不影响结果的情况下最小化计算需求。模型中另有大约550亿个参数被用于注意力机制的共享。
这样,在每次推理过程中,GPT-4只需要使用大约2800亿参数和560TFLOPs浮点计算量。相比之下,纯密集模型每次推理需要大约1.8 万亿个参数和约3700 TFLOP 的计算量。
广泛的训练数据集
GPT-4的训练基于13万亿个token的庞大数据集。训练过程包括对基于文本的数据进行2次epoch训练和对基于代码的数据进行四次epoch训练。OpenAI利用来自ScaleAI和内部的数百万行指令微调数据来优化模型的性能。
GPT-4的预训练阶段采用8k语境长度。随后,该模型进行了微调,产生了32k版本。
极限并行策略
为了在所有 A100 GPU上进行最大化并行计算,OpenAI采用了8路张量并行(8-way tensor parallelism),因为这是NVLink的极限。除此之外,据说OpenAI还采用15路并行来进一步提高性能,具体方法则未公开。
训练成本
GPT4的训练需要投入巨大的资源。在90到100天内,OpenAI为GPT4分配了大约25,000个A100 gpu,以大约32%到36%的利用率运行。在这个过程中,出现了许多失败,每次都需要从之前的存档点重新开始训练。如果以每A100小时1美元的价格计算,仅这一次训练就总计耗费了大约6300万美元。
不过如果放到今天,在2美元/每H100小时的条件下,预训练可以在大约8192个H100上进行,只需要55天,费用为2150万美元。
使用专家混合模型时的权衡
MoE(混合专家模型)是一种在推理过程中减少参数量的很好方法,但同时会增加参数量。如果OpenAI真的想追求最佳性能,他们需要训练两倍的token才能达到。
采用相对比较少的专家模型的原因很多,OpenAI选择16个专家的原因之一在于,在执行许多任务上,更多的专家模型很难泛化,也更难实现收敛。
推理成本
与它的前身1750亿参数的达芬奇模型相比,GPT-4的推理成本大约高出三倍。这种差异可以归因于几个因素,包括支持GPT-4所需的更大集群以及在推理期间实现的较低利用率。作者预计,当用8k语境推断GPT-4时,128个A100 gpu每1000个token的成本约为0.0049美分,128个H100 gpu每1000个token的成本约为0.0021美分。这些数字的假设前提是良好的利用率和高批量大小,这是成本优化的关键考虑因素。
视觉多模态
GPT-4在文本编码器之外引入了一个单独的视觉编码器,两者之间具有交叉关注,这种架构类似Flamingo,为GPT-4已经惊人的1.8万亿参数之外增加了额外的参数。在纯文本预训练阶段之后,视觉模型使用大约2万亿个标记进行单独的微调。这种视觉功能使自主代理能够读取网页、转录图像和解释视频内容——这是多媒体数据时代的宝贵资产。
而下一代模型GPT-5,将从头开始进行视觉训练,并且也能自己生成图像,甚至生成音频。
数据来源的猜测
关于这些未公开数据的来源,出现了各种猜测。有传言称,它包括来自Twitter、Reddit和YouTube等流行平台的内容,这突显了用户生成内容在塑造GPT-4知识库方面的潜在影响。此外,还有一些猜测围绕着庞大的收藏,如LibGen,一个数百万本书的存储库,以及Sci-Hub,一个提供大量科学论文访问的平台。GPT-4是在整个GitHub上训练的概念也在人工智能爱好者中流传。
作者指出,GPT4的训练可能还包含了一个主要由大学教科书组成的特殊数据集,涵盖广泛的课程和科目。大学教科书提供了一个结构化和全面的知识库,可以成功地用于训练语言模型,并且很容易转换为文本文件,这也使得GPT4能给人留下精通各个领域的印象。