就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型

就说程序员的手速有多快吧 , 首个开源ChatGPT项目已经出现了!
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
基于谷歌语言大模型PaLM架构 , 以及使用从人类反馈中强化学习的方法(RLHF) , 华人小哥PhillipWang复刻了一个ChatGPT出来 。
项目GitHub星已经超过1.7k了 , 而且还在一路飙升ing 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
不过一反常态的是 , 网友们看到“开源ChatGPT”却没有火速开冲 , 反倒齐刷刷在发问:
这……有人能run?
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
开源了但没完全开?
项目的核心内容 , 是在PaLM架构上实现基于人类反馈的强化学习 。
其中 , PaLM(PathwaysLanguageModel)是谷歌在今年4月发布的5400亿参数全能大模型 , 基于Pathways系统训练 , BERT之父JacobDevlin为主要贡献者之一 。
PaLM可以完成写代码、聊天、语言理解等任务 , 并且在大多数任务上实现了SOTA少样本学习性能 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
另一个核心点是RLHF“从人类反馈中强化学习” 。
OpenAI提出InstructGPT时就用到了这一方法 , 它能让AI的回答更加符合情景要求 , 降低“有害性” 。
具体分三步:
第一步 , 找一些人写下示范答案 , 来微调GPT-3模型 , 训练监督模型baseline 。
第二步 , 收集某个问题的几组不同输出数据 , 由人类对几组答案进行排序 , 在此数据集上训练奖励模型 。
第三步 , 使用RM作为奖励函数 , 近端策略优化(PPO)算法微调GPT-3策略 , 以强化学习方法最大化奖励 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
ChatGPT使用的GPT-3.5 , 其中text-davinci-002就是在code-davinci-002的基础上 , 采用了InstructGPT训练方法改进得到 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
正是基于如上两方面核心内容 , 作者实现了ChatGPT的复刻 。
大致步骤有3步:
首先来训练一下PaLM , 就和其他自回归Transformer一样 。
第二……
等等 , 训练PaLM???这确定不是在开玩笑?
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
现在明白为啥大家都觉得这个开源项目完全不能run了……
打个不恰当的比方 , 这就像如果想吃熊肉 , 那先自己去打头熊来 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
项目中只有PaLM架构和代码 , 没有预先训练好的权重 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
所以完成第一步 , 大概效果就是……
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型
文章图片
话虽如此 , 但还是继续接着往下看看……
第二步 , 就要训练基于RLHF的奖励模型了 。 作者使用的是一种轻量级训练大语言模型方法LoRA , 这种方法是开源的 。
然后 , 再把之前训练好的模型和奖励模型用强化学习进行微调 。
就说程序员的手速有多快吧|首个“开源chatgpt”来了:基于谷歌5400亿参数大模型】经过这三步后 , 就能得到一个开源版的ChatGPT了 。
这中间面临的问题包括巨大的计算量、超大模型和难收集的文本……所以有人也不免发问:
有没有一种可能 , 它也没啥用?