ColossalChat:使用完整的 RLHF Pipeline复现ChatGPT 的开源解决方案

        ChatGPT、GPT-4等大型AI模型和应用在全球范围内风靡一时,成为技术产业革命和AGI(Artificial General Intelligence)发展的基础。 不仅科技巨头竞相发布新品,许多来自学术界和产业界的人工智能专家也加入了相关的创业浪潮。 生成式 AI 每天都在快速迭代,不断完善!

       然而,OpenAI 并没有将其模型开源,这让许多人对它们背后的技术细节感到好奇。

  1. 我们如何才能跟上潮流并参与这一技术发展浪潮?
  2. 如何降低构建和应用大型人工智能模型的高成本?
  3. 如何保护核心数据和IP不被第三方大模型API泄露?

      作为当今领先的开源大型人工智能模型解决方案,Colossal-AI 率先开源了完整的 RLHF 流水线,包括监督数据收集、监督微调、奖励模型训练和强化学习微调,基于 LLaMA预训练模型,分享最实用的开源项目ColossalChat,最接近ChatGPT原技术方案!

开源地址:https://github.com/hpcaitech/ColossalAI

 它包括以下内容:

Demo:无需注册或加入等候名单即可在线试用的交互式演示。
训练代码:开源完整的RLHF训练代码,包括7B和13B模型。
数据集:开源的104K中英文双语数据集。
推理:70 亿参数模型的 4 位量化推理,仅需要 4GB GPU 内存。
模型权重:在单台服务器上仅需少量算力即可实现快速复现。
将快速更新和添加其他更大的模型、数据集和其他优化。

可用模型,强大的功能(Affordable models, powerful capabilities)

ColossalChat只需要不到100亿个参数就可以达到中英文双语能力,通过在大语言模型基础上的RLHF微调,达到了与ChatGPT和GPT-3.5相当的效果。

例如,

一般知识测验

用中文回答 

写邮件 

 写一个算法

完整的 ChatGPT 克隆解决方案

虽然 GPT 系列中的模型,例如 ChatGPT 和 GPT-4,非常强大,但它们不太可能完全开源。 幸运的是,开源社区一直在努力解决这个问题。

例如,Meta 开源了 LLaMA 模型,它提供的参数大小从 70 亿到 650 亿不等。 在大多数基准测试中,一个 130 亿参数的模型可以胜过 1750 亿个 GPT-3 模型。 但是由于没有instruct tuning stage,实际生成的结果并不尽如人意。

斯坦福的AIpaca通过调用 OpenAI 的 API 以自我指导的方式生成训练数据。 这个轻量级模型只有 70 亿个参数,可以用一小部分成本进行微调,以实现类似于具有 1750 亿个参数的超大型语言模型(如 GPT-3.5)的会话性能。

然而,现有的开源解决方案在 RLHF(人类反馈强化学习)的第一阶段只能被视为有监督的微调模型,而不会执行后续的对齐和微调阶段。 此外,Alpaca 的训练数据集仅限于英语,这在一定程度上限制了模型的性能。

然而,ChatGPT 和 GPT-4 令人印象深刻的效果是由于在训练过程中引入了 RLHF,这增加了生成内容与人类价值观的一致性。

RLHF的三个阶段

ColossalChat基于LLaMA模型,是第一个包含完整RLHF过程复制ChatGPT-like模型的实用开源项目,是最接近ChatGPT原技术路线的项目!

训练数据集开源
ColossalChat 发布了一个双语数据集,其中包含大约 100,000 个中英文问答对。 该数据集是从社交媒体平台上的真实问题场景中收集和清理的,作为种子数据集,并使用自指导技术进行扩展,注释成本约为 900 美元。 与其他自我指导方法生成的数据集相比,该数据集包含更真实和多样化的种子数据,涵盖更广泛的主题。 该数据集适用于微调和 RLHF 训练。 在提供优质数据的情况下,ColossalChat 可以实现更好的对话交互,同时也支持中文。

ColossalChat 数据集收集过程

RLHF 算法fux

RLHF 算法复制涉及三个阶段:

在 RLHF-Stage1 中,使用前面提到的数据集进行监督指令微调以微调模型。

在 RLHF-Stage2 中,奖励模型被训练为通过手动对同一提示的不同输出进行排序来分配相应的分数,然后监督奖励模型的训练。

在 RLHF-Stage3 中,使用了强化学习算法,这是训练过程中最复杂的部分: 

