微软日前宣布正式开源 Deep Speed Chat,可帮助用户轻松训练类 ChatGPT 等大语言模型。
Github 地址为:https://github.com/microsoft/DeepSpeed
微软官宣的推特:
据介绍,Deep Speed Chat 基于微软 Deep Speed 深度学习优化库开发,具备训练、强化推理等功能,使用 RLHF(人工反馈机制的强化学习)技术,可将训练速度提升 15 倍以上,并大幅降低成本。
为什么要开源?
ChatGPT 短短几个月的时间席卷全球,成为史上用户增长速度最快的消费级应用。很多企业、个人用户纷纷想参与到这场AI技术变革中,但由于庞大的资源、资金投入只能望而却步。
即便开源领域推出了LLaMa、Alpaca、Vicuna、Databricks-Dolly等优秀的类ChatGPT项目,仍缺乏一个支持端到端的基于RLHF的规模化系统,使得训练强大的类ChatGPT模型非常艰难。
例如,使用上述开源项目训练一个67亿参数的类ChatGPT模型,通常需要昂贵的多卡至多节点的GPU集群,但这些资源对大多数科学家、小型企业、个人开发者而言难以获取。
即便是拥有这样的资源,现有的开源系统的训练效率通常还不到,这些机器所能达到的最大效率的5% 。
现在,通过Deep Speed Chat解决资源、算法等难题,轻松、高效的训练数千亿参数的最先进的类ChatGPT模型。
Deep Speed Chat 概述
Deep Speed Chat 是一款能够解决训练类 ChatGPT 模型的资源和算法难题的技术,它能够轻松、高效的训练数千亿参数的最先进的类 ChatGPT 模型。使用 Deep Speed Chat,用户只需一个脚本即可实现多个训练步骤,包括使用 Huggingface 预训练的模型、使用 DeepSpeed-RLHF 系统运行 InstructGPT 训练的所有三个步骤,生成属于自己的类 ChatGPT 模型。
此外,Deep Speed Chat 还提供了一个易于使用的推理 API,用于在模型训练后测试对话性能。Deep Speed Chat 具有强化推理、RLHF 模块、RLHF 系统三大核心功能,能够支持训练拥有数千亿参数的模型,并在多节点多 GPU 系统上展现出卓越的扩展性。
DeepSpeed-Chat包含以下三个能力,总结如下:
第一个是简化的ChatGPT类模型训练和推理体验
只需一份脚本即可实现对预训练Huggingface模型的训练,并使用DeepSpeed-RLHF系统运行所有三个InstructGPT训练步骤,生成自己的ChatGPT模型。此外,微软还提供了推理API,可用于在模型训练后测试对话式交互。
第二个是DeepSpeed-RLHF模块
主要复制InstructGPT论文中的训练管道,并仔细注意确保完整性和一对一的一致性,包括a)监督微调(SFT),b)奖励模型微调和c)强化学习与人的反馈(RLHF)。此外,还提供数据抽象和混合功能,以实现使用多数据源进行训练。
第三个是DeepSpeed-RLHF系统
这是一个强健而复杂的RLHF系统,将DeepSpeed的训练和推理能力整合到单一统一的混合引擎(DeepSpeed-HE)中,并实现无缝转换,具有高级别的优化策略,如张量并行和高性能变压器内核生成等,同时还能受益于多种基于ZeRO和LORA的用于RL训练的内存优化策略。
此外,DeepSpeed-RLHF系统具有无与伦比的规模效率,使复杂的RLHF训练快速、价格实惠,易于面向AI社区的访问。
例如,DeepSpeed-HE在效率上比现有系统快15倍以上,可以在Azure云上分别在9小时内和18小时内以低于300美元和600美元的价格来训练OPT-13B和OPT-30B模型。
卓越的可扩展性:DeepSpeed-HE支持具有数百亿参数的模型,并且可以在多节点多GPU系统上实现卓越的可扩展性。因此,即使是一个13B模型也可以在1.25小时内进行训练,巨大的175B模型也可以在不到一天的时间内使用DeepSpeed-HE进行训练。
一些重要细节:
上面两个表格中的数字是针对训练的第三步,基于在DeepSpeed-RLHF精选数据集和训练配方上实际测量的训练吞吐量,这个配方对总共1.35亿个标记进行了一个时期的训练。
微软总共使用了 6750万个查询标记(具有256个序列长度的131.9k个查询)和6750万个生成标记(具有256个序列长度的131.9k个答案),每步的最大全局批处理大小为0.5M标记(1024个查询-答案对)。
自定义RLHF训练
仅用一个GPU,DeepSpeed-HE支持训练具有超过130亿个参数的模型,使得没有多GPU系统访问权限的数据科学家不仅可以创建玩具RLHF模型,还可以创建大型且强大的模型,可用于实际应用场景。
Deep Speed Chat 技术梳理
ChatGPT模型的训练是基于InstructGPT论文中的RLHF方式,这使得现有深度学习系统在训练类ChatGPT模型时存在种种局限。
而现在,通过Deep Speed Chat可以突破这些训练瓶颈,达到最佳效果。
DeepSpeed-Chat中端到端的训练流程,如下图所示:
Deep Speed Chat 在成本、效率、扩展性等方面非常优秀,目前在 Azure 云上的测试,只需花费不到 300 美元和 600 美元即可完成对 OPT-13B 模型和 OPT-30B 模型的训练。
总结
微软此次开源 Deep Speed Chat 对整个 ChatGPT 生态发展起到了至关重要的推动作用。
Hacker News的用户总结说,微软不仅向OpenAI投资了100亿美元,同时还为公众提供一种免费工具,帮助他们研发OpenAI同款产品。也有用户认为,微软选择开源DeepSpeed Chat,是为了在业内获得先发优势。
还有用户认为这一系统框架前景可期,“我可以预见,未来每家公司都会拥有自己的‘AI模型助理’,其能够定期对公司内部数据进行培训或更新。公司的电子邮件、slack/team消息、文档等或许都将成为AI模型的数据来源。”
远景总是美好的,而当下用户还可以通过"傻瓜化"的 Deep Speed Chat 能以最短的时间、最高效的成本训练类 ChatGPT 大语言模型,这标志着一个人手一个 ChatGPT 的时代已经来了。
作者:场长
本文为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。