GitHub 又一黑科技项目诞生,成功复现 ChatGPT 完整流程!

9cc151008d5d96e648a74d5c26f59c3e.png

来源:脑机转口社区
本文约3800字,建议阅读7分钟GitHub 知名开源项目 Colossal-AI 快速跟进,成功做出了首个开源低成本复现 ChatGPT 完整流程!

cad42826dae3d6bf92cd0170360315cf.png

近日,火爆全网的 ChatGPT,仿佛开启了第四次工业革命,将微软、谷歌等全球科技巨头打得昏天黑地,引得各路玩家纷纷入局,抢占赛道。

然而由于 OpenAI 没有开源 ChatGPT,如何有效复现 ChatGPT 已成为摆在大家面前的头号难题,急需可靠的开源共建方案。

GitHub 知名开源项目 Colossal-AI 快速跟进,成功做出了首个开源低成本复现 ChatGPT 完整流程!

作为当下最火热的开源 AI 大模型解决方案,Colossal-AI 已收获开源社区 GitHub Star 近万颗,此次开源亮点包括:

  • 开源完整基于 PyTorch 的 ChatGPT 复现流程,涵盖全部 3 个阶段,可实现从预训练模型到 ChatGPT 的蜕变;

  • 体验最小 demo 训练流程最低仅需 1.62GB 显存,任意单张消费级 GPU 即可满足,单卡模型容量最多提升 10.3 倍

  • 相比原生 PyTorch,最高可提升单机训练速度 7.73 倍,单卡推理速度 1.42 倍,一行代码即可使用;

  • 对于微调任务,可最多提升单卡的微调模型容量 3.7 倍,同时保持高速运行,仅需一行代码;

  • 提供单卡、单机多卡、1750 亿参数等多个版本,支持从 Hugging Face 导入 OPT,GPT-3,BLOOM 等多种预训练大模型;

  • 收敛验证正在进行中,该项目也在吸引合作者共建生态。

GitHub 项目地址:

https://github.com/hpcaitech/ColossalAI


ChatGPT——AIGC 引发的工业革命

如果问新年伊始,最火爆的科技热点是什么?非 ChatGPT 莫属。

它仿佛无所不能的六边形战士,可以聊天、写代码、修改 bug、做表格、发论文、写作业、做翻译、甚至代替 Google 搜索引擎等……

自发布以来,ChatGPT 便已摧枯拉朽之势席卷各个行业,不仅 5 天时间便突破百万用户,月活用户突破 1 亿更是仅用时 2 个月,成为史上增速最快的消费级应用,远超如今其他知名应用,如 Twitter 5 年、Meta(Facebook)4 年半,TikTok 9 个月等,而手机普及到 1 亿用户则用了 16 年。

13831eec6f82bf96dc4e620204b67e5c.png1 亿用户月活用户耗时

比尔・盖茨盛赞 “ChatGPT 的意义不亚于 PC 和互联网诞生”,而微软 CEO 萨蒂亚・纳德拉(Satya Nadella)更是直言 “堪比工业革命,这辈子第一次见这么大的技术浪潮” 和 “AI 正在重塑互联网”。

作为向 OpenAI 投资上百亿美元的大金主,微软已火速将 ChatGPT 整合进自家的搜索引擎必应 Bing 和 Edge 浏览器,还计划加入 Teams 以及 Office 等办公套件全家桶,股价一夜市值飙涨超 800 亿美元。

bbbc87b763c22cc79c1828ecfe1b5920.png

微软与谷歌发布会后股价对比

而隔壁需要担心被 ChatGPT 革命掉自家搜索引擎的谷歌,虽然拉响 “红色警报”,紧急发布对标竞品 Bard,却因 Demo 首秀翻车,股价市值瞬间蒸发 1000 亿美元。

一夜之间,全球的科技巨头们仿佛都回到了自己年轻时的样子,纷纷宣布要打造自己的 ChatGPT。

但 ChatGPT 发布已有数月,市面上不仅没有预训练权重开源,连可靠的完整开源训练流程都仍是空白,更无法实现基于千亿大模型的 ChatGPT 全流程高效搭建和应用。临时上线,号称 “对标 ChatGPT” 的一众新品们,因为闭源也难辨真伪。

为什么 ChatGPT 有如此魔力?复现它又有哪些难点?

ChatGPT 技术分析

ChatGPT 的惊人效果,重要特征是在训练过程引入人类反馈强化学习(RLHF),使得模型表现更符合人类价值观。