在PPO部分,ColossalChat遵循两个阶段的过程:首先是make experience阶段,使用SFT(Supervised Fine-Tuning)、Actor、RM(Reward Model)和Critic模型计算生成的体验并存储在 缓冲。 然后是参数更新阶段,利用经验计算策略损失和价值损失。

在 PTX 部分,ColossalChat 计算了 Actor 的输出响应与输入语料库的响应部分之间的交叉熵损失。 这个loss用来在PPO梯度上加入预训练梯度,保持语言模型原有的性能,防止遗忘。 最后,将策略损失、价值损失和 PTX 损失相加用于反向传播和参数更新。

快速开始

ColossalChat开源了基于LLaMA模型分三阶段低成本复制ChatGPT的完整代码。

ColossalChat开源了基于LLaMA模型分三阶段低成本复制ChatGPT的完整代码。

在第 1 阶段,训练 SFT 模型: 

# Training with a 4-GPU servers
colossalai run — nproc_per_node=4 train_sft.py \
— pretrain “/path/to/LLaMa-7B/” \
— model ‘llama’ \
— strategy colossalai_zero2 \
— log_interval 10 \
— save_path /path/to/Coati-7B \
— dataset /path/to/data.json \
— batch_size 4 \
— accimulation_steps 8 \
— lr 2e-5

 在第 2 阶段,RM 被训练:

# Training with a 4-GPU servers
colossalai run — nproc_per_node=4 train_reward_model.py \
— pretrain “/path/to/LLaMa-7B/” \
— model ‘llama’ \
— strategy colossalai_zero2 \
— dataset /path/to/datasets

一旦得到微调后的模型权重,就可以通过量化降低推理的硬件成本,并可以推出在线推理服务,仅需单GPU约4GB显存即可部署70亿参数模型推理服务。第 3 阶段,使用 RL 算法进行训练:

# Training with a 8-GPU servers
colossalai run — nproc_per_node=8 train_prompts.py prompts.csv \
— strategy colossalai_zero2 \
— pretrain “/path/to/Coati-7B” \
— model ‘llama’ \
— pretrain_dataset /path/to/dataset

一旦得到微调后的模型权重,就可以通过量化降低推理的硬件成本,并可以推出在线推理服务,仅需单GPU约4GB显存即可部署70亿参数模型推理服务。

python server.py /path/to/pretrained — quant 4bit — gptq_checkpoint /path/to/coati-7b-4bit-128g.pt — gptq_group_size 128

系统性能优化与开发加速
 

ColossalChat能够快速跟进ChatGPT复制的完整RLHF流程,很大程度上得益于Colossal-AI的基础设施和相关优化技术的底层支持。 在同等条件下,ColossalChat 的训练速度与 Alpaca 使用的 FSDP(Fully Sharded Data Parallel)相比可以提升近三倍。

系统基础设施Colossal-AI


AI大模型开发系统Colossal-AI为该项目提供了基础支持。 可高效快速部署基于PyTorch的AI大模型训练和推理,降低AI大模型应用成本。 Colossal-AI 是基于加州大学伯克利分校特聘教授 James Demmel 教授和新加坡国立大学校长青年教授杨佑教授的专业知识开发的。 自开源以来,Colossal-AI以约20000个GitHub star多次登上GitHub Trending榜首,并成功被SC、AAAI、PPoPP、CVPR、 和国际学习中心。

零+Gemini 减少内存冗余

Colossal-AI 支持 ZeRO(零冗余优化器)以提高内存使用效率,能够以更低的成本容纳更大的模型,同时不影响计算粒度和通信效率。 自动分块机制可以通过提高内存使用效率、降低通信频率、避免内存碎片,进一步提升ZeRO的性能。 异构内存空间管理器Gemini支持将优化器状态从GPU内存卸载到CPU内存或硬盘空间,以克服GPU内存容量的限制,扩大可训练模型的规模,降低大型AI模型应用的成本。

LoRA的低成本微调

Colossal-AI 包括用于对大型模型进行低成本微调的低秩适应 (LoRA) 方法。 LoRA 方法假设大型语言模型是过度参数化的,并且微调期间的参数变化是一个低秩矩阵。 因此,这个矩阵可以分解为两个更小的矩阵的乘积。 fine-tuning时固定大模型的参数,只调整低秩矩阵的参数,显着减少训练所需的参数数量,降低成本。

Low-cost Quantized Inference

GPTQ quantization

