成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

最高提升20倍吞吐量!豆包大模型團隊發布全新 RLHF 框架,現已開源!

人工智能
字節跳動豆包大模型團隊與香港大學近期公開聯合研究成果—— HybridFlow ,一個靈活且高效的大模型 RL 訓練框架,兼容多種訓練和推理框架,支持靈活的模型部署和多種 RL 算法實現。

強化學習(RL)對大模型復雜推理能力提升有關鍵作用,然而,RL 復雜的計算流程以及現有系統局限性,也給訓練和部署帶來了挑戰。傳統的 RL/RLHF 系統在靈活性和效率方面存在不足,難以適應不斷涌現的新算法需求,無法充分發揮大模型潛力。

近日,字節跳動豆包大模型團隊與香港大學聯合提出 HybridFlow(開源項目名:veRL),一個靈活且高效的 RL/RLHF 框架。該框架采用混合編程模型,融合單控制器(Single-Controller)的靈活性和多控制器(Multi-Controller)的高效性,可更好實現和執行多種RL算法,顯著提升訓練吞吐量,降低開發和維護復雜度。實驗結果表明,HybridFlow 在運行各種 RL(HF) 算法時,吞吐量相較 SOTA 基線提升了 1.5-20 倍。

從 ChatGPT [1] 到 o1 等各種大語言模型,強化學習(RL)算法在提升模型性能和適應性方面起著至關重要的作用。在大模型后訓練(Post-Training)階段引入 RL 方法,已成為提升模型質量和對齊人類偏好[2, 3]的重要手段。

然而,隨著模型規模的不斷擴大,RL 算法在大模型訓練中面臨著靈活性和性能的雙重挑戰。

因此,開發一個高效且靈活的大模型 RL 訓練框架顯得尤為重要。這不僅需要高效地執行復雜的分布式計算流程,還要具備適應不同 RL 算法的靈活性,以滿足不斷發展的研究需求。

字節跳動豆包大模型團隊與香港大學近期公開聯合研究成果—— HybridFlow ,一個靈活且高效的大模型 RL 訓練框架,兼容多種訓練和推理框架,支持靈活的模型部署和多種 RL 算法實現。

HybridFlow 采用混合編程模型,將單控制器的靈活性與多控制器的高效性相結合,解耦了控制流和計算流。基于Ray的分布式編程,動態計算圖,異構調度能力,通過封裝單模型的分布式計算、統一模型間的數據切分,以及支持異步 RL 控制流,HybridFlow 能夠高效地實現和執行各種 RL 算法,復用計算模塊和支持不同的模型部署方式,大大提升了系統的靈活性和開發效率。

實驗結果表明,HybridFlow 在各種模型規模和 RL 算法下,訓練吞吐量相比其他框架提升了 1.5 倍至 20 倍。

目前,該論文已被 EuroSys 2025 接收,代碼倉庫也對外公開。


HybridFlow: A Flexible and Efficient RLHF Framework


論文鏈接:https://team.doubao.com/zh/publication/hybridflow-a-flexible-and-efficient-rlhf-framework?view_from=research

代碼鏈接:https://github.com/volcengine/veRL


1. RL(Post-Training)復雜計算流程給 LLM 訓練帶來全新的挑戰 

在深度學習中,數據流(DataFlow)是一種重要的計算模式抽象,用于表示數據經過一系列復雜計算后實現特定功能。神經網絡的計算就是典型的 DataFlow ,可以用計算圖(Computational Graph)來描述,其中節點代表計算操作,邊表示數據依賴。

大模型 RL 的計算流程比傳統神經網絡更為復雜。在 RLHF 中,需要同時訓練多個模型,如 Actor 、Critic 、參考策略(Reference Policy)和獎勵模型(Reward Model),并在它們之間傳遞大量數據。這些模型涉及不同的計算類型(前向反向傳播、優化器更新、自回歸生成等),可能采用不同的并行策略。

