伴隨著國際形式的變遷,越來越多組織申明將遵循美國出口管制法律的約束,並且蔓延到了開源領域;關於國內開源生態如何自立,做到在逼不得已無法與國際接軌的情況下能夠健康發展的措施也被提上議程,木蘭系列許可證系列由此誕生。木蘭系列許可證系列(包含「木蘭寬鬆許可證」和「木蘭公共許可證」等),均由北京大學作為牽頭單位,依託全國信標委雲端計算標準工作組和中國開源雲聯盟,聯合開源生態圈產學研優勢團隊和個體、尤其是開源法務和律師,起草、修訂並行布。其中Mulan PSL 是國內首個被OSI認定的「國產開源軟體協定。@pdai
木蘭系列許可證包含「木蘭寬鬆許可證」和「木蘭公共許可證」(後續可能還有更多),均由北京大學作為牽頭單位,依託全國信標委雲端計算標準工作組和中國開源雲聯盟,聯合開源生態圈產學研優勢團隊和個體、尤其是開源法務和律師,起草、修訂並行布。
PS: OSI 是定義「開源」、制定開源協定標準的組織,符合 OSI 開源定義的許可證被認定為開源許可證,目前其批准的開源軟體協定有 100 多個,比如目前比較流行的 MIT、Apache-2.0 與 BSD 3-Clause 等都在 OSI 認定的開源許可證列表中。而 Mulan PSL 是國內首個被OSI認定的「國產開源軟體協定」。
最重要的是所處的國際形勢,主要關注當時兩大引爆事件:
全球最大的開源軟體基金會 ASF(Apache 軟體基金會)的管理辦法中明確說明其遵循美國出口法律,所以它旗下的所有專案亦受到美國出口法律的管制。而 ASF 旗下開源專案的名單中有許多耳熟能詳的專案,比如 Kafka、Solr、Hadoop 與 Spark 等;
全球最大原始碼託管平臺 GitHub 表示:GitHub.com、GitHub Enterprise Server 以及您上傳到任一產品的資訊可能受美國出口管制法律的約束,包括美國出口管理條例(EAR)。並且實際上其已經對古巴與朝鮮等地實施限制。
訊息一出,國際國內開源界議論紛紛,關於開源生態如何自立,做到在逼不得已無法與國際接軌的情況下能夠健康發展的措施也被提上議程。
於是我們看到華為在加快國產開源作業系統鴻蒙的研發,看到國內第一個開源軟體基金會在緊急籌備,也看到了第一個國產開源協定木蘭的誕生。
木蘭系列許可證實際上在設計的時候是期望做一個系列,目前木蘭許可證族已研製釋出了三個許可證:木蘭寬鬆許可證(MulanPSL v1;MulanPSL v2)、木蘭公共許可證(MulanPubL v1;MulanPubL v2)、木蘭-白玉蘭開放資料許可協定(MBODL v1),分別面向開源軟體寬鬆型、強著作權型以及開放資料集使用等三類不同的開源應用需求。同時木蘭開放作品許可證(Mulan Open Works License, Mulan OWL)處於待發布狀態,後續可能會推出更多的協定來滿足特定的使用場景。
木蘭寬鬆許可證(MulanPSL), 這裡是協定的全文。
MulanPSL v1,具有以下特點:
MulanPSL v2 對 MulanPSL v1 的具體改進:
木蘭公共許可證(MulanPubL), 這裡是協定的全文。
木蘭公共版和寬鬆版最大的區別在於其傳染性,即他人使用了程式碼之後在特定情況下也必須採用木蘭公共版進行開源。我們來看下v2中的分發限制:
您可以將您接收到的「貢獻」或您的「衍生作品」以源程式形式或可執行形式重新「分發」,但必須滿足下列條件:
協定中還指出了例外情況:
開放作品許可證是對開放作品的使用、複製、修改和分發等行為進行規範和約束的一種具有法律效力的格式合同,是保護創作者權利、推動開放作品發展的重要支撐;目前根據不同的授權要素及傳播條件,共產生四個許可證。
背景
為滿足在知識共用領域的開源應用,助力營造良好版權氛圍,中國電子技術標準化研究院與國防科技大學聯合組織開展面向開放作品應用領域的許可證編制。木蘭開放作品許可證由國防科技大學牽頭技術研發,依託木蘭開源社群,聯合開放原子開源基金會、華為、思否、Datawhale、北大法學院、上海白玉蘭、開源社等國內開源生態圈產學研各界優勢團隊以及擁有豐富智慧財產權相關經驗的眾多律師共同起草完成。
當前,開源的理念及其生產方式已延伸到其他型別作品(如書籍、設計等)的創作中,人們越來越多地將自己的作品開放給大眾使用,並允許大眾參與到作品的創作中。在這樣一種共用共創的方式下產生了大量高質量開放作品,相較傳統著作權下保留所有權利的作品,開放作品具有以下三方面的特徵:
類似於開源軟體許可證,開放作品許可證是對開放作品的使用、複製、修改和分發等行為進行規範和約束的一種具有法律效力的格式合同,是保護創作者權利、推動開放作品發展的重要支撐。
目前根據不同的授權要素及傳播條件,共產生四個許可證,如下表所示(許可證徵求意見稿請在附件1-4中下載):
相較面向一般作品的公共版權許可證,木蘭開放作品許可證 1.0具有以下特點:
木蘭-白玉蘭開放資料許可協定」是由「上海白玉蘭開源開放研究院」在「木蘭開源社群」 框架和精神下所發起的一項研究專案,旨在探索建立一組標準化的、立足中國人工智慧實踐、推動資料要素流通、優化人工智慧發展環境的資料許可協定。這裡是協定的全文。
背景
當前在人工智慧領域尚缺乏切合實際的開放資料許可,使得資料要素的使用和流通仍存在諸多障礙和不確定性,不僅容易產生資料安全及法律方面問題,而且由於對資料本質屬性、存在形態、使用方式等方面仍認識不足,造成資料資源的使用現狀與資料可供挖掘的價值不匹配。為了人工智慧技術和相關資料資源的可持續開發使用,開放資料許可協定的作用愈加凸顯。通過規範資料利益相關方的身份和概念定義,界定資料利益相關方之間對特定資料物件流通條件和方式的各自權責,並儘可能以完全開放的模式引導資料流通,促進資料要素的開放共用與開發利用。
這塊內容說明,來源於木蘭-白玉蘭開放資料協定的說明
協定的草擬由「白玉蘭開源」聯合「開放資料中國」完成,過程中我們對:
考慮到當前人工智慧訓練資料集從權屬角度可分為兩類情況:
因此「木蘭-白玉蘭開放資料許可協定」對上述兩類情況產出了兩組不同起草策略的協定:
第一組,即預設資料由資料釋出者合法合規所有或具備處置權
我們借鑑知識共用協定的模式,草擬了一套 4 份協定,即
上述四個協定,均以 MBODL 為基礎,在「許可限制」小節中予以增加不同的限制而形成。但正如 CC 協定,在這 4 套協定的基礎上,也可再進行許可限制的疊加交叉,形成新的協定,如 MBODL-NC-CU,即規定非商業使用且僅計算使用,又如 MBODL-SA-CU,即規定相同方式授權資料且僅計算使用。
第二組,即資料釋出者資料為自第三方合法合規獲取
我們借鑑了 ODbL(開放資料庫協定)的策略,對資料庫/資料集的結構(即資料選取、組織的方式,database scheme)和資料內容予以了拆分授權的方式。此類授權策略僅為實驗性,待進一步反饋確定 1)是否有真實需求 2)是否具備可操作性。
對於上述第二組的情況,我們提供兩個可能的案例展開說明:
案例 1:資料釋出者通過 wikipedia 和 flickr 等渠道獲取了各類鳥類的圖片資料,圖片資料各自分別授權在 CC 等開放授權協定下,資料釋出者通過選取和組合這些鳥類圖片,新增了自身對鳥類的標籤(鳥類照片對應的鳥類名稱、科目等資訊),最後形成了一個「鳥類圖片訓練資料集」需要授權釋出。則在第二組協定的策略下,其將採用「白玉蘭開源開放資料協定」(僅授權結構)+「標註資料」(授權內容-釋出者選用新授權)+「各圖片原有協定」(授權內容-依照各自協定)的方式授權釋出整個資料集。
案例 2:資料釋出者通過授權方式(假設授權允許釋出者重新發布影像圖片)從 N 家醫院各自獲取了脫敏後的肺部 CT 影像圖片資料,資料釋出者自身投入人力完成了對上述影像資料的肺結節標註。資料釋出者希望將影像圖片資料+標註資料組合釋出為「肺結節標準訓練資料集」,因此可採用其將採用「木蘭-白玉蘭開放資料許可協定」(僅授權結構)+「標註資料」(授權內容-釋出者選用新授權)+「各圖片原有協定」(授權內容-依照各自協定)的方式授權釋出整個資料集。
我們基於上述案例的場景描述,草擬了 MBODL(結構內容分離版)協定,作為一個單獨的實驗性協定供各界討論適用性和條款的實踐落地可能。
讓我們通過幾個問題進一步理解木蘭協定系列。
MulanPSL v2 版本通過 OSI 認證,是否意味著 v1 本身就不符合開源定義,在開源生態中不具有實際意義?
牽頭人周明輝解釋,Mulan PSL v2 與 Mulan PSL v1 本質上沒有區別,Mulan PSL v2 是在 Mulan PSL v1 基礎上的進一步完善。認證過程中,OSI 及社群其他專家並沒有表示 Mulan PSL v1 不符合開源定義,僅對規範語言和部分英文表述問題給出了相關建議。
(v2針對v1的變化點,上文已經有說明)
此外,關於木蘭特性以及 v2 相比 v1 的改進,因為當前開源與雲的爭端不斷(@pdai: 比如ElasticSearch,MongoDB更改開源協定),在去年木蘭 v1 出來的時候就有律師建議可以在協定條款中加上針對雲的一些內容,也丟擲了相關問題。
周明輝表示,Mulan PSL 的定位是寬鬆版許可證,對如何「使用、修改、複製、分發」開源軟體沒有額外限制,僅要求保留各類宣告和許可證副本,因此也並未對「雲」做任何限制。同時她也補充到:「今後在制定木蘭系列其它型別的許可證時,我們可能會考慮到‘雲’場景。」
Mulan PSL v1 & 2 與BSD 3-clause License與Apache License V2.0在宣告義務、專利許可、對使用者專利維許可權制及版權許可上均有差異,在商標許可上無差異,見下表:
許可證的相容性評判並無統一標準。從 Mulan PSL v1 的條款及目的出發,Mulan PSL v1 與 BSD 類許可證類似,相容性很好。
BSD、MIT 類寬鬆許可證相容 Mulan PSL v2 許可證;Mulan PSL v2 相容 Apache License v2.0、L/GPLv2、L/GPLv3 等許可證。即,許可在 BSD、MIT 類許可證下的程式碼可以貢獻到 Mulan PSL v2的專案中,許可在 Mulan PSL v2 下的程式碼可以貢獻到 Apache License V2.0、L/GPLv2 或 L/GPLv3 等專案中。
注意,許可證 A 相容許可證 B(A 許可證是 B 許可證 Compatible)是指,A 授權的作品與 B 授權的作品經過修改或合併,可以使用 B 對作品的整體進行授權。相容性是有方向的,A 相容 B,但 B 不一定相容 A。
如果開源專案希望使用木蘭協定系列,該如何選擇?這裡有一個例子香山團隊在香山開源專案(RISC-V處理器)選擇協定系列和版本時的分析和選擇,非常值得參考,原文請參考這裡。
為何值得參考?
這塊內容說明,來源於木蘭-白玉蘭開放資料協定的說明
使用木蘭-白玉蘭開放資料協定分三步走:
根據你所釋出資料的情況選用正確的協定,和組合條件:
a. 你的資料集中是否存在組合第三方已有相關授權協定的資料?如是,請選用 MBODL(scheme-only)-1.0,並基於此疊加條件
b. 你希望第三方在使用你資料時,對你署名致謝嗎?如是,請選用 MBODL-BY 協定,並基於此進一步疊加條件
c. 你希望限制第三方非商業使用嗎?如是,請選用 MBODL- NC 協定,並基於此進一步疊加條件
d. 你希望第三方在基於你資料集釋出衍生資料時,採用相同協定嗎?如是,請選用 MBODL-SA 協定,並基於此進一步疊加條件
e. 你希望第三方僅計算使用資料嗎?如是,請選用 MBODL-CU,並基於此進一步疊加條件
確定最終的協定組合形態,比如你同時選用了署名、非商業限定,則你得到的協定最終版本應該寫作 MBODL-BY-NC 1.0
在顯示位置及資料檔案中,加入協定使用文字:
「該專案下的資料授權在木蘭-白玉蘭開放資料協定(MBODL-XX-YY)1.0 協定之下,瞭解詳情請存取 https://github.com/Bai-Yu-Lan/Mulan-Baiyulan-Data-License」
「你應當在基於此資料的成果中,包含如下格式的署名致謝:感謝 XXXXX 的 XXXXX 資料集 或 本專案/論文所使用資料來自 XXXXX 的 XXXXXX 資料集」