盤古大模型:拋了個假瓜結果炸出來了真瓜?_風聞
锤子2345-47分钟前
原文在github,據説還有issue什麼的在討論。在其他地方複製的。True-Story-of-Pangu關鍵詞是這個另:之前那個“github寫論文”的一個引用造假,一個方法不可靠,主流觀點是直接被錘死了。至於這個的可靠性:還是建議其他人單純吃瓜,別急着站隊。如果有搞大模型訓練的,能挑出明確的矛盾證偽,那是最好。如果有人認為“華為做的一定不可能是抄襲”,那麼你説的都對。但正常人應該至少是願意接受某種可能性的,特別是小作文提到了挺多細節包括人事和模型細節。請特別注意:這個和那個做了個“模型”説”盤古是套殼千問"的是完全不相關事件。分清楚。很好奇觀網的回覆是怎麼個畫風。雖然我大概猜得到。以下為原文。盤古之殤:華為諾亞盤古大模型研發歷程的心酸與黑暗
各位好,
我是一名盤古大模型團隊,華為諾亞方舟實驗室的員工。
首先為自證身份,列舉一些細節:
現諾亞主任,前算法應用部部長,後改名為小模型實驗室的主任王雲鶴。前諾亞主任:姚駿(大家稱姚老師)。幾個實驗室主任:唐睿明(明哥,明隊,已離職),尚利峯,張維(維哥),郝建業(郝老師),劉武龍(稱呼為武龍所)等。其他骨幹成員和專家陸續有很多人離職。我們隸屬於“四野”這個組織。四野下屬有許多縱隊,基礎語言大模型是四縱。王雲鶴的小模型是十六縱隊。我們參加過蘇州的集結,有各種月份的時間節點。在蘇州攻關會頒發任務令,需要在節點前達成目標。蘇州集結會把各地的人員都集中在蘇州研究所,平常住賓館,比如在甪直的酒店,與家人孩子天各一方。在蘇州集結的時候週六默認上班,非常辛苦,不過週六有下午茶,有一次還有小龍蝦。在蘇州研究所的工位搬遷過一次,從一棟樓換到了另一棟。蘇州研究所樓棟都是歐式裝修,門口有大坡,裏面景色很不錯。去蘇州集結一般至少要去一週,甚至更久,多的人甚至一兩個月都回不了家。諾亞曾經傳説是研究型的,但是來了之後因為在四野做大模型項目,項目成員完全變成了交付型的,且充滿了例會,評審,彙報。很多時候做實驗都要申請。團隊需要對接終端小藝,華為雲,ICT等諸多業務線,交付壓力不小。諾亞研發的盤古模型早期內部代號叫做“盤古智子”,一開始只有內部需要申請試用的網頁版,到後續迫於壓力在welink上接入和公測開放。
這些天發生關於質疑盤古大模型抄襲千問的事情鬧的沸沸揚揚。作為一個盤古團隊的成員,我最近夜夜輾轉反側,難以入眠。盤古的品牌受到如此大的影響,一方面,我自私的為我的職業發展擔憂,也為自己過去的努力工作感到不值。另一方面,由於有人開始揭露這些事情我內心又感到大快人心。在多少個日日夜夜,我們對內部某些人一次次靠着造假而又獲得了無數利益的行為咬牙切齒而又無能為力。這種壓抑和羞辱也逐漸消磨了我對華為的感情,讓我在這裏的時日逐漸渾渾噩噩,迷茫無措,時常懷疑自己的人生和自我價值。
我承認我是一個懦弱的人,作為一個小小的打工人,我不僅不敢和王雲鶴等內部手眼通天的人做對,更不敢和華為這樣的龐然大物做對。我很怕失去我的工作,畢竟我也有家人和孩子,所以我打心眼裏很佩服揭露者。但是,看到內部還在試圖洗地掩蓋事實,矇蔽公眾的時候,我實在不能容忍了。我也希望勇敢一次,順從自己本心。就算自損八百,我也希望能傷敵一千。我決定把我在這裏的所見所聞(部分來自於同事口述)公佈出來,關於盤古大模型的“傳奇故事”:
華為確實主要在昇騰卡上訓練大模型(小模型實驗室有不少英偉達的卡,他們之前也會用來訓練,後面轉移到昇騰)。曾經我被華為“打造世界第二選擇”的決心而折服,我本身也曾經對華為有深厚的感情。我們陪着昇騰一步步摸爬滾打,從充滿bug到現在能訓出模型,付出了巨大的心血和代價。
最初我們的算力非常有限,在910A上訓練模型。那會只支持fp16,訓練的穩定性遠不如bf16。盤古的moe開始很早,23年就主要是訓練38Bmoe模型和後續的71B dense模型。71B的dense模型通過擴增變成了第一代的135Bdense模型,後面主力模型也逐漸在910B上訓練。
71B和135B模型都有一個巨大的硬傷就是tokenizer。當時使用的tokenizer編碼效率極低,每個單個的符號,數字,空格,乃至漢字都會佔用一個token。可想而知這會非常浪費算力,且使得模型的效果很差。這時候小模型實驗室正好有個自己訓的詞表。姚老師當時懷疑是不是模型的tokenizer不好(雖然事後來看,他的懷疑是無疑正確的),於是就決定,讓71B和135B換tokenizer,因為小模型實驗室曾經嘗試過。團隊縫合了兩個tokenizer,開始了tokenizer的更換。71B模型的更換失敗了,而135B因為採用了更精細的embedding初始化策略,續訓了至少1T的數據後詞表總算更換成功,但可想而知,效果並不會變好。
於此同期,阿里和智譜等國內其他公司在GPU上訓練,且已經摸索出了正確的方法,盤古和競品的差距越來越大。內部一個230B從頭訓練的dense模型又因為各種原因訓練失敗,導致項目的狀況幾乎陷入絕境。面臨幾個節點的壓力以及內部對盤古的強烈質疑時,團隊的士氣低迷到了極點。團隊在算力極其有限的時候,做出了很多努力和掙扎。比如,團隊偶然發現當時的38B moe並沒有預期moe的效果。於是去掉了moe參數,還原為了13B的dense模型。由於38B的moe源自很早的pangu alpha 13B,架構相對落後,團隊進行了一系列的操作,比如切換絕對位置編碼到rope,去掉bias,切換為rmsnorm。同時鑑於tokenizer的一些失敗和換詞表的經驗,這個模型的詞表也更換為了王雲鶴的小模型實驗室7B模型所使用的詞表。後面這個13B模型進行了擴增續訓,變成了第二代38B dense模型(在幾個月內這個模型都是主要的盤古中檔位模型),曾經具有一定的競爭力。但是,由於更大的135B模型架構落後,且更換詞表模型損傷巨大(後續分析發現當時更換的縫合詞表有更嚴重的bug),續訓後也與千問等當時國內領先模型存在很大差距。這時由於內部的質疑聲和領導的壓力也越來越大。團隊的狀態幾乎陷入了絕境。
在這種情況下,王雲鶴和他的小模型實驗室出手了。他們聲稱是從舊的135B參數繼承改造而來,通過訓練短短的幾百B數據,各項指標平均提升了十個點左右。實際上,這就是他們套殼應用到大模型的第一次傑作。華為的外行領導內行,使得領導完全對於這種扯淡的事情沒有概念,他們只會覺得肯定是有什麼算法創新。經過內部的分析,他們實際上是使用Qwen 1.5 110B續訓而來,通過加層,擴增ffn維度,添加盤古pi論文的一些機制得來,湊夠了大概135B的參數。實際上,舊的135B有107層,而這個模型只有82層,各種配置也都不一樣。新的來路不明的135B訓練完很多參數的分佈也和Qwen 110B幾乎一模一樣。連模型代碼的類名當時都是Qwen,甚至懶得改名。後續這個模型就是所謂的135B V2。而這個模型當時也提供給了很多下游,甚至包括外部客户。
這件事對於我們這些認真誠實做事的同事們帶來了巨大的衝擊,內部很多人其實都知道這件事,甚至包括終端和華為雲。我們都戲稱以後別叫盤古模型了,叫千古吧。當時團隊成員就想向bcg舉報了,畢竟這已經是重大的業務造假了。但是後面據説被領導攔了下來,因為更高級別的領導(比如姚老師,以及可能熊總和查老)其實後面也知道了,但是並不管,因為通過套殼拿出好的結果,對他們也是有利的。這件事使得當時團隊幾位最強的同事開始心灰意冷,離職跑路也逐漸成為掛在嘴邊的事。
此時,盤古似乎迎來了轉機。由於前面所述的這些盤古模型基本都是續訓和改造而來,當時諾亞完全沒有掌握從頭訓練的技術,何況還是在昇騰的NPU上進行訓練。在當時團隊的核心成員的極力爭取下,盤古開始了第三代模型的訓練,付出了巨大的努力後,在數據架構和訓練算法方面都與業界逐漸接軌,而這其中的艱辛和小模型實驗室的人一點關係都沒有。
一開始團隊成員毫無信心,只從一個13B的模型開始訓練,但是後面發現效果還不錯,於是這個模型後續再次進行了一次參數擴增,變成了第三代的38B,代號38B V3。想必很多產品線的兄弟都對這個模型很熟悉。當時這個模型的tokenizer是基於llama的詞表進行擴展的(也是業界常見的做法)。而當時王雲鶴的實驗室做出來了另一個詞表(也就是後續pangu系列的詞表)。當時兩個詞表還被迫進行了一次賽馬,最終沒有明顯的好壞結論。於是,領導當即決定,應該統一詞表,使用王雲鶴他們的。於是,在後續從頭訓練的135B V3(也就是對外的Pangu Ultra),便是採用了這個tokenizer。這也解釋了很多使用我們模型的兄弟的疑惑,為什麼當時同為V3代的兩個不同檔位的模型,會使用不同的tokenizer。
我們打心眼裏覺得,135B V3是我們四縱團隊當時的驕傲。這是第一個真正意義上的,華為全棧自研,正經從頭訓練的千億級別的模型,且效果與24年同期競品可比的。寫到這裏我已經熱淚盈眶,太不容易了。當時為了穩定訓練,團隊做了大量實驗對比,並且多次在模型梯度出現異常的時候進行及時回退重啓。這個模型真正做到了後面技術報告所説的訓練全程沒有一個loss spike。我們克服了不知道多少困難,我們做到了,我們願用生命和榮譽保證這個模型訓練的真實性。多少個凌晨,我們為了它的訓練而不眠。在被內部心聲罵的一文不值的時候,我們有多麼不甘,有多少的委屈,我們挺住了。
我們這幫人是真的在為打磨國產算力底座燃燒自己的青春啊……客居他鄉,我們放棄了家庭,放棄了假期,放棄了健康,放棄了娛樂,拋頭顱灑熱血,其中的艱辛與困苦,寥寥數筆不足以概括其萬一。在各種動員大會上,當時口號中喊出的盤古必勝,華為必勝,我們心裏是真的深深被感動。
然而,我們的所有辛苦的成果,經常被小模型實驗室輕飄飄的拿走了。數據,直接要走。代碼,直接要走,還要求我們配合適配到能一鍵運行。我們當時戲稱小模型實驗室為點鼠標實驗室。我們付出辛苦,他們取得榮耀。果然應了那句話,你在負重前行是因為有人替你歲月靜好。在這種情況下,越來越多的戰友再也堅持不下去了,選擇了離開。看到身邊那些優秀的同事一個個離職,我的內心又感嘆又難過。在這種作戰一樣的環境下,我們比起同事來説更像是戰友。他們在技術上也有無數值得我學習的地方,堪稱良師。看到他們去了諸如字節Seed,Deepseek,月之暗面,騰訊和快手等等很多出色的團隊,我打心眼裏為他們高興和祝福,脱離了這個辛苦卻骯髒的地方。我至今還對一位離職同事的話記憶猶新,ta説:“來這裏是我技術生涯中的恥辱,在這裏再呆每一天都是浪費生命”。話雖難聽卻讓我無言以對。我擔心我自己技術方面的積累不足,以及沒法適應互聯網公司高淘汰的環境,讓我多次想離職的心始終沒有邁出這一步。
盤古除了dense模型,後續也啓動了moe的探索。一開始訓練的是一個224B的moe模型。而與之平行的,小模型實驗室也開啓了第二次主要的套殼行動(次要的插曲可能還包括一些別的模型,比如math模型),即這次流傳甚廣的pangu pro moe 72B。這個模型內部自稱是從小模型實驗室的7B擴增上來的(就算如此,這也與技術報告不符,何況是套殼qwen 2.5的14b續訓)。還記得他們訓了沒幾天,內部的評測就立刻追上了當時的38B V3。AI系統實驗室很多兄弟因為需要適配模型,都知道他們的套殼行動,只是迫於各種原因,無法伸張正義。實際上,對於後續訓了很久很久的這個模型,Honestagi能夠分析出這個量級的相似性我已經很詫異了,因為這個模型為了續訓洗參數,所付出的算力甚至早就足夠從頭訓一個同檔位的模型了。聽同事説他們為了洗掉千問的水印,採取了不少辦法,甚至包括故意訓了髒數據。這也為學術界研究模型血緣提供了一個前所未有的特殊模範吧。以後新的血緣方法提出可以拿出來溜溜。
24年底和25年初,在Deepseek v3和r1發佈之後,由於其驚豔的技術水平,團隊受到了巨大的衝擊,也受到了更大的質疑。於是為了緊跟潮流,盤古模仿Deepseek的模型尺寸,開啓了718B moe的訓練。這個時候,小模型實驗室再次出手了。他們選擇了套殼Deepseekv3續訓。他們通過凍住Deepseek加載的參數,進行訓練。連任務加載ckpt的目錄都是deepseekv3,改都不改,何其囂張?與之相反,一些有真正技術信仰的同事,在從頭訓練另一個718B的moe。但其中出現了各種各樣的問題。但是很顯然,這個模型怎麼可能比直接套殼的好呢?如果不是團隊leader堅持,早就被叫停了。
華為的流程管理之繁重,嚴重拖累了大模型的研發節奏,例如版本管理,模型血緣,各種流程化,各種可追溯。諷刺的是,小模型實驗室的模型似乎從來不受這些流程的約束,想套殼就套殼,想續訓就續訓,算力源源不斷的伸手拿走。這種強烈到近乎魔幻的對比,説明了當前流程管理的情況:只許州官放火,不許百姓點燈。何其可笑?何其可悲?何其可惡?何其可恥!
HonestAGI的事情出來後,內部讓大家不停的研討分析,如何公關和“回應”。誠然,這個原文的分析也許不夠有力,給了王雲鶴與小模型實驗室他們狡辯和顛倒黑白的機會。為此,這兩天我內心感到作嘔,時時懷疑自己的人生意義以及蒼天無眼。我不奉陪了,我要離職了,同時我也在申請從盤古部分技術報告的作者名單中移除。曾經在這些技術報告上署名是我一生都無法抹除的污點。當時我沒想到,他們竟然猖狂到敢開源。我沒想到,他們敢如此愚弄世人,大肆宣發。當時,我也許是存了僥倖心理,沒有拒絕署名。我相信很多紮實做事的戰友,也只是被迫上了賊船,或者不知情。但這件事已經無法挽回,我希望我的餘生能夠堅持紮實做真正有意義的事,為我當時的軟弱和不堅定贖罪。
深夜寫到這裏,我已經淚流滿面,泣不成聲。還記得一些出色的同事離職時,我苦笑問他們要不要發個長長的心聲慣例帖,揭露一下現狀。對方説:不了,浪費時間,而且我也怕揭露出來你們過的更糟。我當時一下黯然神傷,因為曾經共同為了理想奮鬥過的戰友已經徹底對華為徹底灰心了。當時大家調侃,我們用着當年共產黨的小米加步槍,組織卻有着堪比當年國民黨的作風。
曾幾何時,我為我們用着小米加步槍打敗洋槍洋炮而自豪。
現在,我累了,我想投降。
其即時至今日,我還是真心希望華為能認真吸取教訓,能做好盤古,把盤古做到世界一流,把昇騰變成英偉達的水平。內部的劣幣驅逐良幣,使得諾亞乃至華為在短時間內急劇流失了大量出色的大模型人才。相信他們也正在如Deepseek等各個團隊閃耀着,施展着他們的抱負才華,為中美在AI的激烈競賽中奉獻力量。我時常感嘆,華為不是沒有人才,而是根本不知道怎麼留住人才。如果給這些人合適的環境,合適的資源,更少的枷鎖,更少的政治鬥爭,盤古何愁不成?
最後:我以生命,人格和榮譽發誓,我寫的以上所有內容均為真實(至少在我有限的認知範圍內)。我沒有那麼高的技術水平以及機會去做詳盡紮實的分析,也不敢直接用內部記錄舉證,怕因為信息安全抓到。但是我相信我很多曾經的戰友,會為我作證。在華為內部的兄弟,包括我們曾經服務過的產品線兄弟們,相信本文的無數細節能和你們的印象對照,印證我的説法。你們可能也曾經被矇騙,但這些殘酷的真相不會被塵封。我們奮戰過的痕跡,也不應該被扭曲和埋葬。
寫了這麼多,某些人肯定想把我找出來,抹殺掉。公司搞不好也想讓我噤聲乃至追責。如果真的這樣,我,乃至我的家人的人身乃至生命安全可能都會受到威脅。為了自我保護,我近期每天會跟大家報平安。
如果我消失了,就當是我為了真理和理想,為了華為乃至中國能夠更好地發展算力和AI而犧牲了吧,我願埋葬於那片曾經奮鬥過的地方。
諾亞,再見
2025年7月6日凌晨 寫於深圳
各位好,
感謝大家的關心與祝福。我目前暫時安全,但公司應該在進行排查與某些名單收集,後續情況未知。
我補充一些細節,以免某些人繼續顛倒黑白。
關於135B V2,小模型實驗室在迅速地完成套殼並拿完所有套殼帶來的好處後(比如任務令表彰和及時激勵),因為不想繼續支撐下游應用和模型迭代,又把這個燙手山芋甩給了四縱。確實技高一籌,直接把四縱的兄弟們拉下水。同事提供過去一個老舊的模型,最終拿回了一個當時一個魔改的先進的千問。做大模型的人,自己做的模型就像自己孩子一樣熟悉,不要把別人都當傻子。就像自家兒子出門一趟,回來個別人家孩子。
盤古report的署名是不符合學術規範的。例如,135B V3有不少有技術貢獻的人,因為作者名額數量限制,勞動成果沒有得到應有的回報,團隊內曾經有不小的意見。這個模型當時是大家智慧和汗水的結晶,甚至是團隊當時的精神支柱,支撐着不少兄弟們繼續留在諾亞。所謂的名額限制,以及掛名了一些毫無技術貢獻的人(如一些小模型實驗室的人),讓兄弟們何其心寒。