當前位置: 妍妍網 > 碼農

真假開源:開源大模型的實際開放性探討

2024-06-06碼農

近年來,隨著人工智慧技術的飛速發展,大語言模型(以下簡稱「大模型」)逐漸成為各大科技公司的研發重點。這些大模型具備強大的自然語言處理和生成能力,能夠在多個領域發揮重要作用。隨著OpenAI的ChatGPT等產品的推出,開源大模型逐漸走入公眾視野。然而,在我們探討開源大模型的過程中,常常會遇到一個問題:這些所謂的「開源」大模型,真的像我們想象的那樣完全開放嗎?本文將從多個角度探討開源大模型的實際開放性,揭示其「真假開源」的本質。

開源大模型的定義與現狀

開源大模型通常指由科技公司或研究機構釋出,並以開源授權證形式向公眾開放的大型深度學習模型。這些模型基於大規模的數據集進行訓練,具備強大的自然語言理解和生成能力,能夠在各種復雜任務中表現出色。例如,Meta的Llama系列、阿裏的通義千問系列等,都是近年來備受關註的開源大模型。

目前,市場上存在多種開源大模型,涵蓋了從基礎模型到經過特定任務微調的衍生模型。以Meta的Llama為例,該系列模型自2023年釋出以來,已經推出了多個版本,包括Llama、Llama 2和Llama 3,每個版本都聲稱在效能和開放性上有所改進。例如,Llama 2在訓練數據的多樣性和模型架構上進行了最佳化,Llama 3則在參數量和推理速度上有所提升。然而,盡管這些模型在一定程度上對外開放,但其實際開放程度卻存在很大爭議。

具體而言,雖然這些大模型提供了部份程式碼和訓練好的權重,但在訓練數據和具體訓練過程的透明度方面卻有所欠缺。比如,Llama系列模型雖然開放了權重,但並未公開其訓練所用的數據集和訓練過程的詳細資訊,這使得開發者在復現和改進這些模型時面臨諸多限制。此外,阿裏的通義千問系列也存在類似問題,盡管提供了模型權重和部份程式碼,但關鍵的訓練數據和步驟依然閉源。

這種不完全開放的現狀導致了業內關於開源大模型實際開放性的廣泛討論。有觀點認為,真正的開源不僅應包括程式碼和權重,還應涵蓋訓練數據和訓練過程的詳細資訊,以便開發者能夠全面了解和改進模型。然而,目前的大部份開源大模型在這方面依然存在不足,這使得它們與真正意義上的開源軟體存在顯著差距。

總的來說,開源大模型的定義與現狀揭示了其開放性上的局限,盡管名義上是開源,但在實際套用和改進中仍然面臨諸多挑戰。這種「假開源」現象不僅影響了開發者的創新能力,也限制了開源大模型在更廣泛套用場景中的潛力。

開源內容的局限性

1)通常開放的內容

在實際操作中,開源大模型通常只開放以下幾部份內容:

程式碼: 實作大模型訓練和推理所需的程式碼,包括模型架構、訓練演算法、模型推理等核心程式碼。這些程式碼讓開發者能夠理解模型的基本結構和推理過程,但並不足以完全復現或改進模型。

權重: 訓練完成後得到的模型參數,這些參數是模型在推理過程中所需的核心要素。權重數據使得開發者能夠在現有模型基礎上進行推理,但對模型的核心訓練細節一無所知。

例如,Meta的Llama系列模型和阿裏的通義千問系列模型都只開放了模型的權重和部份程式碼,而對訓練數據和具體訓練過程的詳細資訊卻守口如瓶。這種有限的開放使得開發者只能使用現有模型進行推理,而無法深入理解或改進模型。

2) 實際未開放的關鍵內容

然而,對於大模型來說,真正決定其效能和套用價值的關鍵在於訓練數據和訓練過程。這些內容往往並未對外開放:

- 訓練數據: 原始訓練用的數據集,以及在訓練過程中進行數據處理和預處理的細節。這些數據通常包含大量的高品質、有代表性的文本數據,對模型的效能至關重要。然而,大部份開源大模型並未公開這些訓練數據。例如,Llama系列模型雖然提供了訓練好的權重,但並未公開其訓練所用的數據集及其詳細資訊。缺乏這些數據,開發者就無法對模型進行重新訓練或在相似任務上進行微調。