傳統的分布式 RL 通常假設模型可在單個 GPU 上訓練,或使用數據并行方式 [4,5],將控制流和計算流合并在同一進程中。這在處理小規模模型時效果良好,但面對大模型,訓練需要復雜的多維并行,涉及大量分布式計算,傳統方法難以應對。

2. HybridFlow 解耦控制流和計算流,兼顧靈活高效 

大模型 RL 本質上是一個二維的 DataFlow 問題:high-level 的控制流(描述 RL 算法的流程)+ low-level 的計算流(描述分布式神經網絡計算)。

近期開源的 RLHF 框架,如 DeepSpeed-Chat [6]、OpenRLHF [7] 和 NeMo-Aligner [8],采用了統一的多控制器(Multi-Controller)架構。各計算節點獨立管理計算和通信,降低了控制調度的開銷。然而,控制流和計算流高度耦合,當設計新的 RL 算法,組合相同的計算流和不同的控制流時,需要重寫計算流代碼,修改所有相關模型,增加了開發難度。

與此前框架不同,HybridFlow 采用了混合編程模型,控制流由單控制器(Single-Controller)管理,具有全局視圖,實現新的控制流簡單快捷,計算流由多控制器(Multi-Controller)負責,保證了計算的高效執行,并且可以在不同的控制流中復用。

盡管相比純粹的多控制器架構,這可能帶來一定的控制調度開銷,但 HybridFlow 通過優化數據傳輸,降低了控制流與計算流之間的傳輸量,兼顧了靈活性和高效性。

3. 系統設計之一:Hybrid Programming Model (編程模型創新) 

  • 封裝單模型分布式計算

在 HybridFlow 中,每個模型(如 Actor、Critic、參考策略、獎勵模型等)的分布式計算被封裝為獨立的模塊,稱為模型類

這些模型類繼承于基礎的并行 Worker 類(如 3DParallelWorker 、FSDPWorker 等),通過抽象的 API 接口,封裝了模型的前向、反向計算、優化器更新和自回歸生成等操作。該封裝方式提高了代碼的復用性,便于模型的維護和擴展。

對于不同的 RL 控制流,用戶可以直接復用封裝好的模型類,同時自定義部分算法所需的數值計算,實現不同算法。當前 HybridFlow 可使用 Megatron-LM [13] 和 PyTorch FSDP [14]  作為訓練后端,同時使用 vLLM [15] 作為自回歸生成后端,支持用戶使用其他框架的訓練和推理腳本進行自定義擴展。

圖片

  • 靈活的模型部署

HybridFlow 提供了資源池(ResourcePool)概念,可以將一組 GPU 資源虛擬化,并為每個模型分配計算資源。不同的資源池實例可以對應不同設備集合,支持不同模型在同一組或不同組 GPU 上部署。這種靈活的模型部署方式,滿足了不同算法、模型和硬件環境下的資源和性能需求。

圖片


  • 統一模型間的數據切分

在大模型 RL 計算流程中,不同模型之間的數據傳輸涉及復雜的多對多廣播和數據重分片。

為解決該問題,HybridFlow 設計了一套通用數據傳輸協議(Transfer Protocol),包括收集(collect)和分發(distribute)兩個部分。

通過在模型類的操作上注冊相應的傳輸協議,比如:@register(transfer_mode=3D_PROTO),HybridFlow 可以在控制器層(Single-Controller)統一管理數據的收集和分發,實現模型間數據的自動重分片,支持不同并行度下的模型通信。

HybridFlow 框架已經支持多種數據傳輸協議,涵蓋大部分數據重切分場景。同時,用戶可靈活地自定義收集(collect)和分發(distribute)函數,將其擴展到更復雜的數據傳輸場景。

圖片


  • 支持異步 RL 控制流

在 HybridFlow 中,控制流部分采用單控制器架構,可靈活實現異步 RL 控制流。

