3090单卡5小时,每个人都能训练专属ChatGPT,港科大开源LMFlow

简介: 3090单卡5小时,每个人都能训练专属ChatGPT,港科大开源LMFlow


拥有自己的 AI 大模型!开源项目 LMFlow 支持上千种模型,提供全流程高效训练方案。


2022 年 11 月 30 日,OpenAI 推出 ChatGPT,令人没想到的是,这个对话模型在 AI 圈掀起一股又一股讨论狂潮。英伟达 CEO 黄仁勋将其比喻为人工智能领域的 iPhone 时刻;比尔・盖茨盛赞 ChatGPT 在人工智能历史上的意义不亚于 PC 或互联网的诞生。

尽管 ChatGPT 在各个方面表现惊人,但其高昂的训练成本以及海量的训练数据等,都给想要进入该领域的人设下层层关卡。就拿算力来说,ChatGPT 经由微软专门建设的 AI 计算系统训练,总算力消耗约为 3640 PF-days。而在推理阶段,以今年 1 月份独立访客平均数 1300 万计算,ChatGPT 对应的芯片需求为 3 万多块英伟达 A100 GPU,初始投入成本约为 8 亿美元,每天光是花掉的电费就要 5 万美元。就连科技巨头微软在帮 OpenAI 打造 ChatGPT 时都因为算力不足而被迫暂停了一些其他项目。

科技大厂尚且如此,对于普通人来说更是难上加难。

因此在 ChatGPT 问世的这段时间里,许多人开始对科研的方向和未来感到迷茫:如何能够参与通用人工智能研究,在这个新的时代找到自己的优势?很多人都希望有能力训练一个只属于自己的 AI 大模型,但尽管国内外已有许多类 GPT 产品,对于普通的学者、研究者和程序员来说,这样的产品仍不足以适应每一个人的需求。一方面,从头预训练的成本是我们普通人和小规模公司所无法承受的。另一方面,基于 API 的黑盒封装不是完美的解决方案。虽然我们可以很容易地基于 API 开发自己的应用,但使用效果和自定义程度往往不尽人意。因此,从头预训练和基于 API 开发都不是最佳方式。

接下来我们为大家介绍的开源项目 LMFlow,不需要从头预训练,只需要以 finetune 作为切入点即可。

项目地址:https://github.com/OptimalScale/LMFlow

项目介绍

该项目由香港科技大学统计和机器学习实验室团队发起,致力于建立一个全开放的大模型研究平台,支持有限机器资源下的各类实验,并且在平台上提升现有的数据利用方式和优化算法效率,让平台发展成一个比之前方法更高效的大模型训练系统。

此外,该项目的最终目的是帮助每个人都可以用尽量少的资源来训练一个专有领域的、个性化的大模型,以此来推进大模型的研究和应用落地。

在 LMFlow 的加持下,即便是有限的计算资源,也能让使用者针对专有领域支持个性化训练。基于 70 亿参数的 LLaMA,只需 1 张 3090、耗时 5 个小时,就可以训练一个专属于自己的个性化 GPT,并完成网页端部署。开源库作者们已经利用这个框架单机训练 330 亿参数的 LLaMA 中文版,并开源了模型权重用于学术研究。训练得到的模型权重可以通过该网页端即刻体验问答服务 (lmflow.com)。

lmflow.com 地址:http://lmflow.com/使用 LMFlow,你也有能力训练一个只属于自己的模型!每个人可以根据自己的资源合理选择训练的模型,用于问答、陪伴、写作、翻译、专家领域咨询等各种任务。模型和数据量越大,训练时间越长,效果越佳。目前该研究也在训练更大参数量(650 亿)和更大数据量的中文版模型,效果还会持续提升。

其实,很早之前 LMFlow 的作者们就已认识到 finetune 的重要性。InstructGPT [1] 中就涵盖了 supervised fine-tuning 和 alignment(比如 RLHF)这两种 finetune 技术。然而,目前的开源代码库要么聚焦于某个模型(比如 LLaMA [2]),要么聚焦于某种特定的技术(比如 instruction tuning)。还没有一个库能够支持在海量模型上快速应用多种 finetune 技术。

现在,LMFlow 迈出了这个方向的第一步。通常,ChatGPT 的训练包括至少以下几个步骤:pretrain → supervised tuning → instruction tuning → alignment。LMFlow 库利用现有的开源大模型,支持这套流程的所有环节和灵活组合。这意味着 LMFlow 库为我们建立了一条通向完整训练链的桥梁。

接下来我们来了解一下实际使用 LMFlow 的体验。使用体验

据作者介绍,LMFlow 拥有四大特性:可扩展、轻量级、定制化和完全开源。基于此,用户可以很快地训练自己的模型并继续进行二次迭代。这些模型不仅限于最近流行的 LLaMA,也包括 GPT-2、Galactica 等模型。

前面我们已经提到:基于该开源库,用户只需使用单卡 3090,就能对 LLaMA-7b 模型进行微调,用时 5 个小时训练得到一个能够流畅对话的问答模型。进一步,如果使用更多资源对更大的 LLaMA-33b 模型进行微调,即可大大提升回答的质量!不仅如此,在特定的专家领域(以医疗为例),只需微调 6 个 A100 * 天,就能够获得和 ChatGPT 相当甚至更好的效果。值得注意的是,ChatGPT 则具有 1750 亿的参数量,而这里性能相当的最小模型规模只有不到二十分之一,大大节约计算资源。

接下来是真正的上手实验。使用 conda 安装必要的依赖后,即可上手体验。