- 訓練過程: 具體的訓練步驟、參數設定、最佳化方法等。這些細節決定了模型的訓練效果和最終效能,但在所謂的「開源」大模型中,這些資訊往往是閉源的。例如,盡管一些大模型提供了部份程式碼和權重,但訓練過程中使用的超參數、數據增強方法、訓練策略等關鍵細節並未公開。這使得開發者無法了解模型是如何訓練出來的,從而也無法復現同樣的訓練效果或進行改進。

這種不完全開放的做法使得開發者在復現模型時面臨諸多困難,無法真正掌握模型的核心技術,限制了他們對模型進行最佳化和改進的能力。實際上,這些所謂的開源大模型更像是免費軟體(freeware)而非真正的開源軟體(open-source software)。它們提供的只是使用現有模型的便利,而不是完全的技術透明和開發自由。

如表所示,大多數「開源」大模型只公開了預訓練權重,而並未提供模型訓練所需的程式碼、數據集和訓練過程。這意味著開發者無法完全復現模型的訓練過程,更無法根據需要進行模型的改進和最佳化。與傳統開源軟體相比,這些大模型更像是「免費軟體」,而非真正的「開源軟體」。

法律與商業模式的約束

1、開源授權證的重要性

開源授權證是一種具有法律效力的合約,規定了軟體的使用、修改和分發許可權。在傳統開源軟體中,開源授權證(如GPL、MIT、Apache 2.0等)確保了軟體的自由使用和修改。這些授權證透過明確的法律條款,保障了使用者和開發者的權益,使得軟體的使用和分發具有高度的透明度和可預測性。開發者可以自由地檢視、修改和分發原始碼,這為開源社群的協作和創新提供了強有力的法律基礎。

在開源大模型中,情況卻有所不同。盡管一些開源大模型也采用了類似的授權證,但這些授權證往往附帶額外的限制和條款。例如,許多大模型的授權證對使用場景、使用者型別、商業用途等進行了嚴格的限制,遠遠超過了傳統開源軟體的規定。這些限制性條款可能包括禁止某些商業用途、要求特定的使用聲明、限制數據的再分發等。這種做法雖然在一定程度上保護了原始開發者的利益,但也大大降低了模型的開放性和使用靈活性。

此外,大模型的授權證在數據和模型權重的處理上也存在顯著差異。傳統開源軟體的授權證通常只涵蓋原始碼,而大模型的授權證不僅涵蓋程式碼,還涉及到訓練數據和模型權重。這些核心資源往往被嚴格控制,只有部份公開或完全不公開,這使得使用者在使用這些模型時面臨更多的法律和技術障礙。

盡管開源授權證在大模型領域依然扮演著重要角色,但其實際效果和套用範圍與傳統開源軟體存在顯著差異。這些差異不僅體現在法律條款上,也反映在開源大模型的實際使用和開發過程中。

2、大模型的客製授權證及其限制性條款

許多開源大模型采用了客製的授權證,這些授權證往往包含了許多限制性條款。這些限制性條款可能包括但不限於以下幾個方面:

使用範圍: 某些開源大模型的授權證明確規定了模型的使用範圍,可能禁止在某些領域或行業中使用。例如,某些模型可能禁止在軍事、政治等敏感領域中使用,這樣的限制使得這些模型在特定套用場景中無法使用。

使用者型別: 一些開源大模型的授權證可能限制特定型別的使用者使用。例如,可能禁止某些商業公司或個人開發者使用,或者對使用者的資質和背景有特定要求,這樣的條款極大地限制了模型的普及和套用。

商業用途: 許多開源大模型的授權證對商業用途進行了嚴格限制。例如,有些授權證禁止模型用於商業目的,或者要求在商業使用時支付高額費用。這使得企業在使用這些模型時,需要承擔額外的經濟成本,從而降低了使用的自由度和經濟效益。