ChatGPT 的训练流程主要分为三个阶段:

  1. 从 Prompt 库中采样,收集其人工回答,利用这些数据来微调预训练大语言模型。

  2. 从 Prompt 库中采样,使用大语言模型生成多个回答,人工对这些回答进行排序后,训练奖励模型(RM),来拟合人类的价值判断。

  3. 基于阶段 1 的监督微调模型和阶段 2 的奖励模型,利用强化学习算法对大语言模型进一步训练。

其中阶段 3 是 RLHF 训练的核心部分,OpenAI 采用了强化学习中的近端策略优化算法(PPO),借此引入奖励信号,使得语言模型生成内容更加符合人类评判标准。

f742c13c52f1a36234889d52a5f887f3.png

RLHF 的三个阶段

ChatGPT 模型的复杂性在于强化学习的引入会带来更多模型的调用。例如,使用基于 Actor-Critic(AC)结构的 PPO 算法,需要在训练时进行 Actor、Critic 两个模型的前向推理和反向传播,以及监督微调模型、奖励模型的多次前向推理。

在 ChatGPT 基础的 InstructGPT 的论文中,Actor 和监督微调模型都使用了 1750 亿参数的 GPT-3 系列模型,Critic 和奖励模型则使用了 60 亿参数的 GPT-3 系列模型。

对于如此多的模型参数,想要启动原始 ChatGPT 训练流程,需要数千 GB 的显存开销,显然远超单张 GPU 的容纳能力,常见的数据并行技术也无能为力。但即使引入张量并行、流水并行对参数进行划分,也仍需至少 64 张 80GB 的 A100 作为硬件基础。并且,其中的流水并行由于 bubble 和调度复杂,效率受限,不适合 AIGC 的生成式任务。阶段 3 涉及 4 个模型的复杂强化学习训练流程,进一步给 ChatGPT 的代码复现带来了困难和挑战。

使用 Colossal-AI 低成本复现 ChatGPT

Colossal-AI 以开源方式复现了 ChatGPT 训练的基本流程,包括阶段 1 预训练,阶段 2 的奖励模型的训练,以及最为复杂的阶段 3 的强化学习训练等。

同时,Colossal-AI 通过 ZeRO,Gemini, Chunk-based 内存管理等技术,极大地降低 ChatGPT 训练的显存开销,仅需一半硬件资源即可启动 1750 亿参数模型训练(64 卡 ->32 卡),显著降低应用成本。若使用上述相同硬件资源,Colossal-AI 则能以更短时间进行训练,节省训练成本,加速产品迭代。

为了让更多开发者体验复现 ChatGPT 模型,除 1750 亿参数版本外,Colossal-AI 还提供高效的单卡、单机 4/8 卡的类 ChatGPT 版本,以降低硬件限制。

ab40d93f0254cf82a5918f666e0f338f.png

在单机多卡服务器上,即便使用最高端的 A100 80GB 显卡,由于 ChatGPT 的复杂性和内存碎片,PyTorch 最大仅能启动基于 GPT-L(774M)这样的小模型的 ChatGPT。用 PyTorch 原生的 DistributedDataParallel (DDP) 进行多卡并行扩展至 4 卡或 8 卡,性能提升有限。

Colossal-AI 不仅在单卡速度上训练和推理优势明显,随着并行规模扩大还可进一步提升,最高可提升单机训练速度 7.73 倍,单卡推理速度 1.42 倍,还可继续扩展至大规模并行,显著降低 ChatGPT 复现成本。

4f4f2d0c3f1e6d49fb25f24d714b0427.jpeg

为了尽可能降低训练成本和上手门槛,Colossal-AI 还提供了在单张 GPU 上即可尝试的 ChatGPT 训练流程。相比于 PyTorch 在约 10 万元的 A100 80GB 上,最大仅能启动 7.8 亿参数模型,Colossal-AI 将单卡容量提升 10.3 倍至 80 亿参数。对于基于 1.2 亿参数小模型的 ChatGPT 训练,最低仅需 1.62GB 显存,任意单张消费级 GPU 即可满足。

e3698d11c03e2b5ff258b46b853818b9.jpeg

此外,Colossal-AI 也致力于降低基于预训练大模型的微调任务成本。以 ChatGPT 可选的开源基础模型 OPT 为例,相比 PyTorch,Colossal-AI 可将提升单卡微调模型容量 3.7 倍(原始计算量显著增大),同时保持高速运行。

一行代码快速上手

Colossal-AI 为 Hugging Face 社区的 GPT,OPT 和 BLOOM 等主流预训练模型,提供了开箱即用的 ChatGPT 复现代码。以 GPT 为例,仅需一行代码,指定使用 Colossal-AI 作为系统策略即可快速使用。

