零門檻復(fù)現(xiàn)ChatGPT:預(yù)訓(xùn)練模型數(shù)據(jù)集直接用,包含完整RLHF流程
明敏 發(fā)自 凹非寺
量子位 | 公眾號(hào) QbitAI
這邊ChatGPT、GPT-4等AI大模型和應(yīng)用打得火熱;
另一邊“平替”開源復(fù)現(xiàn)方案也加緊更新迭代。
這不,“首個(gè)開源ChatGPT低成本復(fù)現(xiàn)流程”就來(lái)了波大更新!
現(xiàn)在,僅需不到百億參數(shù),利用RLHF簡(jiǎn)單微調(diào),模型即可掌握中、英雙語(yǔ)能力,達(dá)到與ChatGPT和GPT-3.5相當(dāng)?shù)男Ч?/p>
中文對(duì)話效果如下:

這就是ColossalChat。
由Colossal-AI推出。一個(gè)月前,Colossal-AI乘著ChatGPT熱潮火速開源了低成本復(fù)現(xiàn)流程。
而新升級(jí)的ColossalChat,以Meta最新開源的LLaMA為基礎(chǔ)預(yù)訓(xùn)練模型,能力更強(qiáng)、門檻還更低了:
- Demo:可直接在線體驗(yàn)?zāi)P托Ч瑹o(wú)需注冊(cè)或waitinglist
- 訓(xùn)練代碼:開源完整 RLHF 訓(xùn)練代碼,已開源至含7B、13B兩種模型
- 數(shù)據(jù)集:開源104K中、英雙語(yǔ)數(shù)據(jù)集
- 推理部署:4bit量化推理70億參數(shù)模型僅需4GB顯存
- 模型權(quán)重:僅需單臺(tái)服務(wù)器少量算力即可快速?gòu)?fù)現(xiàn)
- 更大規(guī)模模型、數(shù)據(jù)集、其他優(yōu)化等將保持高速迭代添加
要知道,模型開源、數(shù)據(jù)集、訓(xùn)練應(yīng)用成本、核心數(shù)據(jù)安全性等,是AI大模型浪潮下最被關(guān)注的一些問(wèn)題。ColossalChat針對(duì)于此,一次性給出了應(yīng)對(duì)方法。
由此,想要快速跟進(jìn)ChatGPT這輪技術(shù)浪潮,門檻又低了一些。
開源地址:https://github.com/hpcaitech/ColossalAI
包含完整 RLHF 流程
具體來(lái)看,ColossalChat的能力包括知識(shí)問(wèn)答、中英文對(duì)話、內(nèi)容創(chuàng)作、編程等。
和ChatGPT一樣,ColossalChat知道NBA和喬丹是誰(shuí):

會(huì)寫郵件,格式非常規(guī)范:

編程能力也不錯(cuò),能搞定算法:

據(jù)了解,為了能更逼近ChatGPT、GPT-4的驚艷效果,ColossalChat使用LLaMA作為預(yù)訓(xùn)練模型,并包含完整RLHF流程。
之所以這樣做,主要是因?yàn)楝F(xiàn)有開源方案都可被視為只得到了人類反饋強(qiáng)化學(xué)習(xí)(RLHF)中第一步的監(jiān)督微調(diào)模型,沒(méi)有進(jìn)行后續(xù)的對(duì)齊和微調(diào)工作。

△RLHF的三個(gè)階段
比如Meta 開源了LLaMA模型,其參數(shù)量從70億到650億不等,號(hào)稱130 億參數(shù)即可勝過(guò)1750億的GPT-3模型在大多數(shù)基準(zhǔn)測(cè)試的表現(xiàn)。
但是由于沒(méi)有被指令微調(diào)(instruct tuning),因此實(shí)際生成效果不夠理想。
斯坦福的Alpaca通過(guò)調(diào)用OpenAI API,以self-instruct方式生成訓(xùn)練數(shù)據(jù),使得僅有70億參數(shù)的輕量級(jí)模型以極低成本微調(diào)后,即可獲得媲美GPT-3.5這樣千億參數(shù)的超大規(guī)模語(yǔ)言模型的對(duì)話效果。
而ChatGPT、GPT-4效果好的一大關(guān)鍵就是將RLHF引入訓(xùn)練流程,才能讓生成內(nèi)容更符合人類價(jià)值觀。
因此,基于LLaMA模型,包含完整RLHF流程的類Chat模型復(fù)現(xiàn)方案 ColossalChat,可以稱得上是目前最接近ChatGPT原始技術(shù)路線的實(shí)用開源項(xiàng)目。
總結(jié)來(lái)看,和Alpaca相比較ColossalChat具備4個(gè)方面的優(yōu)勢(shì)。
第一、ColossalChat開源了第一個(gè)完整的RLHF pipeline,斯坦福Alpaca沒(méi)有做RLHF,也就是沒(méi)有做Stage2和3。
第二、ColossalChat采用了更多的指令數(shù)據(jù),質(zhì)量更好、范圍更大,并使用強(qiáng)化學(xué)習(xí)做了alignment使回答更接近人類。

