下接萬卡集羣、上連AI原生應用,操作系統的進化超出你的想象

機器之心報道

作者:杜偉

大模型發展至今,還能帶給開發者哪些驚喜呢?

在 4 月 16 日舉辦的 2024 百度 Create AI 開發者大會上,百度智能雲扔下一顆「重磅炸彈」,重新定義了計算機的核心繫統軟件 —— 操作系統。

會上,百度集團執行副總裁、百度智能雲事業羣總裁沈抖宣佈正式發佈新一代智能計算操作系統 —— 萬源。在大模型技術不斷推動雲服務向 AI 靠攏的當下,這成爲了百度跳出傳統雲計算、革新 AI 原生應用開發體驗的一大舉措。

沈抖在百度 Create AI 開發者大會上。

對比操作系統的核心組件,比如底層硬件設備、管理軟硬件資源的內核層、與用戶交互的 Shell 層和集成各類工具程序的應用層,萬源的整體框架是這樣的:

Kernel(內核)層包含百度百舸・AI 異構計算平臺和百度文心大模型,滿足模型訓練算力需求和多樣化大模型使用需求。

內核層之上的Shell(外殼)層爲千帆 ModelBuilder 平臺,讓開發者按需和細分場景來定製、精調模型。

最上面爲Toolkit(工具)層,千帆 AppBuilder 和 AgentBuilder 支持了各類應用和 Agent 的快速開發。

智能計算操作系統萬源的「三層」組成。

自下往上,萬源要在底層屏蔽掉雲原生系統與異構算力的複雜性、並強化大模型這一能力引擎,在中層對大模型進行部署精調,在上層爲 AI 原生應用和 Agent 的快速開發提供支撐和保障。

也就是說,藉助操作系統這個完整載體,百度智能雲將高效的異構算力、智能的系統內核和敏捷的應用開發「打包」,爲業界加速 AI 原生應用佈局提供一個新選擇。

或許有人會問,從傳統操作系統發展到如今新一代的智能計算操作系統,需要什麼契機呢?我們有必要從計算機操作方式進化、計算平臺迭代、大模型技術變革等幾個方面展開說說。

大模型崛起

新一代操作系統成爲必選項

當然,我們熟悉的計算機操作系統通常是 Linux、Windows 等。但說起來,操作系統不是與計算機同步出現,它管理的對象也隨時代需求、技術趨勢而變。

1946 年 2 月,世界上第一臺電子計算機 ENIAC 誕生,彼時操作全部要人工完成。彙編語言、彙編器的出現逐漸用程序代替人工、用軟件管理硬件,這是操作系統的雛形。高級編程語言和編譯器讓計算平臺進一步進化,並帶來更復雜的軟件和更強大的硬件,要求操作系統快速迭代。

此後,不斷增加的軟件規模和複雜度讓單臺機器力不從心,集羣出現。操作系統管理的對象從單臺機器及其上運行的「進程」擴展爲整個集羣及運行的各類「微服務」,雲計算來了。

直到這時,操作系統的框架和組成沒有大的變化。在本質上,操作系統負責連通硬件和軟件,向下屏蔽底層的複雜性,向上抽象成簡單的交互界面。

近年來,大模型、AI 原生應用、Agent 及相伴而生的理解、生成、邏輯和記憶能力推動技術變革,讓自然語言主導的人機交互嶄露頭角,沒有編程基礎的人也可以成爲開發者,編程需求的滿足比以往容易得多。

開發範式的種種新變化進一步催生軟件市場的爆發,硬件也隨之進步,傳統操作系統改變的契機到了,尤其體現在一些層的組成內容上。

比如在操作系統內核中,底層硬件從以 CPU 算力爲主變成以 GPU 算力爲主,並首次增加軟硬件之外的第三種資源 —— 大模型壓縮的世界知識。相應地,操作系統管理的對象不再只是進程和微服務,現在還多了基於大模型衍生的智能。

這意味着,一個超越傳統軟件範疇的全新操作系統成爲必選項,對基於 AI 的智能計算更好地抽象和封裝,重新定義人機交互,成爲大模型能力全方位加持的強大載體,爲開發者提供更智能、更流暢、更個性化的開發體驗。

這一切在萬源這裡得到了滿足,內核層有能夠實現萬卡規模集羣模型訓練的算力和大語言模型、CV 大模型能力,外殼層可以對內核層的大模型定製精調,工具層則實現了簡單便捷的 AI 原生應用和 Agent 開發。

