自然语言处理是人工智能研究的一个重要领域,旨在帮助计算机理解、解释和运用人类语言。近些年,自然语言处理在应用方面取得了较为显著的突破,主要是归功于 Bert、GPT、GPT-3 等预训练语言模型的普及。可以说,预训练语言模型已经成为人工智能领域的基础设施。由于大模型的算法表现更加出众,预训练语言模型在近几年呈现出迅速向大模型发展的趋势。然而,模型体积的快速增长也对现有的训练系统带来了不小的挑战,主要体现为显存压力、计算压力和通信压力。
针对现有训练系统在大模型训练场景下的上述挑战, 字节跳动应用机器学习团队提出了大模型训练框架 veGiantModel。
veGiantModel的中文名称叫做火山引擎大模型训练框架,是基于开源深度学习框架 PyTorch 、并在 Megatron 和 DeepSpeed 两大开源主流训练框架的基础之上构建的高性能大模型训练框架。
veGiantModel 可同时支持数据并行、算子切分、流水线并行 3 种分布式并行策略,并支持自动化和定制化的并行策略;基于字节自研的高性能异步通讯库 ByteCCL,veGiantModel 的训练任务吞吐相比其他主流开源框架有 1.2 倍到 3.5倍的提升,并且提供了更友好、灵活的流水线支持,降低了模型开发迭代所需要的人力;另外,veGiantModel 可在 GPU 上高效地支持数十亿至上千亿参数量的大模型,对网络带宽要求也更低,在私有化部署时无 RDMA 强依赖。
与 Megtraon 和 DeepSpeed 的对比测试显示,veGiantModel 的性能表现最好、受网络带宽影响最小,在Tesla V100上较上述两者有1.2 倍到3.5倍的提升,在 Ampere A100上最高可提升6.9倍。
veGiantModel开源 地址:
https://github.com/volcengine/veGiantModel
火山引擎机器学习平台 公测地址:
https://www.volcengine.com/product/ml-platform