一 起因
ChatGPT的大火让许多人意识到只要模型足够大,数据足够多,机器完全能够通过图灵测试,实现与人类沟通的意愿。然而,一方面由于ChatGPT太过于消耗算力,常人消耗不起,另一方面,openAI公司也并没有开源ChatGPT的算法,这导致许多人无法定制个性化的ChatGPT。好在,还是有许多有识之士在降低定制化ChatGPT的门槛。这里,我将介绍一个开源的模型dolly,仅仅一张3060Ti,我们就可以实现穷人版的ChatGPT。
二 正文
2.1 模型地址
那么,首先最重要的事情,必然是介绍这个模型的网址啦
2.2 该模型简介
Databricks 的 Dolly 是一种遵循指令的大型语言模型,在已获得商业使用许可的 Databricks 机器学习平台上进行训练。基于 pythia-12b,Dolly 在 InstructGPT 论文的能力域中接受了 Databricks 员工生成的约 15k 指令/响应微调记录 databricks-dolly-15k 的训练,包括头脑风暴、分类、封闭 QA、生成、信息提取、开放 QA 和总结。dolly-v2-12b 不是最先进(虽然不是最先进的,但是我认为该模型在打破ChatGPT科技垄断方面的意义举足轻重)的模型,但确实表现出令人惊讶的高质量指令遵循行为,而不是它所基于的基础模型的特征。Databricks 致力于确保每个组织和个人都能从人工智能的变革力量中受益。Dolly 模型系列代表了我们在这一旅程中迈出的第一步,我们很高兴与全世界分享这项技术(这才是开源世界的精神,当然,我也还是继续该模型在开源的基础上进行商业化,毕竟不商业化的体系都走不长远)。该模型可在 Hugging Face 上以 databricks/dolly-v2-12b 的形式获得。
2.3 模型构建
那么,接下来,就要介绍如何使用这一模型来进行我们私人的ChatGPT构建了。至于torch包的安装,读者可以见这篇推文《docker镜像之RoseTTAFold运用》PS:首先,如果读者手中的显卡运算能力低于3060Ti,建立运行databricks/dolly-v2-3b,因为12b需要的并行运算能力要高于3060Ti。其次,建议读者使用仓库作者提供的建议,运行torch.float16选项将数据压缩,否则,即使是3060Ti也无法满足模型加载需求。
之后,你就可以使用该模型来回答一系列的问题了。下面则是笔者询问的问题以及回答的答案。
需要注意的是,笔者并未对模型进行训练,而是使用仓库作者提供的微调模型直接进行使用的。
2.4 模型构建过程中遇到的问题
第一个错误
这是因为模型训练的时候使用了GPU和CPU两个单元,更改此错误的方法是构建模型的时候(pipeline)使用device参数,而不是device_map参数,并且device通过device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")指定
第二个错误
这个是因为我们使用的dolly-v2-3b模型并不是使用于仓库作者提出的torch.bfloat16数据压缩,而是使用torch.float16压缩即可
2.5 模型训练
至于为什么不从头训练来定制个私人贾维斯呢,主要也是因为穷。下面是仓库作者提供的训练过程
** 使用 4 个 A10(一张1.98万),一个 epoch 大约需要 7 个小时。
** 使用 8 个 V100(一张3到4万),一个 epoch 大约需要 3.5 小时。
或许啥时候显卡单价下降,笔者或许可以考虑摸透这个并继续出个教程哈。目前则是吃土都不够用来训练的,哈哈。
三 惯例小结
其实,笔者认为只有百家争鸣的AI竞赛才是真正有利于人类发展的AI发展模式,一家独家的AI发展则或造成技术垄断。然而,AI技术的发展或者不像其他行业,强者只会越来越强,弱者只会被直接淘汰,未来或许只有两到三家能够提供全方位的AI服务。不过,或者随着开源精神的深入人心,或许AI带来的技术垄断也能够被轻易化解也并非天方夜谭。PS: 希望普惠众人的定制版ChatGPT早点出现,这样科研民工或许可以少一点论文写作的烦恼!!这样,每个人都能拥有自己写作风格(避免重复)且不会出现语法错误(无需润色)的论文撰写助手了
四 公众号其他资源(方便读者使用)
本公众号开发的相关软件,Multi-omics Hammer软件和Multi-omics Visual软件欢迎大家使用。
Multi-omics Hammer软件下载地址:
https://github.com/wangjun258/Multi-omics-Hammer
Multi-omics Visual软件下载地址:https://github.com/wangjun258/Multi_omics_Visual/releases/tag/Multi_omics_Visual_v1.03
PS:因为本软件是用python脚本撰写,调用了部分依赖包,用户首次使用需要安装python以及对应的包,安装之后便可永久使用。
下面是本号在其他平台的账户,也欢迎大家关注并多提意见。
简书:WJ的生信小院
公众号:生信小院
博客园:生信小院
最后,也欢迎各位大佬能够在本平台上:1传播和讲解自己发表的论文;2:发表对某一科研领域的看法;3:想要达成的合作或者相应的招聘信息;4:展示自己以寻找博后工作或者博士就读的机会;5:博导提供博后工作或者博士攻读机会,都可以后台给笔者留言。希望本平台在进行生信知识分享的同时,能够成为生信分析者的交流平台,能够实现相应的利益互补和双赢(不一定能实现,但是梦想总得是有的吧)。
五 封面图