我們應看到,實現萬源各層功能離不開百度智能雲在算力、模型、工具和應用等各個層面的產品積累。這也是我們接下來要講的內容。

三層一體

萬源操作系統的「新」落在哪裡?

可以看到,大模型出現以來提出的全新人機交互需求、人們對開發體驗的更多樣性訴求以及傳統雲計算向智能計算的轉變,讓萬源的出現有了必要性和合理性。

那麼,萬源各層組成有哪些新的、獨特之處呢?先從 Kernel(內核)層看起,算力和大模型是兩大組成部分。

作爲 AI 三要素之一,算力重要性無需多言。在萬源中,百度百舸・AI 異構計算平臺是將現有算力資源發揮到極致的基座。該平臺針對大模型訓練、推理任務,分別在智算集羣設計、調度和容錯等環節優化。目前,百舸在萬卡集羣上的模型有效訓練時長佔比超過了 98.8%,線性加速比和帶寬有效性均達到了 95%,實現業界領先算力效能,爲內核層提供高效的算力保障。

此外還有一個問題,國內芯片供應存在不確定性,這必然會導致多芯片並存的格局(即國內和國內品牌芯片共存),這爲智算集羣中模型推理和單一任務訓練提出了挑戰。百舸不僅兼容了崑崙芯、昇騰、海光 DCU、英偉達、英特爾等國內外主流 AI 芯片,更實現百卡和千卡規模、單一訓練任務下,不同廠商芯片的混合訓練,其中百卡規模性能損失不超過 3%,千卡規模性能損失不超過 5%,實現業界領先。

正如沈抖會上所言,「百舸爲大家屏蔽掉了芯片之間的差異,提供了自由選擇不同芯片組合的權利。」

內核層的另一主角是77 個精選大模型,包括百度 ERNIE 4.0、ERNIE 3.5 大語言模型、近期發佈的 ERNIE Speed/Lite/Tiny 系列輕量模型、文心視覺大模型和各種第三方大模型。它們壓縮並封裝了龐大的世界知識,是更上層運行簡單接口和 AI 原生應用的能力源泉。

來到外殼層,主角是千帆 ModelBuilder,負責大模型管理、調度和二次開發。有了它,開發者不用從頭開始訓練大模型,付出很少數據、資源即可在基礎大模型上快速精調出適合自身業務和場景的模型。

再往上爲 ToolKit(工具)層,集成了產業級 AI 原生應用開發平臺 AppBuilder和基於文心大模型的智能體構建平臺 AgentBuilder。有了內核層和外殼層的算力和模型鋪墊,萬源要在此層讓開發者切身體驗到不一樣的 AI 原生應用開發。

其中,AppBuilder 支持工作流編排。開發者選擇使用預置模板和組件或者集成、擴建特色組件,輕鬆定製自己的業務流程。經過 ModelBuilder 精調的模型也可以直接調用,怎麼方便怎麼來。開發完的應用支持一鍵發佈到百度搜索等其他平臺,並通過 API 或 SDK 在用戶系統中直接集成。

AgentBuilder 則致力於零門檻,讓不會編程的用戶通過 prompt 輸入和操作調優,快速創建專屬於自己的智能體,在使用場景中自動提供服務。

此外,萬源還提供了完善的模型 & 數據管理以及模型安全服務,爲 AI 原生應用的繁榮保駕護航。

至此,從內核層、外殼層到工具層,百度在我們面前展現出了新一代智能計算操作系統的全貌。

背後的技術優勢

能解決好問題才行

我們觀察到,萬源一舉解決了業界同行們都在面臨的三個關鍵問題,分別是算力、模型訓練和部署、以及應用開發,並在過程中形成了自己的核心技術優勢。

尤其是在算力部分,百舸・AI 異構計算平臺實現了單一任務下不同廠商芯片的大模型混合訓練, 百卡規模性能損失不超過 3%,千卡規模性能損失不超過 5%。這些是如何做到的呢?

首先,百舸的線性加速比達到了 95%,這要歸功於百度智能雲面向 AI 計算推出的 AI 加速套件「AIAK」,它的核心是網絡通信加速。我們知道,AI 跑在芯片上靠的是各種各樣的算子,但每家芯片廠商的算子實現並不一樣。