第三、ColossalChat訓(xùn)練流程集成了Colossal-AI的諸多系統(tǒng)優(yōu)化,同等數(shù)據(jù)集和模型大小的訓(xùn)練速度可以比AIpaca快3倍左右,能讓科研人員和中小企業(yè)獨(dú)立訓(xùn)練部署自己的會(huì)話系統(tǒng)。
第四、ColossalChat采集了更多數(shù)據(jù)集:訓(xùn)練的英文一共 24M tokens,中文大約 30M tokens,總共約 54M tokens。其中ColossalChat自己收集的數(shù)據(jù)集英文 6M,中文 18M tokens。

訓(xùn)練數(shù)據(jù)集開源
數(shù)據(jù)集方面,ColossalChat開源了包含約10 萬(wàn)條問(wèn)答的中、英雙語(yǔ)數(shù)據(jù)集。
該數(shù)據(jù)集收集并清洗了社交平臺(tái)上人們的真實(shí)提問(wèn)場(chǎng)景作為種子數(shù)據(jù)集,利用self-instruct技術(shù)擴(kuò)充數(shù)據(jù),花費(fèi)約900美元進(jìn)行標(biāo)注。
對(duì)比其他self-instruct方法生成的數(shù)據(jù)集,該數(shù)據(jù)集的種子數(shù)據(jù)更加真實(shí)、豐富,生成的數(shù)據(jù)集涵蓋的話題更多。
該數(shù)據(jù)可以同時(shí)用于微調(diào)和RLHF訓(xùn)練。通過(guò)高質(zhì)量的數(shù)據(jù),ColossalChat能進(jìn)行更好地對(duì)話交互,同時(shí)支持中文。

△ColossalChat數(shù)據(jù)集收集流程
RLHF算法復(fù)現(xiàn)
RLHF第一步(Stage1)是supervised-fintuning,即使用上文提到的數(shù)據(jù)集進(jìn)行模型微調(diào)。
RLHF第二步(Stage2)訓(xùn)練了獎(jiǎng)勵(lì)模型,它通過(guò)對(duì)于同一個(gè)prompt的不同輸出進(jìn)行人工排序,得到對(duì)應(yīng)分?jǐn)?shù),監(jiān)督訓(xùn)練獎(jiǎng)勵(lì)模型。
RLHF第三步(Stage3)使用了強(qiáng)化學(xué)習(xí)算法,是訓(xùn)練流程中最復(fù)雜的一部分:

