0
本文作者: nebula | 2023-09-04 14:21 |
ChatGPT引發(fā)的大模型熱潮愈演愈烈,全球科技巨頭和明星初創(chuàng)爭(zhēng)相入局,打造以AI大模型為核心的競(jìng)爭(zhēng)力和多樣化商業(yè)使用需求。其中LLaMA系列模型,因良好的基礎(chǔ)能力和開(kāi)放生態(tài),已積累了海量的用戶和實(shí)際應(yīng)用案例,成為無(wú)數(shù)開(kāi)源模型后來(lái)者的模仿和競(jìng)爭(zhēng)的標(biāo)桿對(duì)象。
但如何降低類LLaMA2大模型預(yù)訓(xùn)練成本,如何基于LLaMA2通過(guò)繼續(xù)預(yù)訓(xùn)練和微調(diào),低成本構(gòu)建AI大模型實(shí)際應(yīng)用,仍是AIGC相關(guān)企業(yè)面臨的關(guān)鍵瓶頸。
作為全球規(guī)模最大、最活躍的大模型開(kāi)發(fā)工具與社區(qū),Colossal-AI再次迭代,提供開(kāi)箱即用的8到512卡LLaMA2訓(xùn)練、微調(diào)、推理方案,對(duì)700億參數(shù)訓(xùn)練加速195%,并提供一站式云平臺(tái)解決方案,極大降低大模型開(kāi)發(fā)和落地應(yīng)用成本。
開(kāi)源地址:https://github.com/hpcaitech/ColossalAI
Meta開(kāi)源的LLaMA系列大模型進(jìn)一步激發(fā)了打造類ChatGPT的熱情,并由此衍生出了諸多項(xiàng)目和應(yīng)用。
最新的7B~70B LLaMA2大模型,則進(jìn)一步提高了語(yǔ)言模型的基礎(chǔ)能力。但由于LLaMA2的預(yù)訓(xùn)練預(yù)料大部分來(lái)自英文通用知識(shí),而僅用微調(diào)能夠提升和注入的領(lǐng)域知識(shí)和多語(yǔ)言能力也相對(duì)有限。此外,高質(zhì)量的專業(yè)知識(shí)和數(shù)據(jù)集通常被視為各個(gè)行業(yè)和公司的核心資產(chǎn),僅能以私有化形式保存。因此,以低成本預(yù)訓(xùn)練/繼續(xù)預(yù)訓(xùn)練/微調(diào)LLaMA2系列大模型,結(jié)合高質(zhì)量私有化業(yè)務(wù)數(shù)據(jù)積累,幫助業(yè)務(wù)降本增效是眾多行業(yè)與企業(yè)的迫切需求與瓶頸。但LLaMA2大模型僅發(fā)布了原始模型權(quán)重與推理腳本,不支持訓(xùn)練/微調(diào),也未提供數(shù)據(jù)集。
針對(duì)上述空白與需求,Colossal-AI開(kāi)源了針對(duì)LLaMA2的全流程方案,并具備高可擴(kuò)展性,支持從70億到700億參數(shù)的模型,從8卡到512卡都可保持良好的性能。
在使用8卡訓(xùn)練/微調(diào)LLaMA2-7B時(shí),Colossal-AI能達(dá)到約54%的硬件利用率(MFU),處于業(yè)界領(lǐng)先水平。而對(duì)于預(yù)訓(xùn)練任務(wù),以使用512張A100 40GB預(yù)訓(xùn)練LLaMA2-70B為例,DeepSpeed ZeRO3策略因顯存不足而無(wú)法啟動(dòng),僅能通過(guò)速度衰減較大的ZeRO3-offload策略啟動(dòng)。而Colossal-AI則因卓越的系統(tǒng)優(yōu)化和擴(kuò)展性,仍能保持良好性能,訓(xùn)練提速195%。
Colossal-AI LLaMA-2訓(xùn)練/微調(diào)方案的高性能來(lái)源于新的異構(gòu)內(nèi)存管理系統(tǒng)Gemini和高性能算子(包括Flash attention 2)等系統(tǒng)優(yōu)化。新Gemini提供了高可擴(kuò)展性,高魯棒性,高易用性的接口。其Checkpoint格式與HuggingFace完全兼容,減小了使用和轉(zhuǎn)換成本。其對(duì)于切分、offload等的設(shè)置更加靈活且易用,能夠覆蓋更多硬件配置下的LLaMA-2訓(xùn)練/微調(diào)任務(wù)。僅需數(shù)行代碼即可使用:
from colossalai.booster import Booster |
雖然對(duì)于主流硬件條件和大多數(shù)模型,Colossal-AI的新Gemini已經(jīng)能夠提供良好的性能。但是對(duì)于一些極端硬件條件,或者是特殊模型,可能仍然需要多維并行的細(xì)粒度優(yōu)化。現(xiàn)有其他方案通常需要分布式系統(tǒng)資深專家,手動(dòng)對(duì)代碼進(jìn)行大規(guī)模重構(gòu)和調(diào)優(yōu),Colossal-AI的ShardFormer提供了開(kāi)箱即用的多維并行和算子優(yōu)化的能力,僅需數(shù)行代碼即可使用,在單機(jī)/大規(guī)模集群上都能提供良好的性能。
from colossalai.booster import Booster |
Colossal-AI ShardFormer支持包括LLaMA1/2、BLOOM、OPT、T5、GPT-2、BERT、GLM在內(nèi)的主流開(kāi)源模型,也可以直接使用Huggingface/transformers模型導(dǎo)入,Checkpoint格式也與HuggingFace完全兼容,對(duì)比Megatron-LM等需重寫(xiě)大量代碼的方案,大大提升了易用性。
對(duì)于并行策略,已支持以下多種并行方式:張量并行、流水線并行、序列并行、數(shù)據(jù)并行、Zero數(shù)據(jù)并行等,并可將多種并行方式組合使用,只需通過(guò)簡(jiǎn)單的配置命令,即可適配各種復(fù)雜的硬件環(huán)境/模型。同時(shí),其內(nèi)置了各種高性能算子,免去了繁瑣的兼容/配置過(guò)程。其中包括:
Flash attention 2
Memory efficient attention (xformers)
Fused Normalization Layer
JIT kernels
為了進(jìn)一步提升開(kāi)發(fā)和部署效率,Colossal-AI團(tuán)隊(duì)還將上述系統(tǒng)優(yōu)勢(shì)與算力結(jié)合,提供Colossal-AI云平臺(tái),提供廉價(jià)算力和開(kāi)箱即用的AI主流應(yīng)用,包括對(duì)話大模型,多模態(tài)模型,生物醫(yī)藥等,現(xiàn)已開(kāi)啟內(nèi)測(cè)。
通過(guò)屏蔽大模型底層的分布式并行計(jì)算、內(nèi)存、通信管理與優(yōu)化等,AI開(kāi)發(fā)者可以繼續(xù)專注于AI模型與算法設(shè)計(jì),以更低成本更快速度完成AI大模型助力業(yè)務(wù)降本增效。
用戶只需要上傳相關(guān)數(shù)據(jù),即可無(wú)代碼訓(xùn)練個(gè)性化私有模型,并將訓(xùn)練好的模型一鍵部署。相關(guān)的應(yīng)用都經(jīng)過(guò)Colossal-AI團(tuán)隊(duì)精心優(yōu)化,得益于算法和系統(tǒng)的雙面優(yōu)化,能大大降低模型訓(xùn)練以及部署的成本。
Colossal-AI云平臺(tái):platform.luchentech.com
Colossal-AI開(kāi)源地址:https://github.com/hpcaitech/ColossalAI
雷峰網(wǎng)(公眾號(hào):雷峰網(wǎng))
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。