谈到大模型私有化部署,很多人会首先想到数据中心,以为动辄就得使用很多台服务来支撑。一些中小企业或者应用部门,主要做知识库和智能体方向的应用,模型大小基本在70B以内。只要搭配合理,用本地的专业工作站同样可以训练推理,算得上极具性价比的方案了。
随着OpenAI o1-preview的发布,大模型已经越发成熟,距离走入企业生产应用已经很近了。但OpenAI提供访问的次数非常有限,这给企业用户的AI应用普及带来了一定的费用焦虑和困扰。为了应对日益增长的访问频率需求,越来越多的企业用户倾向于大模型的本地化部署。大模型本地部署可以极大地降低数据泄漏的风险,而且系统响应速度和实时性更强,在一些需要快速反馈的场景里优势非常明显,同时也能应对企业个性化需求。
通过在传统数据中心上进行本地大模型部署的方法,会对IT设施带来比较大的挑战,因为从计算资源来说,很多企业的数据中心计算资源很紧张,而且扩展成本比较高,甚至有些中小企业还不具备搭建数据中心的能力。所幸的是,对于知识库等企业级AI 应用来说,完全可以用高配的AI工作站来应对计算需求,以经济高效的方式减轻对数据中心计算资源的压力,从而降低云服务的成本支出。
这次我们选用的是Dell Precision 7960 Tower,搭载了4张「NVIDIA RTX 5880 Ada 」显卡,每张显卡显存48GB,相当于在1台工作站里就能最多有192GB显存,完全可以部署Llama3.1 70B模型。
Dell Precision 7960 Tower
70B模型拥有700亿参数量,在语言理解和生成方面具有显著优势,已经能够满足常见的企业级AI应用,比如知识库应用、对话问答等,同时多任务处理能力也很强,可以支持企业在一个统一的平台上运行多种AI 应用。同时,开源大模型70B的开放和灵活使得它在市场上具有广泛的适用性,大大降低企业的使用成本。而且量化后的70B模型仅占70G的显存,非常适合部署在工作站上,降低计算资源方面的成本。
购置机器前我们做了相对完整的测试和验证,包括推理、训练和噪音测试,下面给大家分享一些数据。
一、测试环境
硬件配置:
硬件平台:Dell Precision 7960 Tower
CPU: Intel(R) Xeon(R) w5-3433
内存:64G DDR5 * 8
GPU: NVIDIA RTX 5880 ada * 4
软件平台环境:
操作系统:ubuntu22.04
Driver Version: 550.107.02
CUDA: 12.1
软件包:conda python3.10 torch2.4 vllm0.6.1
测试模型:
这次我们分别测试了单GPU、双GPU以及四卡GPU的表现情况。并在不同的模型下进行测试,模型参数分别为8B/13B/32B/70B,具体模型名称如下:
Meta-Llama-3.1-8B-Instruct
Baichuan2-13B-Chat
Qwen1.5-32B-Chat
Meta-Llama-3.1-70B-Instruct
说明:接下来的推理测试,会使用FP16或FP8格式进行测试。在模型名称的后缀,如果有FP8字样,则使用的是FP8格式,否则使用的是FP16格式。
FP8是NVIDIA、Arm、Intel联合推出的8位浮点数据格式,用于加速深度学习训练和推理。相对于常用的半精度FP16而言,FP8在不损失多少精度的情况下,将显存的占用大小减少了一半,特别适合于将大模型部署于工作站上。FP8训练利用E5M2/E4M3格式,具备与FP16相当的动态范围,适用于反向传播与前向传播。FP8训练在相同加速平台上的峰值性能显著超越FP16/BF16,并且模型参数越大,训练加速效果越好,且其与16-bits训练在收敛性和下游任务表现上无显著差异。
推理框架:
vllm推理引擎来进行测试,为最大程度利用GPU显存,将其GPU utilization参数设置为0.99。
述语说明:
Batch size: 推理或训练时输入的数据批量数量,为1表示单个输入,例如一段文字,为2表明同时进行两段文字的生成,以此类推。它代表的是用户并发数量。
token/s:推理或训练的速度,每秒生成的数量。一个token是代表一个单词或词根,如果是中文的话,可能是一个字或一个词。
AI 应用场景测试列表