鳳凰科技 2024-11-02 01:34:10 6
25年前,著名的計算機程式設計師、開源軟體運動旗手Eric S·Raymond出版了《大教堂與集市》一書,首次提出了開放原始碼(Open Source)的概念,提倡軟體原始碼能被任何人檢視、修改、分發。開源自此深刻影響了網際網路行業的每一個角落。
在大模型和GenAI崛起的當下,開源再次成為業界關注焦點,對於開源和閉源的爭論也久久未能平息。然而,大模型開源相比傳統軟體開源,情況要更加複雜。在開源的定義、性質、開放內容和開源策略上都有完全不同的標準和內容。
因此,“開源派”的帽子並不是那麼好戴的。
“開源”大模型再起波瀾
10月29日,全球權威的開放原始碼促進會(Open Source Initiative,OSI)釋出了關於“開源AI定義(OSAID)”1.0版本,正是這一定義引起了業界不小的波瀾。
根據OSAID,AI模型若要被視為“開源”,必須提供足夠的資訊,使任何人都可以“實質性地”重建該模型。根據新定義,AI大模型若要被視為開源有三個要點:
第一,訓練資料透明性。必須提供足夠的資訊,使任何人能夠“實質性”地重建該模型,包括訓練資料的來源、處理方式和獲取方式;
第二,完整程式碼。需要公開用於訓練和執行AI的完整原始碼,展示資料處理和訓練的規範;
第三,模型引數。包括模型的權重和配置,需提供相應的訪問許可權。
OSAID還列出了開發者使用開源AI時應享有的使用權,例如可以為任何目的使用和修改模型,而無需獲得他人許可。
OSI稱,新定義是為了避免當前行業中對“開源大模型”的過度營銷和使用誤解。據此標準,當前市場上表面開源的大模型幾乎都“名不副實”,包括大名鼎鼎的“開源大模型”標杆Meta的Llama和谷歌的Gemma。
過去兩三年中,OSI發現傳統軟體行業的“開源”與大模型有著本質區別,定義並不適用當前火熱的AI大模型。因為AI大模型遠比傳統開源軟體更復雜:它不僅包含程式碼,還涉及大量的資料、複雜的模型架構以及訓練過程中的各種引數等。而這些資料的收集、整理、標註等過程都對模型的效能和結果產生重要影響。傳統的開源定義無法全面涵蓋這些新的要素,導致在AI領域的適用性不足。
目前,全球許多初創企業和大型科技公司,稱其AI模型釋出策略為“開源”,因為將大模型描述為“開源”會被開發者認為更易開發、更低成本、更多資源。但研究人員發現,許多開源模型實際上只是名義上開源,它們限制了使用者可以對模型做什麼,並且實際訓練模型所需的資料是保密的,而且執行這些模型所需要的計算能力超出了許多開發者的能力範圍。例如,Meta要求月活躍使用者超過7億的平臺獲得特殊許可才能使用其Llama模型。
無獨有偶,今年6月,《Nature》的一篇報道指出,很多科技巨頭宣稱他們的AI模型是開源的,但實際上並不完全透明。這些模型的資料和訓練方法往往沒有公開,這種做法被稱為 “開源洗白”,嚴重妨礙了科學研究的可復現性和創新。
荷蘭拉德堡德大學的人工智慧研究學者Andreas Liesenfeld和計算語言學家Mark Dingemanse也發現,雖然“開源”一詞被廣泛使用,但許多模型最多隻是“開放權重”,關於系統構建的其他大多數方面都隱藏了起來。
比如Llama和Gemma雖然自稱開源或開放,但實際上只是開放權重,外部研究人員可以訪問和使用預訓練模型,但無法檢查或定製模型,也不知道模型如何針對特定任務進行微調。
“開源”大模型到底
開放了什麼?
對於社羣中的開源軟體來說,原始碼是其核心。開發者透過閱讀原始碼可以掌握該軟體的全部細節,進而可以為該軟體開發新的功能、提供測試、修復Bug以及做程式碼評審等。
開發者提交自己的程式碼到開源專案,合入後就形成了新的版本。這就是開放式協作開發,它是開源軟體的基本開發模式,與普通軟體的開發過程並沒有本質的不同,只是開發人員在地理位置上是分散的,他們依靠一些遠端協作平臺,比如GitHub、Gitee 等,以開放式治理的方式進行協作。
但是對於大模型來說,除了原始碼以外,資料是更為重要的核心資產。大模型是基於深度學習技術,透過海量資料進行訓練而來的深度學習模型,大模型能夠基於自然語言來實現文字的生成和理解,根據輸入的資料得到輸出,從而完成多型別的通用任務。
在大模型的運轉方面,主要就是訓練和推理兩個過程,訓練過程就是大模型產生的過程,訓練過程的基本原理是在深度學習框架上執行特定的模型架構,然後把訓練資料集輸入給架構,再透過複雜的計算和多次迭代,最後得到一套想要的權重,而這套權重就是訓練後的結果,也叫預訓練模型。
預訓練模型在經過部署之後,以及在得到深度學習框架的支援之下,根據給定的輸入內容得到對應的輸出結果,這一套流程就是推理過程。
但需要說明的是,在大模型訓練和推理過程中,往往所需要的算力和資源的差異很大。在訓練過程中,需要很多次的迭代計算,且需要具備海量GPU算力做支援,這樣才能在合理的時間範圍內完成一次完整的訓練過程。
另外,在推理過程中,需要的算力資源卻相對較小,因為推理的時候在消費型GPU以及普通的GPU上就可以完成一次一般型別的推理。
根據目前情況來看,市面上絕大多數開源大模型開放出來的只是一套權重,也就是預訓練模型,如果開發者想要復現該開源大模型的訓練過程,需要透過最佳化資料集、方法等訓練出一個更優質的模型,而且需要資料集、訓練過程和原始碼,但是大部分開源大模型在開源的時候並未提供上面所需要的這些內容,就算開發者掌握算力也無法復現。
市面上這些類比傳統軟體的開源大模型更像是一個開放了的二進位制包,比如.exe檔案,只是閉源、免費開放使用的,它其實是一個“免費軟體”而不是一個“開源軟體”。
大模型所謂的“開源”,實際上是有三個物件,原始碼只是其中之一,需要同時具備演算法、高算力、大資料這三大要素,才有可能最終得到一款和ChatGPT類似效果拔群的模型。
大模型的原始碼就在演算法,演算法的核心部分主要包括有模型結構和訓練方法,這兩部分都有對應的原始碼。拿到原始碼只是第一步,高算力和大資料是大多數企業無法逾越的門檻。相比高算力而言,大資料是最難獲取同時也是價值最高的部分。
那麼,開源大模型在不提供資料集和原始碼的前提下,是不是就不能進行協作了呢?並非完全如此。
基於大模型的實現原理和技術特性,開發者可以透過微調的方式對預訓練大模型進行能力擴充套件,透過額外的資料集進行進一步的訓練,最佳化模型在特定領域的效果,得到一個新的衍生模型。
微調資料規模可大可小,但通常比原始訓練資料集小得多,所以產生一個微調模型所需的算力成本也低得多。
因此,在開源大模型界,出現了一些以主流預訓練模型為基礎底座衍生的微調大模型,並形成了譜系。
大模型根本沒有
“真”開源?
從當前各家大模型廠商的宣傳看,大多采用了“以偏概全”“避重就輕”的方式,很容易讓人混淆模型開源和軟體開源的概念,讓開發者或企業誤認為開源大模型與開源軟體是同等開源水平。
無論是大模型還是軟體,發揮開源優勢,本質上是吸收開發者對大模型或軟體的改進。但其實,目前所謂的開源大模型無法真正像開源軟體一樣,靠社羣開發者一起參與來提升效果和效能。應用開源大模型的企業,也很難迭代並最佳化這些模型,以至於無法高效地應用於企業場景。
至於什麼是開源大模型,業界並沒有像開源軟體一樣達成一個明確的共識。
綜合來看,大模型的開源和軟體開源在理念上的確有相似之處,都是基於開放、共享和協作的原則,鼓勵社羣共同參與開發和改進,推動技術進步並提高透明性。
然而,在實現和需求上有顯著區別。
軟體開源主要針對應用程式和工具,開源的資源需求較低,而大模型的開源則涉及大量計算資源和高質量的資料,並且可能有更多使用限制。因此,雖然兩者的開源都旨在促進創新和技術傳播,但大模型開源面臨更多的複雜性,社羣貢獻形式也有所不同。
國內此前也曾爆發過大模型開源與閉源的討論。百度創始人李彥宏多次強調了兩者的區別,大模型開源不等於程式碼開源:“模型開源只能拿到一堆引數,還要再做SFT(監督微調)、安全對齊,即使是拿到對應原始碼,也不知道是用了多少比例、什麼比例的資料去訓練這些引數,無法做到眾人拾柴火焰高,拿到這些東西,並不能讓你站在巨人的肩膀上迭代開發。”
由此來看,目前對開源大模型的改進主要透過微調實現,但因微調主要針對模型輸出層調整不涉及核心構架和引數,無法從根本上改變模型的能力和效能。
即便是“真開源”,受技術特性與訓練成本所限,開放式協作對大模型效能提升效果也有限。
大模型訓練過程需要耗費大量算力,算力成本居高不下,即便創作者開源資料集和訓練細節,普通開發者也很難承擔復現訓練過程的高昂訓練成本,模型能力難以因開放而得到實質提升。
資料顯示,ChatGPT一次完整的模型訓練成本超過8000萬元。如果進行10次完整的模型訓練,成本便高達8億元。
站在企業角度,選擇一款大模型產品或應用,需要根據組織的具體需求和戰略目標來決定。
李彥宏認為,評價一個模型,維度是多方面的,不僅是看到榜單上的多項能力,也要看效果看效率。當大模型加速駛入商業應用之後,在追求高效率和低成本的情況下,真正的衡量標準應是模型在實際應用中能否滿足使用者需求和產生價值。
大模型應用是涵蓋“技術+服務”的一套完整解決方案,對單一方面的忽略或考慮不足都會影響到企業的“降本增效”效果,更有甚者會起到“增本降效”的負面效果,因此需要透過“算總賬”進行綜合考量。
對於如何選擇大模型這件事,企業也無需過於糾結,應該將關注點放在哪個大模型更好用、如何匹配自身的實際業務需要,從而選擇最適合企業自身業務場景的大模型平臺,然後專注於應用開發。那麼企業如何選擇呢?
首先,要計算硬體資源成本。一些商業大模型會配套相應的工具鏈,包括訓練工具鏈、推理工具鏈,這些工具鏈能夠起到比較好的降本效果,對企業來說,訓練環節能大約省10~20%的硬體成本,推理環節則省得更多,業務規模越大,省得越多。
其次,要看模型帶來的業務收益。一些業務對於90%還是95%的準確率敏感度沒那麼高。但有一些業務,比如商業廣告類,CPM、CTR差一個點,對廣告平臺來說一天可能就有上千萬的出入,這時候對模型的效果要求越高的企業,就更願意去買一個效果更好的模型。
第三,要考慮機會成本和人力成本。在一些商業大模型中,廠商會根據企業業務需求把模型和硬體進行適配,並調到最優狀態,讓企業可以直接複製成熟經驗,這樣就大大降低了大模型在適配過程中的算力、人力等多項成本。
面對行業的大模型開源閉源、真假開源之爭,我們無需以道德綁架要求所有大模型都開源,因為這涉及大量技術、資源和安全考量,需要平衡開放與安全、創新與責任。正如科技領域的其他方面一樣,多元化的貢獻方式才能構建一個更豐富的技術生態系統。
真正的大模型開源時刻還遠未到來,正如開源和專有軟體共同塑造了今天的軟體生態,大模型的開源與否以及開源程度也並非完全對立,多種技術路線並存發展是推動AI技術不斷進步、滿足不同應用場景需求的重要動力。最終,使用者和市場會作出適合自己的選擇。