为了降低推理部署的成本,Colossal-AI 使用 GPTQ 4 位量化推理。 在 GPT/OPT/BLOOM 模型上,它可以获得比传统 RTN(round-to-nearest)量化技术更好的 Perplexity 结果。 与普通的 FP16 推理相比,它可以减少 75% 的内存消耗,同时只牺牲少量的吞吐速度和 Perplexity 性能。

例如,使用ColossalChat-7B,使用4位量化推理,70亿参数模型只需要大约4GB的GPU内存就可以完成短序列(128长度生成)推理,这可以在普通的消费级GPU上完成 就像只有一行代码的 RTX 3060。

if args.quant == ‘4bit’:
model = load_quant(args.pretrained, args.gptq_checkpoint, 4, args.gptq_group_size)

 ColossalChat 与Alpaca

 ColossalChat 是第一个开源完整的 RLHF 流水线的,而斯坦福大学的 Alpaca 还没有实现 RLHF,这意味着他们不包括 Stage 2 和 Stage 3。
ColossalChat 展示了卓越的性能和更广泛的会话覆盖范围。 它的显着改进是由于使用了更大和更高质量的数据集,以及实施强化学习以使响应更接近于类人答案。
ColossalChat 的训练过程结合了 Colossal-AI 的各种系统优化,在使用相同的数据集和模型大小时,训练时间比 Alpaca 快约三倍。 这使研究人员和中小型企业能够独立训练和部署自己的聊天机器人。
ColossalChat 团队收集了一个更大的训练数据集,包括大约 2400 万个英文词条和 3000 万个中文词条,总共约 5400 万个词条。 值得注意的是,ColossalChat 独立收集了 600 万个英文代币和 1800 万个中文代币。
以下是 ColossalChat 和 Alpaca 在语言对话方面的一些性能对比。

 写一封电子邮件给教授以获得推荐信

局限性

虽然进一步引入了RLHF,但受限于算力和数据集,在某些场景下实际性能仍有提升空间。

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

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

相关文章

ChatGPT进化的秘密

本文作者,符尧 yao.fued.ac.uk,爱丁堡大学 (University of Edinburgh) 博士生,本科毕业于北京大学,与彭昊,Tushar Khot 在艾伦人工智能研究院 (Allen Institute for AI) 共同完成英文原稿,与剑桥大学郭志江…

如何利用ChatGPT API 搭建私人 AI会话

搭建私有ChatGPT 访问谷歌的方式自行解决一、Github域名和证书私有服务器开始搭建私有Open Ai 访问谷歌的方式自行解决 对不起,没有魔法者止步!没有 API 止步! 对不起,没有魔法者止步!没有 API 止步! 对不…

ChatGPT的50种神奇用法,让你从此告别低效率!

在这个快节奏的时代,我们都渴望提高自己的工作效率,让每一分每一秒都能创造价值。然而,面对琐碎繁杂的任务,我们常常感到力不从心,无法摆脱低效率的困扰。但是,有了ChatGPT的加持,一切都将不再是…

大学教授“偷用”ChatGPT帮学生写推荐信 成功斩获剑桥奖学金

虽然高校对ChatGPT的禁令逐渐放松,教授们也开始用ChatGPT提升工作效率,不过用AI辅助工作还是一个不能公开的秘密。 ChatGPT在教育界毁誉参半,老师认为AI让自己留的作业变得毫无意义,而学生则认为本来那些也是毫无意义的作业&…

ChatGPT专业应用:快速生成推荐信

正文共 634 字,阅读大约需要 4 分钟 猎头/招聘人士必备技能,您将在4分钟后获得以下超能力: 快速生成推荐信 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 | Lucy 编辑者 | Cindy ●此…

让ChatGpt可以看视频,看文档,帮你总结,并提供示例的github项目(附体验地址)

github地址:https://github.com/madawei2699/myGPTReader 演示 Stay updated with the latest news summaries daily with chatGPT. Use chatGPT to read and provide a summary of any webpage include the video(YouTube). 总之这个玩意有很多,可以…

景区剧本杀开发方案

景区剧本杀软件发展趋势包括以下几个方面: 个性化定制:随着用户需求的不断增加,景区剧本杀软件将更加注重个性化定制,满足不同用户的需求。 跨平台支持:景区剧本杀软件将逐渐实现跨平台支持,比如在…

情景剧本杀闯关系统