這些限制性條款使得開源大模型的使用自由度大大降低,無法像傳統開源軟體那樣自由使用和分發。傳統開源軟體通常采用寬松的授權證,如MIT、Apache 2.0等,這些授權證允許使用者自由地使用、修改和分發軟體,而無需擔心法律和商業上的限制。然而,開源大模型的客製授權證則往往帶有諸多限制,使得使用者在實際套用中面臨諸多障礙。

具體案例中,Meta的Llama模型和阿裏的通義千問模型都采用了特定的授權證。這些授權證不僅在使用範圍和使用者型別上進行了限制,還對商業用途進行了嚴格規定。例如,Llama模型的授權證明確禁止將模型用於某些商業用途,並要求使用者在商業使用時遵守特定的條款和條件。這樣的限制使得企業在使用這些模型時,不僅需要考慮技術實作,還需要仔細閱讀和理解授權證條款,以避免法律風險。

客製授權證的存在還意味著這些大模型的開源並非完全公益性,而是帶有一定的商業目的。許多科技公司透過開源大模型吸引開發者和使用者,但同時保留了對模型核心技術和數據的控制權,確保自身在市場競爭中的優勢。這種開源策略雖然在一定程度上促進了技術的傳播和套用,但也限制了真正的開放和自由。

總之,開源大模型的客製授權證及其限制性條款,使得這些模型在使用自由度和套用範圍上受到了很大的限制。使用者在選擇和使用這些模型時,需要充分了解和考慮這些限制,以便做出最合適的決策。開源大模型雖然在一定程度上推動了人工智慧技術的發展,但其實際開放性和自由度遠不及傳統開源軟體。

3、商業公司對開源大模型的策略和目的

商業公司在釋出開源大模型時,通常有其特定的商業目的。開源大模型往往是為了建立生態系、吸引開發者、提升品牌形象等。這些模型雖然在一定程度上對外開放,但其核心技術和數據仍然掌握在公司手中,確保了公司的有利競爭。以下是幾個主要的策略和目的:

1. 建立生態系

開源大模型可以幫助公司建立一個龐大的開發者生態系。透過開放部份程式碼和模型權重,吸引開發者使用並貢獻程式碼,從而增強模型的功能和適應力。一個強大的生態系不僅能提升公司的技術影響力,還能帶來更多的合作機會。例如,Meta的Llama模型透過開源,吸引了大量開發者和研究者,迅速形成了一個活躍的社群。

2. 吸引開發者

對公司來說,開源大模型是吸引開發者的一種重要手段。開發者可以利用開源模型進行研究、開發和商業套用,從而推動技術的普及和套用。這不僅能提升公司的技術形象,還能為公司發現和培養人才。例如,Meta在開源Llama模型時,不僅僅是為了社群貢獻,更是為了與微軟等公司合作,擴大自身的市場影響力。透過與大公司合作,Meta能夠迅速在市場上占據一席之地,同時也能夠獲得更多的資源和技術支持。

3. 提升品牌形象

開源大模型有助於提升公司的品牌形象,尤其是在技術圈和開發者社群中。透過開源,公司可以展示其技術實力和開放精神,從而獲得更多的認可和支持。這對於建立品牌信任和拓展市場非常重要。例如,阿裏的通義千問模型透過開源,展示了其在人工智慧領域的技術實力,提升了品牌形象。

4. 保持有利競爭

盡管開源大模型在一定程度上對外開放,但其核心技術和數據仍然掌握在公司手中。這使得公司能夠保持有利競爭。透過控制關鍵的訓練數據和訓練過程,公司可以確保其在技術和市場上的領先地位。例如,盡管Meta開源了Llama模型的部份內容,但核心訓練數據和具體訓練細節仍然是閉源的,確保了其有利競爭。

5. 商業合作和市場拓展

開源大模型可以促進商業合作和市場拓展。透過與其他公司和平台合作,開源大模型可以迅速進入更多的市場和套用場景,從而擴大其影響力和市場份額。例如,Meta在開源Llama模型時,與微軟、亞馬遜等公司合作,使得Llama模型可以在多種平台上執行,迅速拓展了市場。

6. 技術創新和改進

