【新智元導讀】就在最近,百川智能正式發(fā)布Baichuan 2系列開源大模型。作為開源領域性能最好的中文模型,在國內(nèi),Baichuan 2是要妥妥替代Llama 2了。在國內(nèi),Llama的時代,已經(jīng)過去了。 9月6日,百川智能宣布正式開源Baichuan 2系列大模型,包含7B、13B的Base和Chat版本,并提供了Chat版本的4bits量化,均為免費商用。 下載鏈接:https://github.com/baichuan-inc/Baichuan2 在所有主流中英文通用榜單上,Baichuan 2全面領先Llama 2,而Baichuan2-13B更是秒殺所有同尺寸開源模型。毫不夸張地說,Baichuan2-13B是目前同尺寸性能最好的中文開源模型。 而在過去一個月里,Baichuan系列的下載量在Hugging Face等開源社區(qū)已經(jīng)超過了347萬次,是當月下載量最高的開源大模型,總下載量已經(jīng)突破500萬次。 相比之下,國外的當紅炸子雞Llama 2,就可以和我們說拜拜了。 千模大戰(zhàn)過后,大模型已經(jīng)進入了「安卓時刻」。現(xiàn)在看來,最有希望替代Llama 2的國產(chǎn)大模型,就是Baichuan 2。 原因其實很簡單,一方面Baichuan 2系列大模型在性能上,不僅以絕對優(yōu)勢領先Llama 2,而且大幅度優(yōu)于同尺寸的競品。 另一方面,在Meta的商用協(xié)議中,實際上并不允許開放Llama模型在中文社區(qū)的商用;而Baichuan系列大模型目前是全面開源商用的。 Llama 2商業(yè)協(xié)議明確表示不允許英文以外的商業(yè) 作為中文開源大模型的第一,百川大模型面對LLM經(jīng)典難題的表現(xiàn),也讓人眼前一亮。 對于博大精深的漢語,具備精準語義理解能力的Baichuan 2,可以充分理解其中的精妙。 而并不擅長中文的Llama 2 13B,只是說了一堆無用的廢話。 在考驗推理能力的代碼生成方面,Baichuan 2能做到足夠的精細化,并且可用率已經(jīng)達到了行業(yè)領先水平。對于這道題,Llama 2也可以搞定,但默認只會用英文進行回復。在這方面,百川大模型可以說是遙遙領先,能夠輕松完成各種復雜的指令跟隨。就連難倒GPT-4的推理題,百川大模型都不在話下。模型評測除了剛剛這些真實場景的評測外,Baichuan 2在多個權威的中文、英文和多語言的通用以及專業(yè)領域的基準測試中,都取得了同等規(guī)模最佳的效果,而Llama 2則是全面落敗。 對于通用領域,評測采用的基準為:中文基礎模型評測數(shù)據(jù)集C-Eval、主流英文評測數(shù)據(jù)集MMLU、評估知識和推理能力的中文基準CMMLU、評估語言和邏輯推理能力的數(shù)據(jù)集Gaokao、評估認知和解決問題等通用能力的AGIEval,以及挑戰(zhàn)性任務Big-Bench的子集BBH。在法律領域,采用的是基于中國國家司法考試的JEC-QA數(shù)據(jù)集。在醫(yī)療領域,除了通用領域數(shù)據(jù)集中醫(yī)學相關的問題外,還有MedQA和MedMCQA。數(shù)學領域為GSM8K和MATH數(shù)據(jù)集;代碼領域為HumanEval和MBPP數(shù)據(jù)集。最后,在多語言能力方面,則采用了源于新聞、旅游指南和書籍等多個不同領域的數(shù)據(jù)集Flores-101,它包含英語在內(nèi)的101種語言。總結來說,Baichuan 2系列不僅繼承了上一代良好的生成與創(chuàng)作能力,流暢的多輪對話能力以及部署門檻較低等眾多特性,而且在數(shù)學、代碼、安全、邏輯推理、語義理解等能力有顯著提升。其中,Baichuan2-13B-Base相比上一代13B模型,數(shù)學能力提升49%,代碼能力提升46%,安全能力提升37%,邏輯推理能力提升25%,語義理解能力提升15%。數(shù)據(jù)Baichuan 2系列大模型之所以能實現(xiàn)如此傲人的成績,其中一個原因便是,訓練語料規(guī)模大、覆蓋全,且質量優(yōu)。在數(shù)據(jù)獲取上,百川團隊主要從網(wǎng)頁、書籍、研究論文、代碼庫等豐富的數(shù)據(jù)源采集信息,覆蓋了科技、商業(yè)、娛樂等各個領域。總計有2.6TB token規(guī)模的數(shù)據(jù)集。與此同時,數(shù)據(jù)集中也加入了多語言的支持,包括中文、英文、西班牙語、法語等數(shù)十種語言。Baichuan 2訓練數(shù)據(jù)不同種類分布那么,優(yōu)秀的數(shù)據(jù)質量獲取是如何實現(xiàn)?作為一家有搜索基因的公司,百川智能借鑒了之前在搜索領域的經(jīng)驗,將重點放在了數(shù)據(jù)頻率和質量上。一方面,通過建立一個大規(guī)?!钢貜蛿?shù)據(jù)刪除和聚類系統(tǒng)」,能夠在數(shù)小時內(nèi),實現(xiàn)對千億級數(shù)據(jù)的快速清洗和去重。另一方面,數(shù)據(jù)清洗時還采用了多粒度內(nèi)容質量打分,不僅參考了篇章級、段落級、句子級的評價,還參考了搜索中對內(nèi)容評價的精選。通過細粒度采樣,大幅提升了模型生成質量,尤其是在中文領域。不同數(shù)據(jù)處理階段的訓練數(shù)據(jù)大小訓練數(shù)據(jù)準備完成后,接下來就進入大模型最重要的階段——訓練。百川團隊使用AdamW優(yōu)化器,BFloat16混合精度對模型進行了訓練。為了穩(wěn)定訓練過程,提高模型性能,研究還采用了NormHead,對輸出embedding進行歸一化處理。另外,在訓練期間,百川團隊還發(fā)現(xiàn)LLM的對數(shù)值可能會變得非常大,由此引入Max-z loss來穩(wěn)定訓練,讓模型推理對超參數(shù)更加穩(wěn)健。如下圖,可以看到,Baichuan2-7B/13B的損失曲線在持續(xù)降低。以往研究表明,模型的性能隨著參數(shù)規(guī)模的擴大呈現(xiàn)出一定的可預測性,也就是人們常說的scaling law。在訓練數(shù)十億參數(shù)的大型語言模型之前,百川智能預訓練了從10M到30B參數(shù)的模型,總計token規(guī)模達1萬億。通過將冪律項擬合到給定訓練浮點運算次數(shù)的損失中,可以預測在2.6萬億token上訓練Baichuan2-7B和Baichuan2-13B的損失曲線。如下圖所示,30M、50M、100M等不同參數(shù)規(guī)模的模型曲線都在下降,并且最后能夠線性回歸到一個值。這使得,在預測更大規(guī)模模型的性能時,能夠有一個較為準確的估計。值得一提的是,這與OpenAI在發(fā)布GPT-4時的情況類似,只需要萬分之一的訓練,可以預測后面模型的性能。由此可見,整個擬合過程,能夠較為精確地預測模型的損失。同時,百川基礎設施的團隊進行了大量工作,優(yōu)化了集群性能,使得目前千卡A800集群達到180TFLOPS訓練速度,機器利用率超過50%,達到行業(yè)領先水平。如上,在訓練過程中,百川智能模型呈現(xiàn)出了高效、穩(wěn)定、可預測的能力。安全那么,訓練后得到的模型,如何確保是安全的呢?百川智能在此也做了很多安全對齊的工作。在模型訓練前,團隊已經(jīng)對整個數(shù)據(jù)集進行了嚴格的過濾,還策劃了一個中英文雙語數(shù)據(jù)集,納入了各種正能量的數(shù)據(jù)。另一方面,百川智能還對模型做了微調增強,安全強化學習,設置了6種攻擊類型,并進行了大量紅藍對抗訓練,能夠提升模型的魯棒性。在強化學習優(yōu)化階段,通過DPO方法可以有效利用少量標注數(shù)據(jù),來提升模型對特定漏洞問題的性能。另外,還采用了結合有益和無害目標的獎勵模型,進行了PPO安全強化訓練,在不降低模型有用性的前提下,顯著增強了系統(tǒng)的安全性。可以看到,百川智能在模型安全對齊方面也做出很多努力,包括預訓練數(shù)據(jù)加強、安全微調、安全強化學習、引入紅藍對抗。對于學術界來說,是什么阻礙了對大模型訓練的深入研究?從0到1完整訓練一個模型,成本是極其高昂的,每個環(huán)節(jié)都需要大量人力、算力的投入。其中,在大模型的訓練上,更是包括了海量的高質量數(shù)據(jù)獲取、大規(guī)模訓練集群穩(wěn)定訓練、模型算法調優(yōu)等等,失之毫厘,差之千里。然而,目前大部分的開源模型,只是對外公開了模型權重,對于訓練細節(jié)卻很少提及。并且,這些模型都是最終版本,甚至還帶著Chat,對學術界并不友好。也是因此,企業(yè)、研究機構、開發(fā)者們,都只能在模型基礎上做有限的微調,很難深入研究。針對這一點,百川智能直接公開了Baichuan 2的技術報告,并詳細介紹了Baichuan 2訓練的全過程,包括數(shù)據(jù)處理、模型結構優(yōu)化、Scaling law、過程指標等。更重要的是,百川智能還開源了模型訓練從220B到2640B全過程的Check Ponit。 這在國內(nèi)開源生態(tài)尚屬首次! 對于模型訓練過程、模型繼續(xù)訓練和模型的價值觀對齊等方面的研究來說,Check Ponit極具價值。 Baichuan 2的11個中間checkpoints在C-Eval、MMLU、CMMLU三個benchmark上的效果變化Baichuan系列發(fā)布的模型分片,對于研究大模型的本質來說有非常大的好處。我們既可以知道它每次的迭代過程,也可以在中間的分片里面做非常多的事情。而且,相比于那些直接開源最終版,甚至還是Chat版的模型,百川開源得非常干凈,從底座開始就是很干凈的語言模型。此外,很多的評測都是從單點維度進行的,甚至在某些榜單,GPT-4都排到第10了,這其實沒有任何意義。而百川的評測結果就非常好。 而從商業(yè)角度看,Baichuan 2模型也是企業(yè)非常好的選擇。之前免費可商用的Llama 2發(fā)布后,許多人認為這會對眾多創(chuàng)業(yè)公司造成打擊,因為它可以滿足低成本、個性化的需求。但經(jīng)過仔細思考就能明白,Llama 2并未改變市場格局。企業(yè)若是要用模型,即使是微調,也需要花費一些成本、精力和時間。而如果選一個性能較弱的模型(尤其是主要基于英文語料的模型),重新訓練也是有難度的,成本幾乎跟自己重新去做一個大模型差不多了。既然Llama 2不擅長中文,協(xié)議也禁止非英文場景商用化,因此顯而易見,在商用領域,綜合能力更強的開源模型Baichuan 2,幾乎可以說是不二之選。基于Baichuan 2系列大模型,國內(nèi)研究人員可以進行二次開發(fā),快速將技術融進現(xiàn)實的場景之中。一言蔽之,Baichuan 2就像是源源不斷地活水,不僅通過盡可能全面的開源來極大地推動國內(nèi)大模型的科研進展,而且還通過降低國內(nèi)商業(yè)部署門檻讓應用創(chuàng)新能夠不斷涌現(xiàn)。https://github.com/baichuan-inc/Baichuan2
|