當模型部署在不同設備集合上時,不同模型計算可并行執行,這提高了系統的并行度和效率。對于部署在同一組設備上的模型,HybridFlow 通過調度機制實現了順序執行,避免資源爭奪和沖突。

  • 少量代碼靈活實現各種 RL 控制流算法

得益于混合編程模型的設計,HybridFlow 可以方便地實現各種 RLHF 算法,如 PPO [9]、ReMax [10]、Safe-RLHF [11]、GRPO [12] 等。用戶只需調用模型類的 API 接口,按算法邏輯編寫控制流代碼,無需關心底層的分布式計算和數據傳輸細節。

例如,實現 PPO 算法只需少量代碼,通過調用 actor.generate_sequences 、critic.compute_values 等函數即可完成。同時,用戶只需要修改少量代碼即可遷移到 Safe-RLHF 、ReMax 以及 GRPO 算法。

圖片

 4. 系統設計之二:3D-HybridEngine (訓練推理混合技術)降低通信內存開銷 

在 Online RL 算法中,Actor 模型需要在訓練和生成(Rollout)階段之間頻繁切換,且兩個階段可能采用不同并行策略。

具體而言,訓練階段,需要存儲梯度和優化器狀態,模型并行度(Model Parallel Size, MP)可能相應增高,而生成階段,模型無需存儲梯度和優化器狀態,MP 和數據并行度(Data Parallel Size, DP)可能較小。因此,在兩個階段之間,模型參數需要重新分片和分配,依賴傳統通信組構建方法會帶來額外通信和內存開銷。

此外,為了在新的并行度配置下使用模型參數,通常需要在所有 GPU 之間進行全聚合(All-Gather)操作,帶來了巨大的通信開銷,增加了過渡時間。

為解決這個問題,HybridFlow 設計了 3D-HybridEngine ,提升了訓練和生成過程效率。

圖片

注:3D-HybridEngine 一次迭代的流程

3D-HybridEngine 通過優化并行分組方法,實現了零冗余的模型參數重組,具體包括以下步驟:

  • 定義不同的并行組

在訓練和生成階段,3D-HybridEngine 使用不同的三維并行配置,包括:流水線并行(PP)、張量并行(TP)和數據并行(DP)的大小。訓練階段的并行配置為 ??-??-?? 。在生成階段,我們新增一個新的微數據并行組(Micro DP Group,????),用于處理 Actor 模型參數和數據的重組。生成階段的并行配置為 ????-????-????-?? 。

  • 重組模型參數過程

通過巧妙地重新定義生成階段的并行分組,可以使每個 GPU 在生成階段復用訓練階段已有的模型參數分片,避免在 GPU 內存中保存額外的模型參數,消除內存冗余。


圖片


  • 減少通信開銷

參數重組過程中,3D-HybridEngine 僅在每個微數據并行組(Micro DP Group)內進行 All-Gather 操作,而非所有 GPU 之間進行。這大大減少了通信量,降低過渡時間,提高了整體的訓練效率。

5. 實驗結果:HybridFlow 提供靈活性的同時,加速了訓練 

團隊在 16 臺 A100 GPU 集群上,對 HybridFlow 和主流 RLHF 框架(DeepSpeed-Chat [6] v0.14.0、OpenRLHF [7] v0.2.5 和 NeMo-Aligner [8] v0.2.0)進行對比實驗。實驗涵蓋了不同模型規模(7B、13B、34B、70B)的 LLM ,以及不同 RLHF 算法(PPO [9]、ReMax [10]、Safe-RLHF [11])。

所有實驗中,Actor、Critic、參考策略 Reference Policy 和獎勵模型 Reward Model 均采用相同規模模型。更多實驗配置和測試細節請移步完整論文。

  • 更高的端到端訓練吞吐量

結果顯示,HybridFlow 在各種模型規模和 RLHF 算法下,都顯著優于其他框架,實現了更高訓練吞吐量。