情景剧本杀闯关软件的开发需求通常包括以下几个方面: 剧本设计:开发者需要根据用户需求和市场调研,设计不同主题和难度等级的剧本内容,以及游戏过程中的任务、角色和道具等。 游戏引擎开发:为了实现游戏过程中…

2021年剧本杀专题研究报告

1. 从传统密室到剧本杀,线下实景娱乐形态持续迭代 1.1. 什么是剧本杀? 伴随着《明星大侦探》等推理综艺走红,近年以密室逃脱、剧本杀为代表的新兴线下娱乐方 式逐渐取代 KTV、传统桌游等成为最热门的线下游戏之一。根据艾瑞咨询&#xff0c…

学习玩调用方法后———自制剧本杀游戏

实现效果 英雄类代码 package hero;public class Hero {//静态特征String name; //姓名double aggressivity; //攻击力double defenf; //防御力double vitality; //生命力//构造方法//无参构造public Hero() {}//有参构造方法public Hero(Str…

儿童剧本杀行业是好生意吗?剧本杀门店管理系统

红楼梦、西游记、水浒传、三国演义是中国四大名著,几乎每个中国人上到70岁老人,下到十岁小学生都知道,同时还有花木兰、包青天、八仙过海等故事也都耳濡目染,小说描述的淋漓尽致,影视剧老戏骨们将每个角色刻画的深入人…

调戏chatGPT(三)逻辑推理

chatGPT已经被吹的神乎其神了,今天我来测试一下chatGPT的逻辑推理能力 t 你好 你好!很高兴能与您交流。 T 今天我想考考你的智力,看看你的逻辑思维能力如何 太好了!我非常乐意 t 一根质地不均匀的绳子完全烧完需要1小时…

基于文心大模型的剧本杀海报生成器(武侠篇)

★★★ 本文源自AI Studio社区精品项目,【点击此处】查看更多精品内容 >>> 基于文心大模型的剧本杀海报生成器(武侠篇) 一、技术路线 作为一个娱乐项目,剧本杀在近年来很快流行起来,本项目依托文心大模型,支持…

GitHub上小伙玩剧本杀假戏真做,没想到对方竟然是……

“我要去洗澡了,回头再说吧。” 本来还有些忐忑的我,看着这条消息不由愣了。 懂的都懂兄弟们,这就是妥妥被拒绝的一个大动作。 没什么,习惯就好(T▽T)。 啊呸,我的意思是:这只是在玩…

免费!ChatDOC文档阅读工具;AI电影美翻了;ChatGPT插件开发指南;Prompt编写模式速查 | ShowMeAI日报

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! 🤖 『10款 ChatGPT 开源替代品』GitHub 已斩获 70K Star! 🌍awesome totally open chatgpt 收集了 10 款 ChatGP…

英语 作文模板二 图表作文

1.第一段写法 稳步上升 on a steady rise. eg:新能源汽车充电桩的数量稳步上升,今年要突破100万大关 the number of charging system has been on a steady rise,passing the one million mark this year. 1.第一句 2.第二句 1.表格: 2.折线图 201…

英语 作文模板一

1.评分标准 1.第一段(阐明目的) 所有文章类型可替换内容 2.第二段 第一句 as引导让步状语从句,意为:虽然…但是、尽管 为了让sb了解到sth,我认为我的展示应该包含至少几点。 第二句 3.第三段 4.书信框架模板 2014年真题模板 1.感谢信 1.冬奥会感谢信…

体验最近火爆的ChatGPT,真的被震惊到了

前言 前几天OpenAI公布了ChatGPT算是火爆朋友圈,这个模型以对话方式进行交互,能够回答人们提出的问题、承认错误并拒绝一些不适当的请求。 GIS宇宙也是看到了各种文章写着什么谷歌要亡,百度要亡,取代StackOverflow的话语。 抱着半…

打造出ChatGPT的,是怎样一群人?

震惊世界的ChatGPT,要多少人才能开发出来?几百,还是几千? 答案是:87个人。 老实说,刚看到这个数字真是惊到我了,印象里,之前看媒体报道各大巨头人工智能人才储备时,动辄…

openAI国内的免费镜像网站列表分享

1.chatGPT可用镜像网站 1.1.ChatGPT For Free 地址:https://gpt4.gravityengine.cc/ 1.2.老北鼻AI智能助手 地址:https://739167295.ai201.live/ 1.3.AIChatOS 地址:https://chat.jinshutuan.com/#/chat/1684287150613 1.4.AIGPT …