百度則選擇在整個框架層面拆分底層的通信和上層算子的優化和實現,這樣各家芯片有了針對這些算子的優化實現。最終不同廠商的芯片都能跑在百度的加速庫上,即百度集合通信庫 BCCL,它是百舸的重要組件。但是,這一步並沒有直接解決一雲多異構芯片的問題。

還需要第二步。以前一種芯片算力是相同的,所以我們的並行策略大多是均勻切分的。但現在算力、通信、存儲都不一樣了,爲了充分發揮出各芯片算力性能那就需要實現不均勻的切分方式,比如在模型張量切分中,不同芯片可能需要切分成不同的大小,在流水線切分中則需要在不同芯片上放不同的層數。這就需要對框架做相應的改造和優化,我們的訓推加速軟件就實現了這些不均勻的,混合的切分策略,讓每個芯片算力能充分發揮出來。

而接下來,集羣中各種芯片的比例可能是不一樣的,在各種情況下都能找到最優的任務切分方法。在前面這麼多複雜策略的情況下通過測試顯然是不行的。通過一套自動化並行策略框架,根據各種策略所需要的計算量,存儲量,通信量,以及不同芯片的計算和 IO 效率,從而快速計算出最優的任務切分策略,保證在各種配比下芯片算力都能充分發揮出來。這是實現一雲多芯的基礎原理。

至於百卡和千卡規模性能損失爲何如此低,這還要得益於百舸在存儲方面支持了高性能分佈式存儲 PFS、以及萬卡級別的 RDMA 網絡,前者顯著提升訓練和推理過程中的 I/O 吞吐能力,後者有效降低網絡延遲。

同樣地,萬源讓大模型的訓練和部署不再困難。尤其是對個人開發者而言,他們沒有訓練大模型所需的算力、數據和精力,這一切都讓萬源代爲完成。

有了 ModelBuilder,開發者沒有了從頭開始訓練模型的煩惱,隨時隨調隨用。部署起來同樣方便快捷。

最後,應用開發問題依靠 AppBuilder 得到更好解決,它的兩個優勢幫了大忙。

一是依託文心 4.0 強大的理解和遵循能力,效果好且不用長時間調優,成本和門檻降了下來。同時豐富的 AI 能力組件、大模型能力組件和百度獨家開放的業務組件讓 AI 原生應用開發更加高效。二是創建一點都不繁瑣,只需三步:命名、描述具體要求、運行,一氣呵成。

而隨着算力、模型訓練和部署、以及應用開發這些節點的關鍵問題一一被有效地克服,萬源爲 AI 原生應用提供了更強的動力和更大的舞臺,讓 AI 在應用層的機會更多。

不難發現,大模型出現以來,AI 圈呈現一個非常明顯的特點,即大家追逐的熱點變化很快。短短几年時間,我們已經看到了從最開始的基礎和行業垂直模型,慢慢發展到之後基於大模型的各類 AI 原生應用和 Agent。

很顯然,對於業界玩家們來說,儘可能不錯過每一個節點,才更有可能不被同行落下,反過來就有可能跑贏對手。我們看到,在大模型發展至今的整體規劃和佈局中,百度步步爲營,並以廣泛、真實的客戶實踐和產業落地需求爲導向。

從業界首發行業大模型到全球首個企業級大模型生產平臺千帆 ModelBuilder,百度走在了大模型落地的前列。目前,千帆大模型平臺已經服務了 8.5 萬家企業客戶,並累計精調超過 1.4 萬個模型。

隨着從卷大模型進入到卷應用的階段,百度加快了基於大模型的 AI 原生應用開發及生態建設。去年 10 月 17 日,百度創始人、董事長兼首席執行官李彥宏在百度世界 2023 上預言,「我們即將進入一個 AI 原生的時代」。此後, AI 原生應用開發平臺千帆 AppBuilder 全面開放服務,讓人人都能自己開發。目前已經有 8100 傢伙伴通過該平臺開發 AI 原生應用。

此次,百度又爲這個新時代的到來拋出全新的思考 —— 萬源。百度從完整的 AI 原生操作系統出發,將過去多年在算力、大模型和應用層面積累的工作「化零爲整」,以更強的姿態迎接 AI 原生時代面臨的挑戰。

未來,百度一方面將繼續把萬源的基礎設施、內核服務做得更智能、高效,另一方面致力於在上層提供更便捷的開發工具,做到雙管齊下。同時進一步開放生態合作,攜手應用開發者、企業、芯片廠商將萬源打造地更加完備。