随着深度学习模型规模的不断膨胀,传统的单卡推理解决方案已难以满足这些庞大模型的需求。以GPT-3为例,其1750亿参数仅需数百GB的存储空间,远远超出单个GPU的容量。因此,多卡并行推理成为AI领域的必然选择。
针对这一挑战,Colossal-AI团队推出了Energon-AI大模型推理系统,以“高性能、高可用、可伸缩”为目标,专注于单实例多设备推理场景。该系统不仅提升了性能,还简化了使用流程。用户只需对现有项目进行少量修改,即可完成自定义大模型的推理部署,实现并行扩展的超线性加速。与英伟达FasterTransformer相比,Energon-AI在AI大模型分布式推理加速上可提升50%以上。
此外,Energon-AI还大幅降低了用户的使用门槛,无需手动管理通信和内存等细节,也无需额外编译。其开源地址位于:https://github.com/hpcaitech/ColossalAI。
AI大模型推理部署面临的主要挑战是模型参数的迅速增长。尽管计算设备的并行计算能力和内存容量不断提升,但单设备的纵向扩展在面对指数级增长的模型规模时仍显不足。而现有的深度学习推理系统主要面向多实例单设备和单实例单设备的简单推理场景,未能充分考虑AI大模型在单实例多设备上的需求。Energon-AI系统正是为了解决这个问题而诞生的。
Energon-AI系统设计分为三个层次:运行时系统(Runtime)、分布式推理实例(Engine)以及前端服务系统(Serving)。Runtime依赖于Colossal-AI实现张量并行,并设计了流水线并行包装方法以应对显存不足的情况。Engine则通过半中心化方法实现分布式推理的中心化控制,同时维护了分布式消息队列以保证多个进程中多线程调用的一致性。Serving则引入了动态Batching机制,以优化GPU使用率和降低平均请求时延。
性能测试显示,Energon-AI在八卡并行推理时,相比单卡Pytorch直接推理可获得8.5倍的超线性加速。在运行时推理性能上,与FasterTransformer相比,Energon-AI在Batch Size较大时能实现超过50%的性能提升。此外,动态Batching机制还使吞吐量提升了30%。
在易用性方面,用户只需在配置文件中自定义【并行模型】、【并行参数】以及【服务请求逻辑】,即可启动推理服务。Energon-AI提供了GPT、BERT和ViT等常见模型的示例,并计划在未来提供更详细的教程。
除了推理部署特性外,Colossal-AI还致力于构建AI大模型生态系统。通过高效多维并行和异构并行等技术,Colossal-AI让用户能够高效快速地部署AI大模型训练。例如,对于GPT-3这样的超大模型,Colossal-AI仅需一半的计算资源即可启动训练,且能提速11%。此外,Colossal-AI还兼容低端设备,降低了AI大模型微调和推理等下游任务的应用部署门槛。
Colossal-AI注重开源社区建设,提供中文教程和开放的用户社群及论坛。自开源以来,该项目已多次登上GitHub热榜Python方向世界第一,并受到国内外广泛关注。在Papers With Code网站上,Colossal-AI也荣登热榜第一。
项目地址位于:https://github.com/hpcaitech/ColossalAI;参考链接:https://medium.com/@hpcaitech/6139c5bc7790