今天小編分享的科技經驗:假開源真噱頭?開源大模型和你想的不一樣,歡迎閲讀。
科技雲報到· 2024-11-01 10:39
再起波瀾
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 技術不斷進步、滿足不同應用場景需求的重要動力。最終,用户和市場會作出适合自己的選擇。