ChatGPT能否取代Google、百度这样的传统搜索引擎?为什么中国不能很快做出ChatGPT?当前,对这些问题的探讨大多囿于大型语言模型的技术可行性,忽略或者非常粗糙地估计了实现这些目标背后的经济成本,从而造成对LLM的开发和应用偏离实际的误判。
本文作者从经济学切入,详细推导了类ChatGPT模型搜索的成本、训练GPT-3以及绘制LLM成本轨迹的通用框架,为探讨LLM成本结构和其未来发展提供了可贵的参考视角。
重点概览:
LLM驱动的搜索已经在经济上可行:粗略估计,在现有搜索成本结构的基础上,高性能LLM驱动搜索的成本约占当下预估广告收入/查询的15%。但经济可行并不意味着经济合理:LLM驱动搜索的单位经济性是有利可图的,但对于拥有超1000亿美元搜索收入的现有搜索引擎来说,添加此功能可能意味着超100亿美元的额外成本。其他新兴的LLM驱动业务利润很高:比如Jasper.ai使用LLM生成文案,很可能有SaaS服务那样的毛利率。对于大公司而言,训练LLM的成本并不高:如今,在公有云中训练GPT-3仅需花费约140万美元,即使是像PaLM这样最先进的模型也只需花费约1120万美元。LLM的成本可能会显著下降:自GPT-3发布的两年半时间里,与GPT-3性能相当的模型的训练和推理成本下降了约80%。数据是LLM性能的新瓶颈:与增加高质量训练数据集的大小相比,增加模型参数的数量能获得的边际收益越来越小。
#01
动机
LLM的惊人表现引发了人们的广泛猜想,这些猜想主要包括LLM可能引发的新兴商业模式和对现有模式的影响。
搜索是一个有趣的机会,2021年,仅谷歌就从搜索相关的广告中获得了超1000亿美元的收入。ChatGPT的“病性”传播已经引发了许多关于搜索领域潜在影响的思考,其中一个就是LLM如今的经济可行性:
一位声称是谷歌员工的人在HackerNews上表示,要想实施由LLM驱动的搜索,需要先将其成本降低10倍。与此同时,微软预计将在3月份推出LLM版本的Bing,而搜索初创公司如You.com已经将该技术嵌入到了他们的产品之中。最近,《纽约时报》报道,谷歌将在今年推出带有聊天机器人功能的搜索引擎。更广泛的问题是:**将LLM纳入当前产品和新产品的经济可行性如何?**在本文中,我们梳理了当今LLM的成本结构,并分析其未来可能的发展趋势。
#02
重温LLM工作原理
尽管后续章节的技术性更强,但这篇文章对机器学习熟悉程度不做要求,即使不熟悉这方面内容的人也可以放心阅读。为了说明LLM的特殊之处,现做一个简要复习。
语言模型在给定上下文的情况下,对可能输出的token作出预测:
自回归语言模型输入上下文和输出内容的图示
为了生成文本,语言模型根据输出token的概率重复采样新token。例如,在像ChatGPT这样的服务中,模型从一个初始prompt开始,该prompt将用户的查询作为上下文,并生成token来构建响应。新token生成后,会被附加到上下文窗口以提示下一次迭代。
语言模型已经存在了几十年。当下LLM性能的背后是数十亿参数的高效深度神经网络驱动。参数是用于训练和预测的矩阵权重,浮点运算的数值通常与参数数量成比例。这些运算是在针对矩阵运算优化的处理器上计算的,例如GPU、TPU和其他专用芯片。
EigenLayer:将于8月22日再次提高LST再质押上限:8月14日消息,据官方消息,EigenLayer将于太平洋时间8月22日上午7点提高LST(流动性质押代币,含stETH、rETH和cbETH)再质押上限。上限解除后,用户将能够将上述代币中的任何一种存入EigenLayer。当任何一种LST达到再质押10万个代币的里程碑时,EigenLayer将再次暂停接受质押。[2023/8/14 16:24:16]
随着LLM参数量呈指数增长,这些操作需要更多的计算资源,这是导致LLM成本增加的潜在原因。
#03
LLM驱动搜索的成本
本节,我们将估算运行LLM驱动搜索引擎的成本。应该如何实施这样的搜索引擎仍是一个活跃的研究领域,我们这里主要考虑两种方法来评估提供此类服务的成本范围:
ChatGPTEquivalent:一个在庞大训练数据集上训练的LLM,它会将训练期间的知识存储到模型参数中。在推理过程中,LLM无法访问外部知识。容易“幻想”事实。模型知识滞后,仅包含最后训练日期之前的可用信息。??以上两点,是这种方法存在的两大缺陷。2-StageSearchSummarizer:一种架构上类似的LLM,可以在推理时访问Google或Bing等传统搜索引擎。在这种方法的第一阶段,我们通过搜索引擎运行查询以检索前K个结果。在第二阶段,通过LLM运行每个结果以生成K个响应,该模型再将得分最高的响应返回给用户。能够从检索到的搜索结果中引用其来源。能获取最新信息。相比ChatGPTEquivalent,这种方法的优点是:然而,对于相同参数数量的LLM,这种方法需要更高的计算成本。使用这种方法的成本也增加了搜索引擎的现有成本,因为我们在现有搜索引擎的结果上增加了LLM。
一阶近似:基础模型API
最直接的成本估算方法是参考市场上现有基础模型API的标价,这些服务的定价包括成本的溢价部分,这部分是供应商的利润来源。一个代表性的服务是OpenAI,它提供基于LLM的文本生成服务。
OpenAI的DavinciAPI由GPT-3的1750亿参数版本提供支持,与支持ChatGPT的GPT-3.5模型具有相同的参数数量。现在用该模型进行推理的价格约为0.02美元/750个单词;用于计算定价的单词总数包括输入和输出。
按模型功能划分的基础模型API定价(OpenAI)
我们这里做了一些简单假设来估计将支付给OpenAI的搜索服务费用:
在ChatGPTequivalent的实现中,我们假设该服务平均针对50字的prompt生成400字的响应。为了产生更高质量的结果,我们还假设模型对每个查询采样5个响应,从中选择最佳响应。因此:
在2-StageSearchSummarizer的实现中,响应生成过程是相似的。然而:
提示明显更长,因为它同时包含查询和搜索结果中的相关部分为每K个搜索结果生成一个单独的LLM响应假设K=10并且搜索结果中的每个相关部分平均为1000个单词:
数据:比特币挖矿日收入30天平均值已升至2734万美元,创去年6月以来新高:4月18日消息,据路透社引援Blockchain.com数据,比特币挖矿收入的30天平均值已升至每天2734万美元,为去年6月以来的最高水平。不过,这距离2021年11月创下的6120万美元的峰值还有一段距离。比特币挖矿服务公司Luxor分析师Jaran Mellerud表示,去年年底,许多上市矿企濒临破产边缘,以目前的比特币价格计算,这些公司的现金流量已大幅改善,其中大多数应该可以毫无问题地履行其义务。矿业公司的债务股本比率现在看起来更健康,许多公司在过去几个月进行了重组并偿还了债务。[2023/4/18 14:11:08]
假设优化的缓存命中率为30%和OpenAI云服务的毛利率为75%,我们的一阶估计意味着:
按照数量级,ChatGPTEquivalent服务的预计云计算成本为0.010美元/次,与公众评论一致:
OpenAI首席执行官SamAltman谈ChatGPT每次聊天的成本鉴于ChatGPTEquivalent的上述缺点,在实际操作中,LLM驱动搜索引擎的开发者更可能部署2-StageSearchSummarizer变体。
2012年,谷歌搜索主管表示,其搜索引擎每月处理的搜索次数达1000亿次。世界银行数据显示:全球互联网普及率已从2012年的34%上升到了2020年的60%。假设搜索量按比例增长,则预计其年均搜索量将达2.1万亿次,与搜索相关的收入将达约1000亿美元,平均每次搜索的收入为0.048美元。
换句话说,2-StageSearchSummarizer的查询成本为0.066美元/次,约为每次查询收入0.048美元的1.4倍。
通过以下优化,预估成本大约会降至原来的1/4:1、量化2、知识蒸馏3、训练更小的“计算优化”模型,该模型具有相同的性能假设云计算的毛利率约为50%,与依赖云服务提供商相比,运行自建基础设施会使成本降低至当前的1/2。综合以上改进,降低至原有成本的1/8之后,在搜索中融入高性能LLM的成本大约占据当前查询收入的15%。深度解析:云计算成本
如今,SOTA大型语言模型通常会用到可比较的模型架构,在推理过程中每个token的计算成本约为2N,其中N为模型参数数量。
目前,NVIDIAA100是AWS最具成本效益的GPU选择,若预定1年使用该GPU,拥有8个A100的AWSP4实例的有效时薪将达19.22美元。每个A100提供峰值312TFLOPSFP16/FP32混合精度吞吐量,这是LLM训练和推理的关键指标。FP16/FP32混合精度是指以16位格式执行操作,而以32位格式存储信息。由于FP16的开销较低,混合精度不仅支持更高的FLOPS吞吐量,而且保持精确结果所需的数值稳定性也会保持不变。
CFTC专员:监管加密货币不应由单一机构完成:金色财经报道,美商品期货交易委员会(CFTC)委员Mersinger在被问及FTX和BlockFi破产对加密货币的监管影响时表示,“这不应该由单一机构完成”,“我们可能需要与证券交易委员会更紧密地合作”。Mersinger并补充说这可能意味着该独立机构也将收到国会委员会的意见,包括农业和银行业金融委员会服务委员会。
Mersinger表示,这也是CFTC开始在州一级与可能熟悉监管监督的司法管辖区合作的机会。鉴于问题的范围,也可能与全球监管机构进行对话。前CFTC专员蒂莫西·马萨德(Timothy Massad)曾建议该机构和美国证券交易委员会联合起来组建一个自律组织(SRO),以努力就哪个机构应该监督加密货币制定明确的指导方针。[2022/11/29 21:08:54]
假设模型的FLOPS利用率为21.3%,与训练期间的GPT-3保持一致。因此,对于像GPT-3这样拥有1750亿参数的模型:
我们也应用了基于GCPTPUv4定价相同的计算方法,并得到了相似的结果:
预估GPT-3通过云服务提供商(AWS,?GCP)每处理1000个token所需的推理成本
OpenAI的API定价为0.02美元/1000词,但我们估计其成本约为0.0035美元/1000词,占定价的20%左右。这就意味着:**对于一台一直运行的机器而言,其毛利率约为80%。**这一估算与我们之前设想的75%毛利率大致相同,进而为ChatGPTEquivalent和2-StageSearchSummarizer搜索成本估算提供了合理性验证。
#04
训练成本如何?
另一个热门话题是GPT-3或最新的LLM的训练成本。基于参数数量和token数量,我们构建了一个用于估算计算成本的框架,虽然稍作修改,但同样适用于此:
每个token的训练成本通常约为6N,其中N是LLM的参数数量假设在训练过程中,模型的FLOPS利用率为46.2%,与在TPUv4芯片上进行训练的PaLM模型一致。1750亿参数模型的GPT-3是在3000亿token上进行训练的。谷歌使用了GCPTPUv4芯片来训练PaLM模型,若我们现在也像谷歌那样做,那么如今的训练成本仅为140万美元左右。
此外,我们还将该框架应用到一些更大的LLM模型中,以了解其训练成本。
BTC非零地址数降至8月以来最低水平,当前约为4294万个:金色财经报道,数据显示,当前非零比特币地址共有4294.789万个,地址数正处于8月以来最低水平。其中,持有至少1BTC的地
址数续创新高,当前为808.674个;持有1000BTC以上的地址数仅2105个,为3月2日以来新低。[2022/9/14 13:29:14]
预估LLM在GCPTPUv4芯片上的训练成本
#05
绘制成本轨迹的通用框架
为了推导LLM的推理成本/训练成本,我们总结了如下框架:
密集激活纯解码器LLM模型Transformer的推理成本和训练成本
因此,我们假设LLM的架构相似,那么推理成本和训练成本将根据上述变量的变化而变化。虽然我们会详细考虑每个变量,但是以下部分才是关键点:
自2020年GPT-3发布以来,使用与GPT-3一样强大的模型进行训练和推理的成本大大降低,低于先前的五分之一。
相比2020年推出的GPT-3,与其性能对等的模型的推理与训练成本降低情况总结
参数数量效率:巨型语言模型参数每年增长10倍的神话
考虑到过去5年中模型参数呈指数增长,我们普遍猜测:下一代LLM模型很可能是万亿参数模型:
LLM中模型参数数量的增长
虽然LLM的参数数量每年约增长10倍,但是大多数模型训练数据集的大小并没有显著变化:
所选LLM的模型参数数量与训练token数量(训练计算最优大语言模型)
然而,最新文献表明,假设计算资源和硬件利用率保持不变,关注扩展参数数量并不是性能最大化的最佳方式:
GoogleDeepMind的研究人员将一个参数函数拟合到他们的实验结果中,发现参数数量N的增速应与训练token数量D的增长速度大致相同,从而让模型损失L实现最小化:
Blink Digital在Decentraland上建造元宇宙医院:7月5日消息,数字机构Blink Digital与印度Yashoda医院在Decentraland元宇宙中购买了一个地块,以建造一家医院。通过与Blink Digital的合作,Yashoda医院将能够在元宇宙中实现病患与医生之间的互动交流,为元宇宙用户提供医疗保健服务。[2022/7/5 1:52:36]
模型损失的参数函数(训练计算最优大语言模型)
研究人员还训练了一个名为Chinchilla的模型。虽然该模型的计算资源与Gopher相同,但是该模型是在1.4万亿token上进行训练的而非3000亿token。Chinchilla的性能明显优于拥有相同FLOPs预算的大型模型,从而证明了大多数LLM过度支出了计算量和对数据的渴望。
通过训练数据大小与模型参数来预测模型损失(错误更少:Chinchilla的自然环境含义)
虽然Chinchilla的参数比GPT-3少60%,但是其性能远远优于拥有1750亿参数的GPT-3模型。实际上,即使我们用与GPT-3相同的3000亿token数据集去训练一个万亿参数模型,仍可以预见该模型的表现不如Chinchilla:
万亿参数模型相应损失项的相对量级也表明,通过增加模型大小获得的边际效益低于增加数据量获得的边际效益。
展望未来,我们不会继续扩大模型参数数量,而是将增量计算资源转移到质量相当的更大数据集上进行训练,以获得极佳的性能。Cost/FLOP效率
对于训练LLM而言,最重要的硬件性能指标是可实现的混合精度FP16/FP32FLOPS。改进硬件旨在实现成本最小化,同时使得峰值FLOPS吞吐量和模型FLOPS利用率实现最大化。
虽然这两个部分在硬件开发中密不可分,但为了让分析变得更简单,本节重点关注吞吐量,下一节再讨论利用率。
目前,我们已经通过查看云实例定价估算了Cost/FLOP效率。为了进行下一步探究,我们估算了运行以下机器的成本。主要包括以下两个方面:1)硬件购买2)能源支出。为说明这一点,我们再来看看GPT-3(一款由OpenAI推出的模型,该模型在MicrosoftAzure的10000个V100GPU上训练了14.8天):
2020年用英伟达V100GPU训练GPT-3的成本(碳排放与大型神经网络训练)
黄仁勋定律指出,在硬件成本方面,GPU的增长速度比五年前快了25倍。在训练LLM的背景下,GPU的性能得到了很大提升,这很大程度上得益于张量核心)。此外,GPU不再将矢量作为计算原语,而是转为矩阵,从而实现了性能更好、效率更高的混合精度计算。
2016年,NVIDIA通过V100数据中心GPU首次推出了张量核心。与最初引入的张量核心相比,虽然这一改进不太明显,但是每一代张量核心都进一步提高了吞吐量。如今,对于用于训练LLM的数据中心GPU,我们仍能看到每一代GPU的吞吐量都提升了50%。
数据中心GPUFP16/FP32吞吐量/美元(NVIDIA)
桌面GPU和数据中心GPU、按精度划分的吞吐量/美元(英伟达,深度学习推理中的计算和能源消耗趋势)
桌面GPU和数据中心GPU、按精度划分的吞吐量/美元(英伟达,深度学习推理中的计算和能源消耗趋势)
能源效率提升得更快。现在我们可以看到,用于训练LLM的数据中心GPU的代际吞吐量/瓦特提高了80%:
数据中心GPUFP16/FP32吞吐量/瓦特(英伟达)
按精度划分的桌面和数据中心GPU吞吐量/瓦特
仅从V100到即将推出的H100的改进来看,我们预计内部训练成本将降低58%。
目前使用英伟达H100GPU训练GPT-3的成本
展望未来,我们预测,**随着硬件设计的不断创新,硬件成本和能效将逐步改进。**例如,从V100到A100GPU,NVIDIA添加了稀疏特性,这进一步将某些深度学习架构的吞吐量提高了2倍。NVIDIA正在H100中添加对FP8数据类型的本地支持,当与推理量化等现有技术相结合时,可以进一步提高吞吐量。
此外,TPU和其他专用芯片的出现从根本上重塑了深度学习用例的芯片架构。谷歌的TPU建立在脉动阵列结构之上,可显著减少寄存器使用,提高吞吐量。正如下一节将提到的,随着我们将训练和推理扩展到大型参数模型,最近许多硬件都着力于提高利用率。
硬件利用率提升
出于内存需求,LLM训练的主要挑战之一就是将这些模型从单个芯片扩展到多个系统和集群级别。在典型的LLM训练中,设置保存优化器状态、梯度和参数所需的内存为20N,其中N是模型参数数量。
因此,BERT-Large仅需6.8GB内存,就可轻松装入单个桌面级GPU。另一方面,对于像GPT-3这样的1750亿参数模型,内存要求转换为3.5TB。同时,NVIDIA最新的数据中心GPU仅包含80GB的高带宽内存(HBM),这表明至少需要44个H100才能满足GPT-3的内存要求。此外,即使在10000个V100GPU上训练GPT-3也需要14.8天。
因此,即使我们增加用于训练的芯片数量,FLOPS利用率也仍然需要保持高水平,这一点至关重要。
**硬件利用率的第一个维度是在单芯片层面。**在单个A100GPU上训练GPT-2模型时,硬件利用率达35.7%。事实证明,片上内存和容量是硬件利用的瓶颈之一:处理器内核中的计算需要重复访问HBM,而带宽不足会抑制吞吐量。同样,有限的本地内存容量会迫使从延迟较高的HBM进行更频繁的读取,从而限制吞吐量。
硬件利用率的第二个维度与芯片到芯片的扩展有关。训练像GPT-3这样的LLM模型需要跨多个GPU对模型和数据进行划分。正如片上存储器的带宽可能成为硬件利用的瓶颈一样,芯片间互连的带宽也可能成为硬件利用的限制因素。随着V100的发布,NVIDIA的NVLink实现了每个GPU300GB/s的带宽。对于A100来说,宽带速度实现了600GB/s。
硬件利用率的最后一个维度是系统到系统的扩展。一台机器最多可容纳16个GPU,因此扩展到更多数量的GPU要求跨系统的互连不能成为性能瓶颈。为此,Nvidia的InfinibandHCA在过去3年中将最大带宽提高了2倍。
在第二和第三个维度上,软件划分策略是硬件有效利用的关键考虑因素。通过结合模型和数据并行技术,2022年使用MT-NLG的Nvidia芯片集群级别的LLM训练的模型FLOPS利用率达到了30.2%,而使用GPT-3的模型FLOPS利用率在2020年只有21.3%:
选择LLM的模型FLOPS利用率
选择LLM的模型FLOPS利用率
TPU等专用硬件实现了更高的效率。
谷歌5400亿参数的PaLM模型在TPUv4芯片上实现了46.2%的模型FLOPS利用率,是GPT-3训练利用率的2.2倍FLOPS利用率的提高得益于更高效的并行训练以及从根本上TPU具有完全不同的架构。该芯片的脉动阵列结构和每个内核的显著的本地内存密度降低了高延迟全局内存的读取频率。
同样地,我们可以看到**Cerebras、Graphcore**和SambaNova等公司在处理器中分配了更多的共享内存容量。展望未来,我们预计其他新兴创新,例如将芯片扩展到晶圆级以减少延迟/增加带宽,或通过可编程单元优化数据访问模式等将进一步推动硬件利用率的发展。
#06
大型语言模型即将迎来全盛时期
据《纽约时报》近日报道,谷歌宣称ChatGPT是其搜索业务的“红色警报”,它的搜索量呈病式发展。
从经济角度来看,通过粗略估算,将高性能LLM纳入搜索将花费约15%的查询收入,这表明该技术的部署已经切实可行。然而,谷歌的市场主导地位阻碍了它成为这方面的先行者:谷歌目前的搜索收入为1000亿美元,将高性能LLM纳入搜索会使谷歌的盈利能力减少一百多亿美元。
另一方面,也就难怪微软会计划将大语言模型纳入Bing了。尽管LLM支持的搜索成本高于传统搜索,并且与谷歌相比,微软搜索引擎的市场份额要低得多,但是微软并未亏损。因此,如果微软能够成功地从谷歌手中夺取搜索市场份额,那么即使现有查询成本更高,微软仍然能够获得极高的利润。
有趣的是,对于其他产品,通过部署LLM已经可以通过SaaS来盈利。例如,最近估值为15亿美元、使用LLM生成文案的Jasper.ai收费为82美元/100000字。使用OpenAI的DavinciAPI定价为0.02美元/1000个token,即使我们对多个响应(response)进行采样,毛利率也可能远高于75%。
同样令人惊讶的是,如今在公有云中仅需约140万美元即可对GPT-3进行训练,而且即使是SOTA模型的训练成本也不会太高。在过去的两年半里,类似GPT-3等模型的训练成本下降了80%以上,高性能大语言模型的训练成本将进一步降低。
换句话说,训练大语言模型并不便宜,但也没那么烧钱,训练大语言模型需要大量的前期投入,但这些投入会逐年获得回报。更近一步,Chinchilla论文表明,在未来,相比资金,高质量数据会成为训练LLM的新兴稀缺资源之一,因为扩展模型参数数量带来的回报是递减的。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。