650億參數大模型預訓練方案開源可商用!LLaMA訓練加速38%,來自明星開源項目
650億參數大模型的預訓練方案,發布即開源。
訓練速度較傳統方案提升38%。
這就是由Colossal-AI最新發布的類LLaMA基礎大模型預訓練方案。
要知道,在“百模大戰”背景下,誰擁有自家大模型,往往被視為核心競爭力。
在這個節點下,愿意開源大模型的公司少之又少。
但自己從頭訓練一個大模型,對技術、資金都有很高要求。
由此,Colossal-AI最新的開源動作,可以說是應時勢所需了。
并且它還不限制商業使用,開箱即用僅需4步。
具體項目有哪些內容?一起往下看~
開源地址:https://github.com/hpcaitech/ColossalAI
32張A100/A800即可使用
實際上,自從Meta開源LLaMA后,掀起了一波微調項目熱潮,如Alpaca、Vicuna、ColossalChat等都是在其基礎上打造的。
但是LLaMA只開源了模型權重且限制商業使用,微調能夠提升和注入的知識與能力也相對有限。
對于真正想要投身大模型浪潮的企業來說,訓練自己的核心大模型非常重要。
開源社區也此前已獻了一系列工作:
- RedPajama:開源可商用類LLaMA數據集(無訓練代碼和模型)
- OpenLLaMA:開源可商用類LLaMA 7B/13B模型,使用EasyLM基于JAX和TPU訓練
- Falcon:開源可商用類LLaMA 7B/40B模型(無訓練代碼)
但這些都還不夠,因為對于最主流的PyTorch+GPU生態,仍缺乏高效、可靠、易用的類LLaMA基礎大模型預訓練方案。
所以Colossal-AI交出了最新的開源答卷。
僅需32張A100/A800,即可搞定650億參數類LLaMA大模型預訓練,訓練速度提升38%。
而像原生PyTorch、FSDP等,則因顯存溢出無法運行該任務。
Hugging Face accelerate、DeepSpeed、Megatron-LM也未對LLaMA預訓練進行官方支持。
開箱即用、4步搞定
而這一項目真正上手起來也很簡易。共有四步:
- 1、安裝Colossal-AI
- 2、安裝其他依賴項
- 3、數據集
- 4、運行命令
具體代碼如下:
第一步、安裝Colossal-AI。
git clone -b example/llama https://github.com/hpcaitech/ColossalAI.git
cd ColossalAI
# install and enable CUDA kernel fusion
CUDA_EXT=1 pip install .
第二步、安裝其他依賴項。
cd examples/language/llama
# install other dependencies
pip install -r requirements.txt
# use flash attention
pip install xformers
第三步、數據集。
默認數據集togethercomputer/RedPajama-Data-1T-Sample將在首次運行時自動下載,也可通過-d或—dataset指定自定義數據集。
第四步、運行命令。
已提供7B和65B的測速腳本,僅需根據實際硬件環境設置所用多節點的host name即可運行性能測試。
cd benchmark_65B/gemini_auto
bash batch12_seq2048_flash_attn.sh
對于實際的預訓練任務,使用與速度測試一致,啟動相應命令即可,如使用4節點*8卡訓練65B的模型。
colossalai run --nproc_per_node 8 --hostfile YOUR_HOST_FILE --master_addr YOUR_MASTER_ADDR pretrain.py -c '65b' --plugin "gemini" -l 2048 -g -b 8 -a
如果使用Colossal-AI gemini_auto并行策略,可便捷實現多機多卡并行訓練,降低顯存消耗的同時保持高速訓練。
還可根據硬件環境或實際需求,選擇流水并行+張量并行+ZeRO1等復雜并行策略組合。
其中,通過Colossal-AI的Booster Plugins,用戶可以便捷自定義并行訓練,如選擇Low Level ZeRO、Gemini、DDP等并行策略。
Gradient checkpointing通過在反向傳播時重新計算模型的activation來減少內存使用。
通過引入Flash attention機制加速計算并節省顯存。用戶可以通過命令行參數便捷控制數十個類似的自定義參數,在保持高性能的同時為自定義開發保持了靈活性。
Colossal-AI最新的ShardFormer極大降低了使用多維并行訓練LLM的上手成本。
現已支持包括LLaMA的多種等主流模型,且原生支持Huggingface/transformers模型庫。
無需改造模型,即可支持多維并行(流水、張量、ZeRO、DDP等)的各種配置組合,能夠在各種硬件配置上都發揮卓越的性能。
Colossal-AI:大模型系統基礎設施
帶來如上新工作的Colossal-AI,如今已是大模型趨勢下的明星開發工具和社區了。
Colossal-AI上述解決方案已在某世界500強落地應用,在千卡集群性能優異,僅需數周即可完成千億參數私有大模型預訓練。
上海AI Lab與商湯等新近發布的InternLM也基于Colossal-AI在千卡實現高效預訓練。
自開源以來,Colossal-AI多次在GitHub熱榜位列世界第一,獲得 GitHub Star超3萬顆,并成功入選SC、AAAI、PPoPP、CVPR、ISC等國際 AI 與HPC頂級會議的官方教程,已有上百家企業參與共建Colossal-AI生態。
它由加州伯克利大學杰出教授 James Demmel 和新加坡國立大學校長青年教授尤洋領導開發。
Colossal-AI基于PyTorch,可通過高效多維并行、異構內存等,主打為AI大模型訓練/微調/推理的開發與應用成本,降低GPU需求等。
其背后公司潞晨科技,近期獲得數億元A輪融資,已在成立18個月內已迅速連續完成三輪融資。
開源地址:https://github.com/hpcaitech/ColossalAI。
參考鏈接:https://www.hpc-ai.tech/blog/large-model-pretraining。