llama2大模型---商用部署(模型推理阶段)预算估算

先说结果,大模型部署预算主要影响因素:1.模型大小 2.每秒平均需要输出的token数

ps : 先叠个甲,计算公式是由外网或是其他博客查找获得,在文章书写过程中,会尽量将数据或公式来源以链接形式呈现。书写日期:2023.9.26。

1.确定需求:

这里以:峰值10W人,平均每秒输出token以10W用户在12H内每人输出5000token计算,分别估算7B,13B,70B的部署成本(7,13,70是训练数据的样本量,单位是10亿)

2.成本估算

2.1 云服务器租用成本

2.1.1 服务器供应商选择:

        常见的服务器供应商有:AWS(亚马逊),阿里云,腾讯云,华为云等,部署价格基本在同一级别上,这里我选择以个人使用比较多的腾讯云为例,实例部署价格各自官网都能找到,所以这里就单提供腾讯云链接以作参考:腾讯云GPU实例部署定价

        大模型部署基本都有GPU的部署需求,腾讯云实例中,使用的GPU适用于推理阶段的主要是英伟达Tesla T4以及英伟达A100,当然如果有特定需求,也可以选取V100等型号。

这里贴上T4,A100的具体参数以作参考:

T4:单精度算力:8.1TFLOPS * 16G

A100-40G:单精度算力:19.5TFLOPS * 40G

2.1.2 算力需求:

参考依据:算一笔细账,ChatGPT、文心一言这类大模型到底要消耗多少GPU?

目前基本所有的模型都支持单精度,所以这里以单精度算力为例。

单一用户单次交互算例消耗 \approx L*D*N = 9 * 1000 * 120 * 96 = 103,680,000 = 103百万FLOPs

L:用户问题的输入长度于模型回答的输出长度之和(以输入50token,输出950token为基准,测试时10汉字换算17token,在中文环境下,一个token约等于9bit)

D:模型维度 = 120(GPT模型参数)

N:模型层数 = 96(GPT模型参数)

这里以GPT的模型维于模型层数来估算llama2的算力需求。(数据肯定与实际有出入,但由后续计算可以看出,这对于成本的影响微乎其微,所以便以gpt来估算llama2,好吧我承认我没找到更具体的数据)

假设需要在0.5s内完成响应,算力需求 = 206 百万FLOPs/s

一张T4可以同时支持 = 8.1*10^12 / 206*10^6 \approx 4W 人

一张A100可以同时支持 = 19.5*10^12 / 206*10^6 \approx 9.5W 人

2.1.3 显存需求:

参考依据:LLM 训练时GPU显存耗用量估计   

一般我们都使用单精度也就是float32,每10亿个参数,占用约4G显存(实际时10^9 * 4 /1024/1024/1024 = 3.725G,为了方便计算,同时便于提供更优性能,取4G),其他精度见下表:

dtype每10亿参数需占用内存
float32(单精度)4G
float16(半精度)2G
int8 1G
int40.5G

根据上述内容,可以大致估算出7,13,70三个模型的显存要求:(单精度)

model显存需求(单精度)GPU配置(T4-16G,A100-40G)
7B28GT4*2 / A100*1
13B52GT4*4 / A100*2
70B280GA100*7

ps:A 100是有80G显存版本的,但腾讯云上用的时40G的那款

2.1.4 cpu 需求
ps:这段内容仅供参考,当时没有考虑到利用gpu进行模型推理,后面有时间我重新捋一下

这里以DDR4-2133 为例,该cpu数据传输速度为21.3GB/s

我们输入1token到模型输出需要经历1.加载模型 2.推理(处理)

以:峰值10W人,平均每秒输出token以10W用户在12H内对每人输入5000token计算,平均每秒输出约1.2Wtoken

基本计算公式:

模型大小/(单个cpu传输速度*挂载cpu数量)*token数量 + 处理时间*token数量 = 1s

反解出挂载cpu数量

以7B模型为例。模型大小约28G,取T4(T4实例最多一张GPU挂载45核cpu)

28G/(21.3GB/s*45x)*12000  +  206*10^6*12000/(8.1*10^12*x) = 1,求得 x = 350张T4

2.1.5 费用计算:

综上:单一GPU挂载CPU数量是影响最后价格的最大因素,A100相较T4价格更贵,这里取T4挂载45核cpu的实例为服务器选择对象

7B部署总月租  = 350 * 4500 = 157(百万/月)

13B,70B更换模型大小套用公式即可

2.2 公网宽带费用

参考依据:腾讯云公网网络费用

以全程峰值(10W人),每个用户平均约 10token/s基准计算

带宽  =  9*10b/s*100,000=9,000,000=9Mb/s=1.125MB/s

然后套用公网网络费用计算得(稳定情况下包月合算):

广州、上海、南京、北京、香港、新加坡475元/月
成都、重庆422元/月
雅加达、东京445元/月
多伦多、硅谷、弗吉尼亚、曼谷、孟买、圣保罗550元/月

如有错误,烦请指针,欢迎留言讨论。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

渊兮旷兮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值