△RLHF-Stage3算法流程圖
在PPO部分,ColossalChat分為兩個(gè)階段進(jìn)行:
首先是Make Experience部分,利用SFT、Actor、RM、Critic模型計(jì)算生成Experience存入buffer中;之后是參數(shù)更新部分,利用Experience計(jì)算策略損失和價(jià)值損失。
在PTX部分,ColossalChat計(jì)算Actor輸出response和輸入語(yǔ)料的回答部分的交叉熵?fù)p失函數(shù),用來(lái)在PPO梯度中加入預(yù)訓(xùn)練梯度,以保持語(yǔ)言模型原有性能防止遺忘。最后將策略損失、價(jià)值損失和 PTX 損失加和進(jìn)行反向傳播和參數(shù)更新。
快速上手
ColossalChat開源了基于 LLaMA 模型,復(fù)現(xiàn)訓(xùn)練 ChatGPT 三個(gè)階段的完整代碼。
第一階段,訓(xùn)練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第二階段,訓(xùn)練獎(jiǎng)勵(lì)模型:
# 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第三階段,使用RL訓(xùn)練:
# 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在獲得最終模型權(quán)重后,還可通過(guò)量化降低推理硬件成本,并啟動(dòng)在線推理服務(wù),僅需單張約4GB顯存的GPU即可完成70億參數(shù)模型推理服務(wù)部署。
python server.py /path/to/pretrained --quant 4bit --gptq_checkpoint /path/to/coati-7b-4bit-128g.pt --gptq_group_size 128
系統(tǒng)性能優(yōu)化與開發(fā)加速
ColossalChat能夠快速跟進(jìn)ChatGPT完整RLHF流程復(fù)現(xiàn),離不開AI大模型基礎(chǔ)設(shè)施Colossal-AI及相關(guān)優(yōu)化技術(shù)的底座支持,相同條件下訓(xùn)練速度相比Alpaca采用的FSDP(Fully Sharded Data Parallel) 可提升3倍以上。
系統(tǒng)基礎(chǔ)設(shè)施Colossal-AI
AI大模型開發(fā)系統(tǒng)Colossal-AI為該方案提供了基礎(chǔ)支持,它可基于PyTorch高效快速部署AI大模型訓(xùn)練和推理,從而降低AI大模型應(yīng)用的成本。
Colossal-AI由加州伯克利大學(xué)杰出教授James Demmel和新加坡國(guó)立大學(xué)校長(zhǎng)青年教授尤洋領(lǐng)導(dǎo)開發(fā)。
自從它開源以來(lái),Colossal-AI已經(jīng)多次在GitHub熱榜位列世界第一,獲得GitHub Star約兩萬(wàn)顆,并成功入選SC、AAAI、PPoPP、CVPR、ISC等國(guó)際AI與HPC頂級(jí)會(huì)議的官方教程。
減少內(nèi)存冗余的ZeRO+Gemini
Colossal-AI支持使用無(wú)冗余優(yōu)化器 (ZeRO) 提高內(nèi)存使用效率,低成本容納更大模型,同時(shí)不影響計(jì)算粒度和通信效率。
自動(dòng)Chunk機(jī)制可以進(jìn)一步提升ZeRO的性能,提高內(nèi)存使用效率,減少通信次數(shù)并避免內(nèi)存碎片。
異構(gòu)內(nèi)存空間管理器Gemini支持將優(yōu)化器狀態(tài)從GPU顯存卸載到CPU內(nèi)存或硬盤空間,以突破GPU顯存容量限制,擴(kuò)展可訓(xùn)練模型的規(guī)模,降低AI大模型應(yīng)用成本。
使用LoRA低成本微調(diào)
Colossal-AI支持使用低秩矩陣微調(diào)(LoRA)方法,對(duì)AI大模型進(jìn)行低成本微調(diào)。
LoRA方法認(rèn)為大語(yǔ)言模型是過(guò)參數(shù)化的,而在微調(diào)時(shí),參數(shù)改變量是一個(gè)低秩矩陣。
因此,可以將這個(gè)矩陣分解為兩個(gè)更小的矩陣的乘積。
在微調(diào)過(guò)程中,大模型的參數(shù)被固定,只有低秩矩陣參數(shù)被調(diào)整,從而顯著減小了訓(xùn)練所需的參數(shù)量,并降低成本。
低成本量化推理

△GPTQ量化
為降低推理部署成本,Colossal-AI使用GPTQ 4bit量化推理。
在GPT/OPT/BLOOM類模型上,它比傳統(tǒng)的RTN(rount-to-nearest) 量化技術(shù)能夠獲得更好的Perplexity效果。相比常見的FP16推理,它可將顯存消耗降低75%,只損失極少量的吞吐速度與Perplexity性能。
以ColossalChat-7B為例,在使用4bit量化推理時(shí),70億參數(shù)模型僅需大約4GB顯存即可完成短序列(生成長(zhǎng)度為128)推理,在普通消費(fèi)級(jí)顯卡上即可完成(例如RTX 3060 Laptop),僅需一行代碼即可使用。
if args.quant == '4bit':
model = load_quant(args.pretrained, args.gptq_checkpoint, 4, args.gptq_group_size)如果采用高效的異步卸載技術(shù)(offload),還可以進(jìn)一步降低顯存要求,使用更低成本的硬件推理更大的模型。
開放協(xié)作
不過(guò)目前由于算力和數(shù)據(jù)集有限,在部分場(chǎng)景下的實(shí)際性能還有提升空間。
比如還是會(huì)被弱智吧問(wèn)題難住:

