》中提到的那样,大语言模型会带来交互和软件的大范围创新,而大语言模型技术上的突破是以硬件算力和云计算能力的提升作为土壤的。本研究会对 LLM 所能带来的增量硬件市场进行预估,并详细分析价值流向和行业竞争格局。
我们对硬件市场规模做出了以下估算:在短期内(3 年),大语言模型将成为超过 1 亿人的智能助手,对应着数十亿美元的市场;在中期内(3-7 年),大语言模型的访问次数有望达到谷歌搜索当前的水平,对应着数百亿美元的市场;从长期来看,大语言模型可能会取代 20% 的软件交互,对应着上千亿美元的市场。值得注意的是,尽管语言模型的不断扩展能够带来惊人的能力、显著增加对云端推理的需求,但我们仍需密切地关注模型压缩技术的发展,因为如果端侧推理能被实现,市场对于硬件的需求将被显著压缩。
2. 云计算巨头作为最大的硬件买单方,也和 Startup 一样是新技术最主要的探索者,尤其是谷歌 GCP 近些年在 TPU 和光互联上的技术积累让其有望挑战 NVIDIA 的组合,其 TPU 相比同代 NV GPU 已有 20% 的性能提升,Startup 难以用类似的技术路径超越 TPU;
3. 在 NVIDIA 和 Google 已摘走行业低垂果实的背景下,Startup 放弃通用性追求垂直场景下的性能,这在模型技术路线未完全收敛的情况下风险较高,使得一级投资者面临的风险骤增,也让投资组合配比显得尤为重要。
在详细比较市场空间和竞争、必要性、用户粘性和技术成熟度后,我们认为推理芯片和片间通讯是最值得投资的一级赛道,其中 ASIC 和 CXL 赛道的投资预算应该接近,In-Memory Computing 的投资预算应该控制在 ASIC 仓位的一半以下。投资机构应尽力撮合 ASIC 和 CXL 公司的合作,算力的可扩展性才是挑战巨头的关键。投后管理中应密切关注模型压缩技术,ASIC 很可能会不被需要,而 CXL 还能继续改造计算中心的互联架构,这并不和 LLM 高度绑定。
ASIC指的是为垂直场景特殊优化的芯片,相较于 GPU 会有性能和成本优势,但是能够运用的场景比较单一,比如为自动驾驶模型开发的 ASIC 用来训练 GPT 模型时性能会不如 GPU。
CXL是一种片间通讯的协议,就像 Ethernet 协议允许多台电脑互相传输信息,CXL 能让 CPU/GPU/ASIC/内存之间传输信息。
In-Memory Computing可以理解成技术成熟度低,但是性能上限极高的 ASIC 芯片,但因为技术路径的颠覆性,通常和 ASIC 分开讨论。
大语言模型能力遵循规模理论 Scaling Law(即模型能力随着训练计算量增加而提升)。这意味着大语言模型的准确度会随着模型的参数量、语料训练量和训练计算量的增加而提升。比如 OpenAI 的研究人员就曾通过实验发现,模型回答的偏差随着模型参数量、语料训练量和训练计算量的增大而减少。此外,谷歌的研究员也曾发现随着模型计算量的增加将能带来思维链、数学推理等能力的涌现。此外,有消息透露微软 Azure 将独占 NVIDIA 全年 H100 产能,可以看到大模型厂商正在囤积算力,想要进一步扩大模型训练的计算规模来探索模型能力的边界。
大模型训练和推理需要大规模分布式计算(即让数台服务器协同完成计算,从而可以在有限的时间里完成复杂的工程)。大模型的复杂主要体现在内存存储和计算量规模大,并有持续扩展的需求。具体来说,在大模型训练的过程中,一个参数通常需要 20 bytes 的内存存储,所以像 GPT-3 这样 175B 参数的模型需要约 3500 GB 的存储空间,这至少需要 44 张 A100 80G 显卡 (~5.5 台 HGX A100 服务器) 协同训练,但即使这样也至少需要 785 天才能完整在 3000 亿的语料库上训练一次,这显然无法满足日新月异的迭代需求。为了缩短训练时间,通常大模型团队会采用更多的设备来扩展算力,比如在 Efficient Large-Scale Language Model Training on GPU Clusters Using Megatron-LM 这篇论文里,描述了微软团队用 1000 张 A100 复现初代 GPT-3 的训练只需要 34 天,而用 384 张则需要 90 天。下图展示了越多的显卡数量将能快速压低训练时间。
分布式计算严重受限于内存性能和互联性能,单卡算力的性能提升幅度远大于内存和连接设备的提升。在过去二十多年中,单芯片的算力提升了百万倍,而内存的读写速度和网络设备的互联速度却只提升了不到百倍,这导致了当前芯片在没有特意优化的情况下有大量的算力浪费:比如有博主在用单张 A100 在没有进行算法优化时训练 GPT-2 时,受限于内存读取效率,算力使用效率只有 35.7%;OpenAI 在 10000 张 V100 的服务器集群上训练初代 GPT-3 ,受限于内存读取和互联通信效率,算力使用效率只有 20%。
在介绍分布式计算的价值链路之前,我们先来分析一下这次大语言模型会给分布式计算带来多大的增量市场。
大语言模型的市场空间取决于计算量 (FLOPs)、算力成本 (Cost/FLOP) 和算力使用效率 (Utilization),而计算量可以分为训练 (Training FLOPs) 和推理 (Inference FLOPs) 阶段讨论。通常在技术成熟初期,训练计算量要显著大于推理计算量,但长期来看,推理计算量将占大头。
训练计算量取决于模型的参数和训练语料规模,GPT-3 单次训练的理论计算量为 3.15 × 1023FLOP。GPT-3 的参数量是 1750 亿,用了包含 3000亿 token 的语料库,按照行业通用估算公式来看,GPT-3 训练需要的算力为 6 × 1750 × 108× 3000 × 108= 3.15 × 1023FLOP,这是理想情况下(没有算入多次尝试和摸索的训练)的理论训练所需算力。
训练过程中每个参数在每个单词上训练都会消耗 6 FLOP 的算力,算法中包含正向传播和反向传播,正向传播需要 2 FLOP (一次乘法和一次加法),反向传播需要 4 FLOP 。
模型的推理计算量取决于参数规模和问答的长度,ChatGPT 当前每日计算量规模在 9.8 × 1023FLOP 左右。首先,推理过程中涉及用户的 Prompt 长度和模型的回答长度。通过集合 Sam 的 Twitter 和一些公开信息,我们通过以下假设推测出 ChatGPT 当前每日计算量规模在 9.8 × 1023 FLOP 左右,已经是 GPT-3 单次训练计算量的 3 倍以上。
•单次请求的平均长度为 500 token,单每条回复的平均长度为 3000 token。我们将多个短问答合并成长问答;
如果确认用了 MoE 可以直接除 20,因为有人说根据延迟来看是 10B 的参数量。MoE 技术后文会补充。
以行业当前最通用的 A100 作为参考,当前训练的算力成本为 2.14 × 10-18$/FLOP,算力成本可能将每 2.5 年下降 35-50%。我们这里参考了 AWS 提供的由 8 张 A100 组成的服务器,这台有着 8 × 312 = 2496 TFLOPS 算力的云服务器每小时收费 19.22 美元(如果预订了一年的使用权),这意味着算力成本为 2.14× 10-18 $/FLOP。H100 更是采用了台积电最先进的工艺,以 1.8 倍的售价提供 3 倍的算力性能,训练算力成本将在两年内快速降至 1.3 × 10-18$/FLOP。不过尽管 Nvidia 设计和发布新芯片的频率为两年一次,碍于生产能力限制,H100 才刚开始大规模铺开,我们将保守地用 2.5 年作为更新频率。换言之,算力成本将每 2.5 年下降 40-50%。
值得指出的是训练阶段通常采用 FP32 和 BF16 的混合精度训练,但是微软和谷歌都在计算算力使用效率时以芯片的 BF16 性能为基准。
大模型在训练中的关键问题是提升大服务器集群的算力使用效率(Model FLOPS Utilization),谷歌和 NVIDIA(帮助 Azure 和 OpenAI) 都能做到 50-60%。OpenAI 和微软 Azure 将大服务器集群外包给 NVIDIA,而 NVIDIA 团队里有大量的人才在研究分布式计算的软硬件优化,将原本 OpenAI 用 V100 训练初代 GPT-3 时的 21.3% 算力效率提升到了 50% 左右,中间涉及 NVLINK 的性能从 300GB/s 提到了 600GB/s,也有 NVIDIA 团队为 LLM 定制的分布式算法。而谷歌也开发了定制的芯片和服务器集群,并在过去的 5 年里通过和自己的搜索和 AI 业务结合,不断地迭代软硬件的使用效率,当前能够在 5400 亿参数的 PaLM 上达到 57.8% 的算力使用效率。
当前市场主导力量正在从训练需求切换到推理需求, ChatGPT 年均推理成本在 15 亿美元左右(以日活 7000 万计算),并且正在高速增长。中期如果能替代谷歌的线 亿美元,长期如果需要替代 20% 的软件交互可能需要近 2 万亿的推理成本。不过,市面上有大量的软硬件优化方式将能在未来三年内将成本压低至当前的 1/10 或 1/100,甚至随着模型压缩技术的成熟,大模型将能根据需求压缩成小模型,在边缘设备上运行。
按照上文的计算公式,我们可以推测出初代 GPT 的单次训练成本为 2500 万美元左右,但现在使用 A100 训练则降至 75 万美元。由于硬件和软件的协同优化,训练大模型的单次成本迅速降低。不过这里考虑到 OpenAI 和 Azure 良好的合作关系会在计算资源上给予折扣(预定三年的价格),而初创公司则会因浪潮来临而面临更高的计算成本。我们在下表中计算了各大主流模型的训练成本。
在早期训练基座模型阶段,每 4000 张 A100 需要 0.8 亿美金的初始硬件投入,云计算的租赁成本大概是每年 0.14 亿美元 (一年预定价格);时间成本是只有 4000 张卡需要 4 年才能复刻,显卡每翻倍就能缩短一半;OpenAI 现在大概率有 2 万张 A100。
4096 张卡是 512 台 DGX 服务器,需要 0.8 亿美元左右,如果去租的线 张卡从零搭建到训练出 ChatGPT 这个程度大概要 4 年,这里考虑了后发因素,因为 OpenAI 用了一两万张卡摸索了 4 年才弄出来。如果初期投入多一些,比如投入 1.6 亿买 8000 张可以缩短一半,因为团队手上可以分工摸索不同的技术,这是一个时间和成本的 Trade-off。有了这些数大家去打听国内大厂的研发团队的规模和投入大概心里就会有一些概念了。现在 OpenAI 有 2 万张以上 A100,按照云计算价格估就是一年 0.7 亿美元以上。
通过整理一些公开信息,我们推测 ChatGPT 的单条推理成本为0.007 美元 ( /3500 token),每日推理成本为 420 万美元,年推理成本为 15.3 亿美元左右。
如果确认使用 MoE,可以把成本除以 20,因为有人说根据延迟来看是 10B 的参数量,最新的 ChatGPT 价格也印证了这点。如果采用自建,可以把成本乘 0.8。
• ChatGPT 有 7000 万 DA。