from chatgpt.nn import GPTActor, GPTCritic, RewardModel
from chatgpt.trainer import PPOTrainer
from chatgpt.trainer.strategies import ColossalAIStrategystrategy = ColossalAIStrategy(stage=3, placement_policy='cuda')with strategy.model_init_context():actor = GPTActor().cuda()critic = GPTCritic().cuda()initial_model = deepcopy(actor).cuda()reward_model = RewardModel(deepcopy(critic.model)).cuda()trainer = PPOTrainer(strategy, actor, critic, reward_model, initial_model, ...)
trainer.fit(prompts)

使用下列命令,即可快速启动单卡、单机多卡、1750 亿版本训练,并测试各种性能指标(包括最大显存占用、吞吐率和 TFLOPS 等):

# 使用单机单卡训练GPT2-S,使用最小的batch size,Colossal-AI Gemini CPU策略
torchrun --standalone --nproc_pero_node 1 benchmark_gpt_dummy.py --model s --strategy colossalai_gemini_cpu --experience_batch_size 1 --train_batch_size 1# 使用单机4卡训练GPT2-XL,使用Colossal-AI Zero2策略
torchrun --standalone --nproc_per_node 4 benchmark_gpt_dummy.py --model xl --strategy colossalai_zero2# 使用4机32卡训练GPT-3,使用Colossal-AI Gemini CPU策略
torchrun --nnodes 4 --nproc_per_node 8 \
--rdzv_id=$JOB_ID --rdzv_backend=c10d --rdzv_endpoint=$HOST_NODE_ADDR \
benchmark_gpt_dummy.py --model 175b --strategy colossalai_gemini_cpu --experience_batch_size 1 --train_batch_size 1

背后优化

核心系统 Colossal-AI

复现 ChatGPT 的背后,依赖面向大模型时代的通用深度学习系统 Colossal-AI,可基于 PyTorch 高效快速部署 AI 大模型训练和推理,降低 AI 大模型应用成本。

自开源以来,Colossal-AI 已经多次在 GitHub 热榜位列世界第一,获得 GitHub Star 超八千颗,并成功入选 SC、AAAI、PPoPP、CVPR 等国际 AI 与 HPC 顶级会议的官方教程。除上述优化外,Colossal-AI 还针对 AI 大模型趋势,提供最多样和高效的大规模多维并行分布式解决方案,此前已在 Stable Diffusion、OPT、AlphaFold 等前沿模型上展现卓越优势。

41f10fcafdc686b4e70a203a585bfeff.jpeg

Colossal-AI 与当今主要开源项目同期开源数据对比

Colossal-AI 由加州伯克利大学杰出教授 James Demmel 和新加坡国立大学校长青年教授尤洋领导。相关解决方案已成功在自动驾驶、云计算、零售、医药、芯片等行业知名厂商落地应用,广受好评。Colossal-AI 已成功帮助某世界 500 强企业,开发具备在线搜索引擎能力增强的类 ChatGPT 聊天机器人模型。

低成本微调的 LoRA

Colossal-AI 支持使用低秩矩阵微调(LoRA)方法进行高效微调。LoRA 方法认为大语言模型是过参数化的,其在微调中的参数改变量是一个低秩的矩阵,可以将其分解为两个更小的的矩阵的乘积,即。在微调时,固定大模型参数,只调整低秩矩阵参数,从而显著减小训练参数量。在微调之后,进行推理部署之前,只需要将参数加回原有矩阵即可,即 , 不增加模型的推理延迟。

3220d13023a8bf61fd7f67c42ffa5e6d.pngLoRA 示意图,仅需训练 A、B

减少内存冗余的 ZeRO + Gemini

Colossal-AI 支持使用无冗余优化器 (ZeRO) 来优化内存使用,这种方法可以有效减少内存冗余,并且相比传统的数据并行策略,不会牺牲计算粒度和通信效率,同时可以大幅提高内存使用效率。

为了进一步提升 ZeRO 的性能,Colossal-AI 引入了自动 Chunk 机制。通过将运算顺序上连续的一组参数存入同一个 Chunk 中(Chunk 是一段连续的内存空间),可以确保每个 Chunk 的大小相同,从而提高内存使用效率。使用 Chunk 方式组织内存可以保证 PCI-e 和 GPU-GPU 之间的网络带宽得到有效利用,减小通信次数,同时避免潜在的内存碎片。

faa89304e1cdc60d071ae8fc0c229dc2.pngChunk 机制