安装和准备数据集的过程非常顺利,如此便捷是因为作者们贴心地提供了一键下载数据集的方式。只需要运行一个 bash 脚本就能下载所需的数据集,非常方便!

准备好了数据集之后,接下来就是模型训练。训练过程也大大简化,普通用户只需要执行一次 bash 脚本,即可轻松完成(非常适合小白入坑)。作者们还开放了训练好的模型下载,如果你不想自己训练模型,可以下载作者提供的 checkpoint 并进行推理

cd output_modelsbash download.sh medical_ckptcd -

在此基础上,作者们还提供了基于 huggingface 模型或本地 checkpoint 的问答机器人脚本。一键运行即可与你训练的模型开始对话:

如果在使用过程中遇到任何问题,欢迎通过 github issue 或 github 主页的微信群联系作者团队。

在当下大家都纷纷投入到预训练大模型的竞赛中时,LMFlow 提供了一个很好的启示:大多数普通玩家没有预训练大模型的资源,但仍旧可以参与到这场使用和研究大模型的浪潮中来。正如他们的口号所说:「让每个人都能训得起大模型(Large Language Model for All)。」

参考文献[1] Ouyang, Long, et al. "Training language models to follow instructions with human feedback." Advances in Neural Information Processing Systems 35 (2022): 27730-27744.[2]  Touvron, Hugo, et al. "Llama: Open and efficient foundation language models." arXiv preprint arXiv:2302.13971 (2023).

相关文章
|
4月前
|
人工智能 自然语言处理 搜索推荐
微软开源基于ChatGPT的,超级文本代码智能体
【7月更文挑战第17天】微软的TaskWeaver是开源的LLM框架,聚焦领域特定数据分析与个性化需求。它以代码优先,将用户请求转为可执行代码,增强处理复杂任务的效率和准确性。通过用户定义插件实现定制,适应多种场景。然而,转化请求可能引入复杂性和错误,非技术用户使用插件有难度,且开源带来的安全与隐私问题需关注。[论文链接](https://arxiv.org/abs/2311.17541)**
64 4
|
1月前
|
机器学习/深度学习 人工智能 并行计算
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
DeepSpeed Chat 是一款革命性的平台,专为简化和加速类ChatGPT模型的训练而设计。通过一键式脚本,用户可以轻松完成从预训练模型到生成自定义ChatGPT模型的全过程。该系统复刻了InstructGPT的RLHF训练方法,并集成了一系列优化技术,如DeepSpeed Hybrid Engine,大幅提升了训练效率和经济性。使用DeepSpeed Chat,即使是拥有数千亿参数的大模型,也能在短时间内完成训练,且成本显著降低。无论是单GPU还是多GPU集群环境,DeepSpeed Chat都能提供卓越的性能和易用性,让RLHF训练变得更加普及。
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
|
3月前
|
人工智能 开发者 芯片
【51单片机】单片机开发者的福音: 让AI看电路图帮你编写程序(使用ChatGPT 中训练好的单片机工程师模型)
使用AI大语言模型编写 单片机程序. 使用的是 OpenAI公司发布的 ChatGPT .在ChatGPT上有别人训练好的 单片机工程师 with Keil uVision 5 - C Code Explainer模型, 可以上传电路图改模型可以通过这个用户所给的电路图进行编程.
245 0
【51单片机】单片机开发者的福音: 让AI看电路图帮你编写程序(使用ChatGPT 中训练好的单片机工程师模型)
|
4月前
|
数据采集 编解码 人工智能
破解ChatGPT惊人耗电!DeepMind新算法训练提效13倍,能耗暴降10倍
【7月更文挑战第19天】DeepMind的JEST算法革新AI训练,提升效率13倍,节能10倍。通过联合数据批次选择,预训练指导及多分辨率训练,优化资源利用,降低能耗。实验显示性能提升,达到SOTA水平,但实施需大量资源,依赖优质参考模型。[论文链接](https://arxiv.org/pdf/2406.17711)
67 10
|
4月前
|
人工智能 边缘计算 算法
破解ChatGPT惊人耗电!DeepMind新算法训练提效13倍,能耗暴降10倍
【7月更文挑战第20天】DeepMind unveils Switch Transformer, revolutionizing AI energy consumption. This novel algorithm boosts training efficiency by 13x and slashes energy use by 10x compared to ChatGPT, marking a significant leap towards eco-friendly AI.
49 2
|
3月前
|
机器学习/深度学习 算法
ChatGPT 等相关大模型问题之收集数据并构建训练样本如何解决
ChatGPT 等相关大模型问题之收集数据并构建训练样本如何解决
|
5月前
|
机器学习/深度学习 人工智能 算法
【人工智能】第二部分:ChatGPT的架构设计和训练过程
【人工智能】第二部分:ChatGPT的架构设计和训练过程
152 4
|
6月前
|
机器学习/深度学习 数据采集 自然语言处理
【ChatGPT】ChatGPT是如何训练得到的?
【ChatGPT】ChatGPT是如何训练得到的?
|
6月前
|
人工智能 测试技术 开发者
马斯克将在本周,开源类ChatGPT产品Grok
【2月更文挑战第21天】马斯克将在本周,开源类ChatGPT产品Grok
80 1
马斯克将在本周,开源类ChatGPT产品Grok
|
6月前
|
人工智能 前端开发 API
借助chat-web前端开源项目搭建属于自己的ChatGPT镜像站
借助chat-web前端开源项目搭建属于自己的ChatGPT镜像站
496 0