無論 PPO 、ReMax 還是 Safe-RLHF 算法,HybridFlow 在所有模型規模下平均訓練吞吐量均大幅領先于其他框架,提升幅度在 1.5 倍至 20 倍之間。

隨 GPU 集群規模擴大,HybridFlow 吞吐量也獲得良好擴展。這得益于其靈活的模型部署,充分利用硬件資源,實現高效并行計算。同時,HybridFlow 能夠支持多種分布式并行框架(Megatron-LM [13]、FSDP [14]、vLLM [15]),滿足不同模型規模的計算需求。

圖片

  • HybridEngine 有效減少開銷

分析 Actor 模型在訓練和生成階段的過渡時間,團隊發現,HybridFlow 的 3D-HybridEngine 的零冗余模型參數重組技術,有效減少了模型參數在兩個階段之間的重分片和通信開銷。

相比其他框架,過渡時間減少了 55.2% ,在 70B 模型上過渡時間降低了 89.1% 。

圖片


  • 不同模型部署方式對比下的三個洞察

團隊對比了不同的模型部署策略,總結了模型部署和 GPU 分配的三大關鍵洞察:

  1. 為 Actor 模型分配更多的 GPU ,可以縮短 critical path ;
  2. Colocate 模式在相對小規模集群中能夠最大化 GPU 利用率;
  3. 在大規模集群中將 Actor 和 Critic 模型部署在不同的設備能夠提升擴展率。

圖片

值得一提的是,HybridFlow 同樣適用于更廣泛的 RL 訓練場景,隨著 o1 模型誕生,業內對 Reasoning 能力、RL 關注度也在提升,團隊后續將圍繞相關場景進行探索和實驗。

責任編輯:龐桂玉 來源: 字節跳動技術團隊
相關推薦

2024-11-02 10:28:03

2024-11-01 13:30:56

2023-12-07 06:51:18

AI模型

2023-12-01 14:36:33

模型數據

2022-03-21 17:56:59

大模型訓練訓練框架

2022-03-21 15:06:10

模型字節跳動框架

2024-05-23 16:41:40

2024-07-15 07:52:00

2024-12-13 13:58:53

2025-05-09 02:00:00

代碼接口吞吐量

2024-12-27 13:59:33

數據訓練模型

2013-04-25 10:38:40

思科存儲交換機

2022-05-26 15:17:54

訓練模型

2025-02-19 15:17:24

2024-08-08 17:48:56

2025-03-18 08:00:00

豆包文生圖技術Seedream

2022-12-23 09:49:42

算法開源

2024-09-27 10:31:22

2024-01-19 13:42:00

模型訓練

2024-04-07 08:50:00

谷歌框架
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产欧美一区二区三区久久手机版 | 国产在线精品一区二区三区 | 日韩成人 | 欧美专区在线 | 一本一道久久a久久精品蜜桃 | 日日噜噜夜夜爽爽狠狠 | a亚洲精品| 欧美精品一区二区在线观看 | 成人亚洲精品 | 免费一区二区三区 | 天天插天天操 | av网站在线免费观看 | 欧美激情久久久 | 麻豆精品国产91久久久久久 | 久久精品国产一区二区电影 | 不卡的av在线| 亚洲精选久久 | 91久久国产综合久久 | 黄色大片视频 | 亚洲欧洲中文 | 另类专区成人 | 日本aⅴ中文字幕 | 亚洲高清久久 | 欧美久操网 | 一区二区三区在线免费观看 | 国产精品一区视频 | 国产精品久久久久久久久久 | 天堂在线免费视频 | 懂色av一区二区三区在线播放 | 精品视频99| 国际精品鲁一鲁一区二区小说 | 国产精品亚洲综合 | 精品国产乱码久久久久久影片 | 手机在线观看 | 自拍视频国产 | 久久国产婷婷国产香蕉 | 国产精品99免费视频 | 午夜精品久久久久久久99黑人 | 天天躁天天操 | 日韩精品在线播放 | 日日人人 |