此外,Colossal-AI 的异构内存空间管理器 Gemini 支持将优化器状态从 GPU 卸载到 CPU ,以节省 GPU 内存占用。可以同时利用 GPU 内存、CPU 内存(由 CPU DRAM 或 NVMe SSD 内存组成)来突破单 GPU 内存墙的限制,进一步扩展了可训练模型规模。

1b25b221cd874548edeb7ea4dbfa4443.png通过 ZeRO + Gemini 提升硬件的模型容量


开放协作

尽管此次开源包含了复现 ChatGPT 的完整算法流程和必要软件系统,但对于像 ChatGPT 这样的超大 AI 大模型,想要实际落地应用,还需要数据、算力至少 2 方面的努力。毕竟训练一个 1750 亿参数的 GPT-3 就需要数百万美元算力。因此,长期以来预训练大模型都由少数大型私营科技公司垄断。

好在开源社区已成功进行了新的尝试。例如,完全开放代码、数据集、权重的 1760 亿参数的 BLOOM 模型,共有来自全球 60 个国家、超过 250 个机构,以及超过 1000 名研究人员参与其中,其中包括以个人名义参加的 Meta、谷歌等大厂员工。而前段时间大火的开源图文生成模型 Stable Diffusion,也是由 Stability AI、EleutherAI 和 LAION 等组织共同完成的。

借鉴上述成功模式,该项目也在吸引更多的合作者:无论是个人开发者,还是算力、数据、模型等可能合作方,都有机会参与其中,大显身手,以复现 ChatGPT 为起点,拥抱大模型时代!

可通过以下方式联系或参与:

  1. 在 GitHub 发布 issue 或提交 PR;

  2. 加入 Colossal-AI 用户微信或 Slack 群交流;

  3. 点击阅读原文填写合作提案;

  4. 发送合作提案到邮箱 contact@hpcaitech.com

GitHub 地址:

https://github.com/hpcaitech/ColossalAI

参考链接:

https://www.hpc-ai.tech/blog/colossal-ai-chatgpt

编辑:于腾凯

校对:王欣

52ed355bd5e8468273c650cc1734449b.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/23858.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论文阅读:“Inpaint Anything: Segment Anything Meets Image Inpainting”

** Inpaint Anything: Segment Anything Meets Image Inpainting ** 论文地址:https://arxiv.org/abs/2304.06790 项目地址:https://github.com/geekyutao/Inpaint-Anything Abstract 尽管现代图像修复系统取得了显著的进展,但在mask选择…

从不自量力到 AI 助力,我如何翻译完一整本英文书

披露和声明: 本文提及的翻译作品系使用 AI 技术制作,并经人工调整,具体步骤如文中所述。本文在后期修改过程中使用 ChatGPT 辅助,目的为精简原版中的口语化表述。我的英文水平有限,翻译这本书主要是为了自我学习&…

玩赚小红书无货源电商,必备思路分享

一、怎么起盘小红书电商? 眼看着别人每天获得数万、数十万的爆单,但自己却不知道从何开始。小红书电商与去年的视频号搬运相似,不论是时间节点还是玩法,都如出一辙。它是当下最快速且相对稳定的变现项目。今年的小红书关键词只有…

成都建博会:家居行业数字营销金点子 句句戳心坎,先收藏

四月,不仅是人间最美天,也是第二季度的开始。随着气温上升,行业进入了活跃期。对于西南地区的家居行业从业者来说,来一趟一年一度的成都建博会,总能获得无尽的灵感,对后续更加充满期待。而与同行的交流&…

独角数卡--免费网店搭建详细教程

独角数卡介绍 独角数卡,一个开源免费的在线销售产品的平台,相当的强大,连支付下单接口都有了,而且很丰富。你应该见过类似这样的平台,一些虚拟产品,如软件、激活码和会员可以放在上面出售。简言之&#xf…

零碎笔记/博客推荐

零碎笔记 笔记spdkk8s坑点 时不时用到的博客命令博主推荐博客推荐知乎回答书籍推荐网站推荐 笔记 spdk k8s 部署Kubernetes(k8s)时,为什么要关闭swap、selinux、firewalld? docker service start failed docker正常安装成功,但是启动服务…

Task01:概览西瓜书+南瓜书第1、2章(2天)

Task01:概览西瓜书南瓜书第1、2章(2天) 打卡截止时间:2月15日03:00 学习建议:西瓜书第1章和第2章主要是讲一些基本概念和术语,大家自己看就好,不过第1章和第2章有一些知识点可以跳过不看&#x…