而在這輪技術(shù)浪潮中,除了科技巨頭們,PyTorch、Hugging Face和OpenAI等開源社區(qū)與初創(chuàng)企業(yè)也起到了關(guān)鍵作用。
借鑒這些成功經(jīng)驗(yàn),Colossal-AI也歡迎各方參與共建,并給出了多種參與方式:
- 在GitHub發(fā)布issue或提交pull request (PR)
- 加入Colossal-AI用戶微信或Slack群交流
- 發(fā)送正式合作提案到郵箱youy@comp.nus.edu.sg
如果你對(duì)這項(xiàng)工作感興趣,可以趕快和他們?nèi)〉寐?lián)系~
開源地址:
https://github.com/hpcaitech/ColossalAI參考鏈接:
https://medium.com/@yangyou_berkeley/colossalchat-an-open-source-solution-for-cloning-chatgpt-with-a-complete-rlhf-pipeline-5edf08fb538b
— 完 —
量子位 QbitAI · 頭條號(hào)簽約
隨便看看:
- [業(yè)內(nèi)]新方法可利用噬菌體精準(zhǔn)治療尿路感染
- [業(yè)內(nèi)]復(fù)興號(hào)智能動(dòng)車組試跑福廈高鐵
- [業(yè)內(nèi)]幫助農(nóng)產(chǎn)品走出原產(chǎn)地,蘇寧易購(gòu)為供銷云倉(cāng)提供物流支持
- [業(yè)內(nèi)]我國(guó)建立起全球覆蓋溫室氣體排放規(guī)模最大的碳市場(chǎng)
- [業(yè)內(nèi)]北京打造機(jī)器人產(chǎn)業(yè)集群 將構(gòu)建“1+4”產(chǎn)品體系
- [業(yè)內(nèi)]海南自貿(mào)港:顏值之外有“研值”
- [業(yè)內(nèi)]蘇寧易購(gòu)發(fā)布清涼+爆品指南 空氣循環(huán)扇成爆款品類
- [業(yè)內(nèi)]中國(guó)職業(yè)技能人才迎來(lái)新發(fā)展機(jī)遇
- [業(yè)內(nèi)]我國(guó)將從嚴(yán)從緊控制現(xiàn)代煤化工產(chǎn)能規(guī)模
- [業(yè)內(nèi)]北京文化論壇參會(huì)者熱議:科技如何讓文化“活”起來(lái)
相關(guān)推薦:
網(wǎng)友評(píng)論:
推薦使用友言、多說(shuō)、暢言(需備案后使用)等社會(huì)化評(píng)論插件
- 力德動(dòng)力30kw微渦發(fā)電機(jī)成功完成高原考核
- 突破溫度與凈化邊界,美的空氣機(jī)打造舒適生活空間
- 原創(chuàng)科技守味二十四節(jié)氣!卡薩帝冰箱濟(jì)南啟動(dòng)非遺守護(hù)
- 最新盤點(diǎn)!中國(guó)超聲波焊接機(jī)TOP10,首位靈科,其
- 科技與美學(xué)的突破:伯恩光學(xué)聯(lián)合三星重塑智能手機(jī)形態(tài)
- 阿爾西溫控技術(shù)自主破局!國(guó)產(chǎn)創(chuàng)新撕破海外壟斷壁壘,
- 樂(lè)創(chuàng)技術(shù)五軸點(diǎn)膠+視覺(jué)補(bǔ)償:破解AR/VR光學(xué)模塊
- 臺(tái)易探針
- 卓興半導(dǎo)體芯上印刷工藝:封裝新突破,攻克點(diǎn)膠印刷難
- 科技賦能民生福祉 金天國(guó)際以創(chuàng)新實(shí)踐助力國(guó)家戰(zhàn)略落
- 熱點(diǎn)搶先看|2024南方網(wǎng)通第二十五屆渠道商交流會(huì)
- 《大數(shù)據(jù)平臺(tái)云化改造實(shí)踐指南(2024)》發(fā)布,天
- 覺(jué)卿諦語(yǔ)智能科技在全國(guó)12355心理健康大會(huì)上展示
- 當(dāng)好“兩個(gè)稀土基地”建設(shè)主力軍,北方嘉軒永磁電機(jī)大
- 大模型助力工業(yè)智能化發(fā)展
- 工商業(yè)光伏發(fā)電施工指南-太陽(yáng)庫(kù)光伏
- 科技賦能,避震嬰兒車或成為行業(yè)硬通貨
- 龍旗科技進(jìn)軍AI PC市場(chǎng),激發(fā)行業(yè)創(chuàng)新活力
- 科技賦能教育:核桃編程亮相“科創(chuàng)中國(guó)·北京創(chuàng)新薈”
- 英偉達(dá)搶占高位,市場(chǎng)急需尋求新機(jī)遇,這三支AI股值