開源大模型還能促進技術創新和改進。透過開放部份內容,吸引更多的開發者參與,公司的技術能夠得到持續改進和創新。這不僅能提升模型的效能和功能,還能加速技術的叠代和更新。例如,透過開源,Meta能夠從開發者社群獲得大量的反饋和改進建議,從而不斷最佳化和提升Llama模型。

綜上所述,商業公司透過開源大模型,可以實作多方面的商業目的和戰略目標。雖然這些模型在一定程度上對外開放,但其核心技術和數據仍然掌握在公司手中,從而確保了公司的有利競爭和市場地位。因此,開源大模型在本質上並不是真正的「開源」,而是一種策略性的開放。

技術與協助開發的挑戰

1.訓練和推理過程的資源需求差異

大模型的訓練過程需要大量的計算資源和數據支持,這往往是普通開發者難以承受的。在大模型的訓練過程中,需要進行大量的叠代計算,這通常需要數百甚至數千個高效能GPU的支持。對於普通開發者來說,獲取如此大規模的計算資源幾乎是不可能的。此外,訓練過程還需要海量的高品質數據,數據的獲取和處理同樣需要大量的時間和資源投入。例如,訓練一個高品質的大模型可能需要數千萬到數億條數據,這些數據的收集、清洗、標註都需要大量的人力和物力投入。

相比之下,推理過程所需的資源相對較少,通常在消費級GPU甚至普通的CPU上就能完成。推理過程主要是利用已經訓練好的模型進行預測或生成,不需要進行復雜的計算和大規模的數據處理。因此,普通開發者可以較為輕松地在本地機器上執行推理任務。

由於大多數開源大模型並未開放其訓練數據和具體的訓練過程,開發者無法重新訓練或最佳化模型。雖然可以使用現有的模型進行推理,但在需要對模型進行微調或適應特定任務時,開發者依然面臨巨大挑戰。由於無法獲取原始訓練數據和詳細的訓練步驟,開發者無法對模型進行有效的修改和最佳化,限制了其在特定套用場景中的靈活性和效能。

缺乏訓練數據和訓練過程的透明度也使得開發者難以理解模型的內在工作機制和潛在的偏差。這不僅影響了模型的可解釋性和可信度,也限制了開發者對模型進行改進和創新的能力。例如,一個企業可能希望針對特定領域的數據進行模型微調,但由於無法獲取原始訓練數據和過程,微調的效果可能遠不及預期,甚至可能引入新的偏差和錯誤。

總之,訓練和推理過程的資源需求差異,以及訓練數據和過程的閉源,嚴重限制了開發者對開源大模型的利用和改進能力。盡管推理過程所需的資源較少,但對於真正需要進行深層次最佳化和客製的開發者來說,現有的開源大模型並未提供足夠的支持和透明度。

2.微調和衍生模型的技術實作及其局限性

盡管開發者可以透過微調(fine-tuning)現有的大模型來適應特定任務,但這種方法的局限性很大。微調過程中仍然需要一定的數據和計算資源,而原始訓練數據和具體訓練步驟的缺失,使得微調效果大打折扣。此外,由於微調只能在現有模型基礎上進行,開發者無法對模型進行深層次的改進。

盡管這些數據集相對較小,但獲得高品質、經過標註的領域數據仍然是一個挑戰。許多企業和開發者缺乏足夠的資源和專業知識來收集和標註這些數據。此外,微調過程中的數據處理和預處理步驟對最終模型的效能影響巨大,而這些細節通常在開源大模型的釋出中並未提供。

另外,微調所需的計算資源遠少於從頭開始訓練一個大模型,但對於許多中小型企業和獨立開發者來說,這仍然是一個不小的負擔。大型科技公司通常可以輕松獲取高效能的GPU集群來進行模型訓練和微調,但中小型企業和個人開發者可能無法承擔這些高昂的計算成本。

