该Page的起点来自GPT4的技术披露文章(此处应该有GPT的拟人像素画像飘过,像是上世纪格斗游戏那样)

本Page专注于LLM的训练推理部署的方面,而不具体探讨模型本身的能力

如果想阅读其他关于LLM能力的相关博客,可以参照如下博客:

GPT4

Training

在提到训练的细节之前,这篇文章首先从推理入手,解释为什么单一模型的尺寸无法达到万亿。

首先它提到,人每分钟阅读的词在250-1000不等,换算成token,大约8.3token/s-33.33token/s,也就是说模型需要在推理集群上达到这个速度才可以满足推理的latency要求,

Untitled

根据上图可以看到,即便8xH100也无法以33.33tok/s的速度进行1t模型的推理。而在8x H100上进行推理的1t模型只能达到5%的FLOPS(大部分时间都卡在内存带宽)。

无论在推理集群还是训练集群上,FLOPS都将直接决定成本,因此全文将从成本和速度的角度全方位的解释GPT4的整体方案。

模型结构

传闻GPT是16个111B模型组成的MoE,其中,有55B的共享参数用于Attention,而在每次生成一个token的过程中,只会利用280B的参数,并只有560TFLOP的计算,而非更早传言中提到的1.8T 的参数,3700TFLOP的计算量。

数据集

“OpenAI trained GPT-4 on ~13 trillion tokens. This makes sense, given CommonCrawl for RefinedWeb contains ~5 trillion tokens high-quality tokens. For reference, Deepmind’s Chinchilla and Google’s PaLM model were trained with ~1.4 trillion tokens and ~0.78 trillion tokens, respectively. Even PaLM 2 is allegedly trained on ~5 trillion tokens”

文章提到13T tokens并不是unique tokens.数据集存在多轮数据,2轮文本数据,4轮代码数据。并且数据里有百万行来自ScaleAI的指令微调数据,但文章作者表示没有发现任何RLHF数据(说白了其实做的是SFT不是RLHF是吧)。

至于训练的序列长度,预训练阶段,gpt4的context length是8192,32k版本是后续微调的结果。

Batch-size的大小采取ramp up策略,最终达到6000万的大小,而每个专家内部一个batch过750万个token,所以batchsize大概在92000左右,考虑其训练集群上大概有25000块A100,平均每块卡batch为3-4。