一键生成 PPT,斯坦福博士生自制PPT生成神器火了

Datawhale干货 AI工具:ChatBCG,编辑:机器之心 谁没有过为 PPT 熬夜的经历?现在,免费的一键生成 PPT 神器终于诞生了。 在即将过完的 12 月,相信很多人都在忙一件事:年终工作汇报。就像那句话说…

马斯克爆料Twitter裁了八成员工;OpenAI CEO:GPT-5根本不存在;小鹏被曝年终奖打0.5折 | AI一周资讯

来源: AI前线 微信号:ai-front 整理 | 凌敏 微软宣布开源 Deep Speed Chat;消息称软银旗下 Arm 启动赴美 IPO;国家网信办出台生成式 AI 管理办法;前理想 AI 芯片一号位骄旸加入三星,负责组建 GPU 团队…… 资 讯 Op…

标书怎么做?标书制作教程附标书制作思维导图

标书怎么做?标书制作教程附标书制作思维导图 现如今招标标项目已经成为一种常态,标书制作在大小公司都有需求,那么标书怎么做成为一种问题,网上标书制作教程多如牛毛如何才能找到合适自己的标书制作教程?今天小编分享…

招投标工作中投标书编制的流程是怎样的?

招标文件是操作机构的“招牌产品”,加强招标文件质量控制尤为重要。标书的制作及装订对于企业能否中标起着至关重要的作用,那么投标书编制的流程是怎样的呢? 1、投标书目录的确定 开始编制标书之前,目录的确定也是重要的一环。一…

如何软件项目电子投标

以下是电子投标具体流程: 大致流程:登录政采云 - 申请获得招标文件(完成投标报名) - 制作投标书 - 上传标书获得加密文件和备份文件 - 进入开标大厅 - 查看评标结果 其他以招标书要求为准 1、打开政府采购云平台,简称…

软件项目投标标书规范格式

实现___________系统 建设指导书 百育炎华公司 www.c1945.com 参考依据: 1.国家软件工程标准规范(2000) 2.ISO9001质量保证体系(1997) 3.CMM规范二级指导体系 第一分册 企业信息化目…

电子招投标——电子投标书制作教程

电子招投标简化了很多流程,因此在制作标书时也方便了许多。那么你是否知道电子投标书怎么制作和上传呢?中国招标网为大家带来电子投标书制作和上传方法分享,欢迎各位参考学习! 1.下载招标文件。登录网上的招标平台,找到要投标的项目&#xf…

如何制作标书?

大家都知道标书的制作及装订对于企业能否中标起着至关重要的作用,那么制作标书都有哪些要求,哪些细节,又如何制作出一个干净、整洁、美观的标书文件呢?下面小编给大家介绍下! 步骤如下: 1.做标书之前一定要…

Facebook广告营销指南!Facebook广告投放技巧与策略!新手教程

Facebook广告之所以具有强大的功能,是因为它们使您能够根据特定的兴趣,行为和人口统计信息,准确地定位理想的客户。这意味着您可以在最有可能购买产品的确切人群面前推广产品以获得订单。 但是,在Facebook广告上投入大量资金以实…

社交媒体客户服务软件,你的营销利器

如果您在 2023年拥有面向客户的电子商务业务,您的客户正在社交媒体上与您的客户交谈。Facebook,Line,WhatsApp和Instagram等社交平台为您的客户提供有用的双向沟通渠道。作为一家公司,您可以拥有合适的系统工具来监控、处理和优化…

海外社交媒体营销之Facebook如何进行推广?

海外社交媒体营销之Facebook如何进行推广? 1、优化Facebook的主页和粉丝数量 Facebook主页是你营销工作的起点,所以如果你想做更好的营销推广,你必须首先设计页面。 如果你的页面内容足够优化,当客户搜索你的品牌名称时&#x…

Facebook营销策略指南:跨境电商如何利用Facebook营销产品

Facebook 营销策略 Facebook是电商卖家最有效的营销手段之一,但与此同时,在Facebook上的广告竞争也是越来越激烈,跨境电商商家想要在激烈的竞争中脱颖而出,针对目标个性化的广告对跨境电商来说也就越来越重要。那接下来就给大家讲…

YOOV人事管理|2023年面临7大职场趋势,关系到管理者和HR

各种停摆浪潮席卷了2022年的职场生态,对于人力资源工作者来说,无论是判断员工的意向,或是组织面对的挑战,都愈来愈复杂。YOOV人事管理针对2023年,提出了7项观察,提醒雇主和HR应留意的未来工作趋势。 1.安静…