由於微調只能在現有模型基礎上進行,開發者無法對模型進行深層次的改進。例如,開發者可能希望調整模型的架構,修改訓練演算法,或探索新的最佳化方法,但這些都需要對模型進行從頭開始的訓練,而不僅僅是微調現有的模型權重。然而,由於開源大模型的訓練數據和具體訓練步驟並未公開,開發者無法進行這些深層次的改進,微調模型的效果和穩定性往往無法達到預期。由於缺乏對原始訓練數據和訓練過程的深入了解,開發者在微調過程中可能會遇到各種問題,例如模型過擬合、效能不穩定等。此外,由於缺乏對模型內部機制的了解,開發者在遇到問題時往往無法找到有效的解決方案,進一步限制了微調的效果。

盡管微調為開發者提供了一種在現有大模型基礎上進行客製化的途徑,但其局限性顯著。微調過程中所需的數據和計算資源、缺乏對原始訓練數據和訓練過程的了解,以及無法進行深層次的模型改進,都是制約其效果的重要因素。開源大模型的這種不完全開放性,使得開發者在實際套用中面臨諸多挑戰,無法充分發揮其潛力。

3.開源大模型在協作開發中的局限

傳統開源軟體的一個重要優勢是協作開發,多個開發者可以共同改進和最佳化軟體。這種模式依賴於原始碼的完全開放和透明,使得開發者能夠了解軟體的每一個細節,從而進行有效的協作。然而,開源大模型在這一點上存在顯著的局限性。

開源大模型往往只開放部份程式碼和訓練權重,而不包括完整的訓練數據和訓練過程的詳細資訊。這意味著開發者無法從頭開始訓練或重現這些模型,只能在既有的基礎上進行有限的調整和最佳化。由於缺乏對訓練數據的了解,開發者無法判斷模型在特定任務上的表現是否是由於數據品質或訓練策略的問題,也無法進行針對性的改進。

開源大模型的復雜性和資源需求也增加了協作開發的難度。 訓練一個大模型通常需要大量的計算資源和時間,這使得只有少數具備足夠資源的機構能夠參與到模型的訓練和最佳化中。這種資源的不平等進一步限制了開源大模型的廣泛協作開發。

開源大模型的開發過程缺乏透明度和社群參與度。 傳統開源軟體計畫通常在公開的平台上進行開發,社群成員可以送出程式碼、報告問題、參與討論。然而,許多開源大模型計畫的開發過程並不公開,社群成員只能使用和微調已經釋出的模型,無法深入參與到模型的開發和改進中。這種封閉的開發模式削弱了開源計畫的社群力量,使得模型的改進速度和品質受到影響。

法律和商業因素也對開源大模型的協作開發構成了障礙。 許多開源大模型采用客製的授權證,這些授權證通常包含對商業用途、使用者型別等方面的限制。這不僅限制了模型的使用範圍,也阻礙了社群開發者在商業計畫中對模型進行改進和最佳化的可能性。相比之下,傳統開源軟體計畫通常采用寬松的開源授權證,鼓勵廣泛的使用和二次開發。

綜上所述,盡管開源大模型在名義上是開放的,但其實際開放程度和協作開發的效果遠不及傳統開源軟體。缺乏訓練數據和訓練過程的透明度、資源需求的高門檻、開發過程的封閉性以及法律和商業因素的限制,使得開源大模型在改進速度和品質上存在顯著的局限性。要真正實作開源大模型的潛力,需要在數據透明度、資源共享、社群參與和法律框架等方面進行進一步的改進和探索。


總結

如今大部份所謂的「開源大模型」實際上更像是披著開源外衣的商業產品,其開放性和自由度遠不及真正的開源軟體。在使用這些模型時,開發者和企業需要充分了解其局限性,避免被「開源」這一表象所誤導。

未來,隨著技術的發展和行業標準的逐漸形成,我們或許能看到更加透明和開放的大模型。標準化的開源授權證和更透明的訓練數據開放將有助於提高大模型的真正開放性。然而,在現階段,開發者和企業在使用開源大模型時,需要保持理性,認真審視其開放性和實際套用價值,根據實際需求做出最優選擇。

開源大模型的未來充滿希望,但也需要我們在期待技術進步的同時,保持清醒的頭腦,認識到當前開源大模型的局限性。只有在更加透明和標準化的環境下,開源大模型才能真正實作其應有的潛力,為開發者和整個行業帶來更多的創新和發展。

END

熱門文章

-

-

-

-

-